Software
The Best Of - 2022 Edition
Near the end of each year I note down a summary of the best apps I’ve enjoyed using throughout the year, here’s 2022. ...
Firefox Addons for 2022
Firefox Addons - 2022 Edition My list of must-have Firefox addons - 2022 edition Updated: 2022-11-07 Privacy and Security Firstly - you should have Firefox’s Enhanced Tracking Protection enabled. Don’t Track Me Google LocalCDN UTM Tracking Token Stripper Note: You can accomplish some of what this does by setting up the removeparam uBlock origin rules I’ve listed below. Multi-Account Containers Useful for setting sites such as Amazon, eBay, Twitter, LinkedIn, Banking etc… each to always open in their own isolated container. The official addon for whatever Password Manager you use. Firefox Translations uBlock Origin Probably the single most important addon. ...
Goodbye Evernote, Hello Bear
Until recently I used Evernote for my notes, web clippings and document drafts, I was a subscriber going on 14 years and had over 3000 notes. However in recent years Evernote has gone downhill to the point it could be considered hostile to it’s users. The native macOS app was replaced with an Electron Javascript webframe and like almost all Electron apps I’ve tried it was plagued by poor performance, memory leaks and aggressive idle CPU utilisation and above all else it now lacks the low latency feeling the native application had. ...
The Best Of - 2020 Edition
Near the end of every year I note down a summary of the best apps, hardware & podcasts I’ve enjoyed throughout the year (and often for some time before). This post has been superseded. You can find the latest version of this post here. Software and Services Plex Things Pixelmator Pro Reeder NextMeeting Bumpr Fastmail 1Password Calibre Backblaze iTerm Gitlab PFsense Stay Onyx Evernote Handbrake Amphetamine Firefox Software - Mobile Plex Things Reeder Overcast Evernote MiniHack Alien Blue Singal Prompt Browser Addons uBlock Origin Dencentraleyes Hardware LG C9 OLED TV Das Ultimate 4 Logitech MX Master 3 16’’ Macbook Pro iPhone 12 Pro AppleTV 4K Audioquest DragonFly Red USB DAC Ultrasone Signature Pro Headphones Kindle Paperwhite All Day Socks Bellroy Wallets Podcasts The Skeptics Guide To The Universion (SGU) You Are Not So Smart Risky.Biz RHLSTP Louis Theroux - Grounded Hiphop Saved My Life Geological 99% Invisible BBC Global News YouTube Channels Techmoan Jim Jefferies - Well I Don’t Know About That! Salvatore Ganacci Warped Perception Smarter Every Day DTM First We Feast (HotOnes) NPR Tiny Desk Concerts Logic The Absolute Worst Software I’ve Experienced 💩 Microsoft Office365 💩 💩 Microsoft Teams 💩 💩 Atlassian Jira 💩 💩 Atlassian Bamboo 💩 💩 Atlassian Confluence 💩 💩 McAffee Endpoint Security 💩 💩 Facebook 💩
Goodbye XenSever - Hello XCP-ng
In 2018 I set out to replace our XenSever 7.2 based virtualisation after Citrix essentially screwed over free / open source users. This project was to directly replace XenServer 7.2 with something supported and manageable for our traditional virtualisation needs. High Level Selection Considerations I evaluated a number of options, with the primary candidates below. Key criteria (at a high level) I was evaluating: Ease of moving from our existing XenServer 7.2 based hypervisor clusters. Security (architecture, hardening, monitoring, logging). Cost (both licensing if any and self-support / management costs). VM Performance (Storage IOPs and throughput, Network latency and throughput, Processing latency, steal from over-provisioned workloads). Management UI/UX and performance (for BAU activities). Management / Cluster SPOFs, fail-over and redundancy. Installation and upgrade process. Update and security patching frequency. Networking design and complexity. Community (size, engagement, acceptance of suggestions / MRs). Reliable live VM migrations. Ease of management for a small team (Part of a low TCO). Risk of vendor and technology lock-in. Risk of survival (will it still be well maintained over the next 1-3 years). Stability and reliability above practically all else. XenServer 7.6 (w/ Paid License) For Potentially priority support from Citrix for issues. Easy upgrade from 7.2. Fresh installs and upgrades are simple, painless and easy to pxeboot, licensing can be a pain after install however. Against Slow moving development. Incredibly expensive, it would cost us something like $140,800 AUD per year (shelf price) for our 32 hosts (each with 2 sockets). Features heavily restricted by licensing model. Mostly older-fashioned enterprise users. No web management interface (although you can use Xen Orchestra from the folks behind XCP-ng). Diminishing community since XenServer licensing changes in 7.3. Poor storage performance compared to KVM based solutions. Many outdated packages, while kind of based on CentOS 7, there are a great deal of packages from older releases or completely custom rebuilt. Uses old technologies like EXT3 and doesn’t support SSD/Flash TRIM/DISCARD functions. SELinux not enforcing or supported. OpenvSwitch still uses a lot of Dom0 CPU (same as XenServer). Dom0 often ends up limiting VM storage operations (tapdisk maxing out Dom0 CPU). Applying updates can be painful or at least slow, requiring binary ISO files to be downloaded from Citrix. Uses Jira for bug tracking (I just can’t stand the thing, it’s painfully laggy, give my GitLab or Github over it any day). XCP-ng XCP-ng is a relatively recent fork from XenServer after it was open sourced, tracking upstream but clearly prioritising modernisation and community. ...
Run youtube-dl (or similar) in the background
I wanted an alias or function to use youtube-dl in the background. Looking around the web lots of people seemed to want this and most of them were banging their heads against a wall due to: A) bash quoting B) backgrounding dying when their terminal closed C) passing the argument (url in my case) to the function Here’s a simple function I whipped up that seems to ‘just works’™: function yt { nohup youtube-dl "$1" --no-progress 2>&1 > youtube-dl-"$(date +%Y%m%d-%H%M%S)".log & } And if you don’t want logs, simply send the output to /dev/null: ...
Disabling scroll-wheel zoom in Firefox
This feature annoys me endlessly, I end up zoomed in and out of websites all over the internet. … But the fix is easy and there’s no addons required. Navigate to about:config (in Firefox’s URL bar) Change the value of the following two properties to 0: mousewheel.with_control.action mousewheel.with_meta.action If you use Firefox sync and want these settings to sync between your machines, also add the following properties: Create two new properties both of type boolean and set them to true: ...
GlusterFS
We’re in the process of shifting from using our custom ‘glue’ for orchestrating Docker deployments to Kubernetes, When we first deployed Docker to replace LXC and our legacy Puppet-heavy application configuration and deployment systems there really wasn’t any existing tool to manage this, thus we rolled our own, mainly a few Ruby scripts combined with a Puppet / Hiera / Mcollective driven workflow. The main objective is to replace our legacy NFS file servers used to host uploads / attachments and static files for our web applications, while NFS(v4) performance is adequate, it is a clear single point of failure and of course, there are the age old stale mount problems should network interruptions occur. ...
Return Of The RSS
Of all the tools for reading news and subscribing to software releases, I still find RSS the most useful. I use Feedly to manage my rss subscriptions and keep all my devices in sync, but instead of using the Feedly’s own client, I use an app called Reeder as the client / reader itself. Link: My Feedly RSS Feed Feedly RSS feed subscription management Features: Keyword alerts. Browser plugins to subscribe to (current) url. Notation and highlighting support (a bit like Evernote). Search and filtering across large numbers of feeds / content. IFTTT, Zapier, Buffer and Hootsuite integration. Built in save / share functionality (that I only use when I’m on the website). Backup feeds to Dropbox. Very fast, regardless of the fact that I’m in Australia - which often impacts the performance of apps / sites that tend to be hosted on AWS in the US as the latency is so high. Article de-duplication is currently being developed I believe, so I’m looking forward to that! Easy manual import, export and backup (no vendor lock-in is important to me). Public sharing of your Feedly feeds (we’re getting very meta here!). Reeder A (really) beautiful and fast iOS / macOS client ...
Monitoring SystemD Units With Nagios
Ever forgotten to add a critical service to monitoring? Want to know if a service or process fails without explicitly monitoring every service on a host? …Then why not use SystemD’s existing knowledge of all the enabled services? Thanks to ‘Kbyte’ who made a simple Nagios plugin to do just this! Requirements Python3 (For RHEL/CentOS 7 yum install python34) python-nagiosplugin My pre-built RPMs or pip3 install nagiosplugin PyNagSystemD
Online Conversion from SQL_ASCII to UTF8 in PostgreSQL
Scripts and source available here: sql_ascii_to_utf8 The Goal To be able to take a Postgres Database which is in SQL_ASCII encoding, and import it into a UTF8 encoded database. Requirements: Python3 (For RHEL/CentOS 7 yum install python34) python-nagiosplugin My pre-built RPMs or pip3 install nagiosplugin PyNagSystemD The Problem PostreSQL will generate errors like this if it encounters any non-UTF8 byte-sequences during a database restore: # pg_dump -Fc test_badchar | pg_restore -d test_badchar_utf8 pg_restore: [archiver (db)] Error while PROCESSING TOC: pg_restore: [archiver (db)] Error from TOC entry 2839; 0 26852 TABLE DATA table101 postgres pg_restore: [archiver (db)] COPY failed for table "table101": ERROR: invalid byte sequence for encoding "UTF8": 0x91 CONTEXT: COPY table101, line 1 WARNING: errors ignored on restore: 1 And the corresponding data will be omitted from the database (in this case, the whole table, even the rows which did not have a problem): ...
Speeding Up rsync
The most common way to use rsync is probably as such: rsync -avr user@<source>:<source_dir> <dest_dir> Resulting in 30-35MB/s depending on file sizes This can be improved by using a more efficient, less secure encryption algorithm, disabling compression and telling the SSH client to disable some unneeded features that slow things down. With the settings below I have achieved 100MB/s (at work between VMs) and over 300MB/s at home between SSD drives. ...
Mirroring a Gitlab project to Github
Let’s pretend you have a project on Gitlab called ask-izzy and you want to mirror it up to Gitlab which is located at https://github.com/ask-izzy/ask-izzy Assuming you’re running Gitlab as the default user of git and that your repositories are stored in /mnt/repositories you can following something similar to the following instructions: Grant write access to Github Get your Gitlab install’s pubkey from the git user cat /home/git/.ssh/id_rsa.pub On Github add this pubkey as deploy key on the repo, make sure you tick the option to allow write access. ...
The Best Of - 2014 Edition
At the end of every year I note down a summary of the best applications, hardware & websites I’ve enjoyed & depended on throughout the year (and often for some time before). This post has long since been superseded. You can find the latest version of this post here. Software / General Use Fastmail - https://www.fastmail.com Evernote - https://evernote.com Reeder - http://reederapp.com Keynote - https://www.apple.com/au/mac/keynote Lastpass - https://lastpass.com Plex - https://plex.tv Calibre - http://calibre-ebook.com Software / Geek Use Sublime Text - http://www.sublimetext.com/3 Homebrew - http://brew.sh DropSync - http://mudflatsoftware.com Beets - http://beets.radbox.org Textual - http://www.codeux.com/textual XLD - http://tmkk.undo.jp/xld/index_e.html Code Academy - http://www.codecademy.com Exercism.io - http://exercism.io Sickbeard + Headphones + Couchpotato + Sabnzbd - http://www.totalhtpc.com/ultimate-usenet-guide.html Software / Mobile Tweetbot - http://tapbots.com/software/tweetbot Pushover - http://pushover.net Lastpass - https://lastpass.com Keynote - https://www.apple.com/au/ios/keynote Reeder - http://reederapp.com/ios Evernote- https://evernote.com Plex - https://plex.tv Backblaze - https://www.backblaze.com WTF Podcast - http://www.wtfpod.com/app MiniHack - https://itunes.apple.com/au/app/minihack-for-hacker-news/id631108846?mt=8 Uber - https://itunes.apple.com/au/app/uber/id368677368?mt=8 Goodreads - https://itunes.apple.com/au/app/goodreads-book-recommendations/id355833469?mt=8 Notify4M - https://itunes.apple.com/au/app/notify4m/id499161979?mt=8 Bandcamp - https://itunes.apple.com/au/app/bandcamp/id706408639?mt=8 Hype Machine - https://itunes.apple.com/au/app/hype-machine/id414315986?mt=8 Nuzzel (Only got onto this today) - https://itunes.apple.com/au/app/nuzzel-news-from-your-friends/id692285770?mt=8 Alien Blue - http://www.reddit.com/r/alienblue Software / SysAdmin or DevOps Specific Gitlab - http://gitlab.org Gitlab-CI - https://about.gitlab.com/gitlab-ci Dash - http://kapeli.com/dash PostgreSQL (Makes my list every year & just keeps getting better) - http://www.postgresql.org PGBadger - http://dalibo.github.io/pgbadger Docker - https://www.docker.com Consul - https://consul.io Puppet (I couldn’t do my job as well without it) - http://puppetlabs.com iTerm - http://iterm2.com Nginx - http://nginx.org Htop - http://hisham.hm/htop Bonnie++ - http://linux.die.net/man/8/bonnie++ Openfire - https://www.igniterealtime.org/projects/openfire Hiera-Eyaml - https://github.com/TomPoulton/hiera-eyaml Rubinius - http://rubini.us Puma - http://puma.io XenServer - http://xenserver.org ElasticSearch - www.elasticsearch.org Logstash - http://logstash.net FPM - https://github.com/jordansissel/fpm PFsense - https://www.pfsense.org Debian Jessie (Not quite released but the next great version of the best linux Distro IMO) - https://www.debian.org/releases/jessie Check_MK Multisite - https://mathias-kettner.de/checkmk_multisite.html PWSafe - https://itunes.apple.com/au/app/pwsafe-password-safe-compatible/id520993579?mt=12 Supervisord - http://supervisord.org Websites Last.fm - http://www.last.fm/user/sammcj2000 Feedly - https://feedly.com HackerNews - https://news.ycombinator.com/news Lucidchart - http://lucidchart.com/ MondoTunes (Might be a little biased here!) - http://mondotunes.org Hardware Das Ultimate 4- http://www.daskeyboard.com Logitech Performance MX - http://www.logitech.com/en-au/product/performance-mouse-mx 15’’ Macbook Pro Retina - http://www.apple.com/au/macbook-pro iPhone 6+ (because its bigger than bigger, or something) - https://www.apple.com/iphone-6 CuBox - http://www.solid-run.com/product/cubox-i4pro Parani SD1000 Bluetooth Serial Adapter - http://www.senaindustrial.com/products/industrial_bluetooth/sd1000.php SanDisk Extreme Pro 480GB SSD - http://www.newegg.com/Product/Product.aspx?Item=N82E16820171999 Other / Non-tech All Day Socks - http://alldaysocks.com Sennheiser Amperior On-Ear Headphones - http://www.head-fi.org/products/sennheiser-amperior-on-ear-headphones O2 + ODAC - http://www.jdslabs.com/products/48/o2-odac-combo Benchmark DAC1 HDR - http://benchmarkmedia.com/products/benchmark-dac1-hdr-digital-to-analog-converter Bellroy Wallets - http://bellroy.com Ink Shoes - http://www.inkshoes.it Kindle Paperwhite - http://www.amazon.com.au/gp/feature.html?docId=3077740006 Nerf Jolt - http://nerf.wikia.com/wiki/Jolt_EX-1 Books The Phoenix Project (Reread this year for the 3rd time) - http://itrevolution.com/books/phoenix-project-DevOps-book Surely You’re Joking Mr Feynman! - https://www.goodreads.com/book/show/5544.Surely_You_re_Joking_Mr_Feynman_ The Dark Tower Series - https://www.goodreads.com/book/show/43615.The_Gunslinger Snow Crash - https://www.goodreads.com/book/show/830.Snow_Crash