Programming

It's my job, for one thing. I work mostly on a set of big webapps that form the back office of a telecommunications company. Here's where I'm at at the moment about the languages I use. As of April 2018.

PHP

Right now the language I've programmed most in, by far, is PHP. It's a trainwreck, but people use it and have been fixing (some of) its flaws and making it more powerful and secure and useful for a couple decades now, so, it does the job. My feelings on PHP have evolved from "my god, it sucks compared to Perl, of which it is a sad caricature," to "it doesn't matter, you can do what you need to in it and it's everywhere and easily deployable etc etc" to "you know, I really am annoyed by its minor stupidities, despite the fact that I've spent like six years ignoring them and using it to get the job done."

Perl

I used Perl and only Perl for a very long time, two jobs ago. It is flexible & powerful & fast and can do anything. However, it's got needless complexity and obscurity baked deeply into it, and it's so flexible that there are a million ways of doing anything. It doesn't even have object orientation, it just has tools you (or a library) can use to roll your own object orientation. It doesn't even have function arguments for god's sake. You have to roll your own way of retrieving arguments when your function is invoked. That's bonkers. (Note: these views of Perl may be several years out of date.)

Ruby

I loved Ruby before Rails. I never was 100% up to speed on Rails, as new version of it kept coming out and it became even more of an 800 pound gorilla. A very cool 800 pound gorilla but still. I really enjoyed the work of _whytheluckystiff, and when he burned his web presence to the ground, a chunk of why I loved Ruby was gone. He was the anti-dhh. I didn't end up using it that much at my last job because I was so not-up-to-speed on Rails, and where they used Ruby, it was Rails. And as time went on they started replacing all their Ruby shit with Node shit, because Ruby was old and busted and Node was the new hotness. Also nobody there was as in love with Ruby as some of them were in love with Node. So Ruby seemed to be fading from the world, and I stopped paying attention, until Middleman just recently reminded me that it's pretty cool.

Python

It seems like Python is a big deal these days. Scientists use Python. Big data people use python. There is a Python environment for iOS, and I'm all about iOS these days (a topic which deserves its own page.) I'm not bad at all with Python. A lot of it is like Ruby, and the parts that aren't, I'm fine with. I'm not quite as facile with it as I am with Ruby, and it'd be nice to change that. I was considering doin this site with Pelican, but I fell in love with Middleman when I tried it and so Pelican's left standing by.

Python's interesting because of its slow-motion upgrade crisis. Python 3 is the current version, but Python 2 was so massively popular that getting people to upgrade has been an exercise in exasperation. The Python overlords have bent over backwards to make the transition easier, but a lot of people still aren't on board. And /usr/bin/env python still invokes python 2 pretty much everywhere because a lot would break if you changed that. So pythonistas using the current version have the indignity of having to invoke it as "python3" rather than "python" as if it's a second class citizen.

This isn't a big deal compared to the Perl 6 trainwreck, but for someone looking at investing in the language, it presents you right up front with a conundrum of which to learn.

Javascript/Node

I don't know man. There's so much to say about this. I know Javascript well enough, because I'm a halfway competent web developer. I have some experience with Node and all the madness thereof, enough to have opinions but not enough to feel like I want to go into it all in public. I feel like it would be good to invest in it but it's all moving so fast I'd just as soon let it do whatever it's going to do and watch from the sidelines while writing obsolete JQuery because that's what I'm required to do for my job. I have spent some time coding in the shiny new versions of JS with arrow functions and funky object notation and all that, and I must say it's pretty cool. So, good for Javascript and I hope that keeps going well.

SQL

I'm getting to know SQL (Postgres) really well at my current job, and I dig it. I haven't had a chance to spend as much time with it in the past as I do now, and it's good to get more experience using it in the real world instead of just knowing about it.

Etc

I've used Lua and it's nice, it's sort of like an alternate-universe Javascript. Similarly spare but expressive. Got to use Swift for a while last year, and it was pretty cool. It's the only time I've used a compiled, strongly typed language professionally, and it was a fun challenge.