My technical capabilities are both broad and deep. I spend many hours per day engaged in technical pursuits, fitting my social and advocacy activities among them. Over the past 16 years, I have performed almost every role in a small IT consulting company (up to 12 staff) including all technical IT system administration, system integration, architecture design, web hosting, and software development tasks using a broad range of technologies, all open source and freely available. I am confident that I can already do most things that an IT or educational institution would need me to do, and I am certain that I will rapidly learn anything I do not already know “out-of-the-box”.
In 2024 I wrote a little app with SvelteKit that displays a current list of the web technologies I personally host for fun, my job, or for others. At the time of this writing (Feb 2025), I'm hosting 129 instances of 55 different libre (open source) technologies (I don't do proprietary).
In addition to all of those, I have many years of experience with technologies like:
- Operating System: Linux has been my primary OS on desktop and server since 1994. Currently running Debian or Ubuntu on the server and Linux Mint on the desktops and laptops
- Email: Postfix SMTP, Dovecot IMAP/POP and other related tools like Procmail, Spamassassin, and ClamAV among others. In 2019, shifted all my mail systems to MailCow. Despite it's goofy name, it's superb.
- DNS: Bind, PowerDNS, even DJBDNS!
- Webserver: Nginx, Apache
- Version Control: Git and SVN - I also run Gitlab and Forgejo instances for my own use. I don't use Github because it's owned by Microsoft.
- Programming: C/C++ - a bit rusty, but have 5 years commercial experience, particularly with the Qt framework
- Scripting: PHP (16 years experience), lots of Javascript, Python, Bash, Zsh, Awk and I have decades of day-to-day experience with Linux command line tools. My current passion is the Svelte and Sveltekit Javascript frameworks.
- Markup: XHTML, HTML5, CSS 3, XML, XSLT
- DevOps: Vagrant, lots and lots of Docker, LXC/D, Ansible, Drush, Composer
- Package/Dependency Management: pip, npm, compass, composer, etc.
- Documents: Vim, Etherpad-Lite (online collaborative editing), LibreOffice Writer and more recently both CollaboraOffice and OnlyOffice combined with NextCloud.
- Computation: LibreOffice Calc, OnlyOffice Spreadsheet, spreadsheets in general
- Presentations: LibreOffice Impress, but my preferred tools is Reveal.JS (a keynote)
- Mobile Platform: Android, particularly Cyanogen Mod, and since its demise, LineageOS.
- Database: SQLite, MySQL/MariaDB, PostgreSQL (including some PostGIS), and quite a bit of CouchDB
- Web Application Frameworks: Drupal, Silverstripe, lots of WordPress, more recently, Ghost, and I've dabbled with Grav.
- Web Applications: Matomo, Lime Survey, Rocket.Chat, Discourse, Gitlab, Mastodon, Mautic, among many others.
- Single Sign-On: SimpleSAMLPHP, KeyCloak, but I've settled on Authentik
- Password Management: VaulWarden/BitWarden (with the Rust implementation)
- all manner of Fediverse services
- Matrix-based services (federated chat) including Synapse, Element, and Sliding Sync.
I seem to explore new technologies frequently. Here's a list of services I set up and maintain on behalf of the NZ Open Source Society.
I have worked with these technologies:
- Search: Apache Solr
- Scripting: Python/iPython Notebooks, Perl, Ruby, Javascript, jQuery
- Markup: Sass, DocBook
- Sysadmin: Puppet
- DevOps: Fabric
- Operating Systems: Microsoft Windows 95 - 7 - I provided commercial support for organisations integrating MS operating systems with our Linux-based infrastructure, Apple MacOS
- Web Application Frameworks: Django, Ruby on Rails, Node.JS
- Content Management Systems: Mezzanine
I learn new technologies all the time, because I love doing it. When I have a particular problem, my broad base of experience means that I can find and assimilate the necessary technological lore quickly and effectively.