Lessons the West Indies Cricket Teams Taught Us

West Indies are World T20 Champions yet again. Only this time they won in three different tournaments: Women, Men, and Under-19. This is unprecedented success for any country, let alone a collective of countries that form a single team.

Read more …

Package and Distribute Your Test Suite

Automated test suites must be packaged for installation and distributed just like your other build artifacts. They are not some special things that live in a code repository (repo) separate from the rest of your code.

My team was writing tests and keeping them all in a git repo. The repo would be cloned and then PyTest would run these tests. All users of tests - from developers to Continuous Integration (CI) and everyone else in between - would run steps akin to:

git clone git@github.com:username/testrepo.git
cd testrepo
git checkout main
pip install -r requirements.txt
py.test tests/

This worked for a while but was not a good fit as time progressed for these reasons:

Read more …

Why FreeBSD?

Before going into why FreeBSD is now my preferred OS for learning UNIX let's review why I used Linux for a long time.

Read more …

Why Learn Erlang?

I am a Pythonista by trade and passion. It was the first language - after trying C, Java, and Perl - that made me feel productive while loving the (admittedly beginner-crappy) code I wrote. I don't claim to be a Python expert but I have worked with it long enough to be well versed in it for most use cases. And yet I feel like trying my hand at another language.

I have dithered on the decision to pick a language and stick with it. My interest has been pulled in three directions over the past couple years: Go, Erlang, and Rust. I even tried my hand at each language for a couple days before life happened.

Read more …

Deciding What to Learn Next is Hard

I have an ever present restlessness when it comes to figuring out what to learn next. It's a source of agitation and sometimes stress. It's even more unhealthy when I feel that way at times when I can do nothing about it, especially during some much needed downtime.

Read more …

Missing the Point of Free Software

I have come across various myths about free and open source software or as some call it FOSS. Some of the more prevalent are:

  • FOSS is gratis and it is not FOSS if it is not gratis
  • It is not FOSS if it has a Cathedral development process
  • Creators and maintainers are obligated to include user patches in upstream source tree
  • Creators and maintainers are obligated to provide gratis support to all users on the users' schedule
  • Copyleft code is free software and permissively licensed code is not
  • Free software begins and ends at Linux or GNU (to some extent)

Read more …