Recent comments on posts in the blog:

Thanks for your comment.

Yes it's missing content because of a formatting error in the source (there should be an empty line before the code block). The output that it was supposed to have is:

$ awk <testdata '{ split($0, A, /->/); print A[2] }'

I'll get it fixed.

Comment by Richard Maw Mon Nov 20 13:33:51 2017

Hi, thanks for this great blog!

Regarding the cut example: the last line says "For this more complicated tools need to be used. $ awk /); print A[2] }' b", I think something is missing. Regarding the sort/uniq paragraph: the option I find more useful of uniq is "-c" for counting occourrences.

Thank you again, Riccardo

Comment by riccio Sat Nov 18 10:58:40 2017
You're right, that would've been a better word choice. Thanks.
Comment by Wed Nov 1 12:40:04 2017
Might I suggest rather than "short", you really mean that communication should be kept "brief" or "concise".
Comment by lesley.g.mitchell Wed Nov 1 12:22:00 2017

Computer/Programming/Information Ethics is a whole discipline in itself, though it is certainly a topic that every programmer really ought have some grounding in.

The Wikipedia page on the topic - - is a good place to start for more general information and some ideas about what to consider.

For a more philosophical exploration of the topic, the Stanford Encyclopedia of Philosophy has some good articles, such as: and

There are also a whole range of books on the topic both from computing perspectives and more philosophical ones.

The Open University also offers a free course on the subject, Introducing Ethics in Information and Computer Sciences

Comment by lesley.g.mitchell Thu Oct 26 12:43:51 2017

"Does it promote $BADTHINGS, directly or indirectly?"

Slippery surface, as one can easily put GPG/TOR/GNUNet (and loosely following your example, R) in that $BADTHINGS basket.
A medical professional cures people regardless, a lawyer defends their client regardless: is a Free Software contributor more equipped to indulge in this deontological Pandora's box?

Comment by fa-ml Wed Oct 25 13:15:15 2017

Thanks Ben. I've made that change.

I unfortunately wrote this article before I discussed this issue at DebConf.

Comment by Richard Maw Sat Oct 21 16:11:41 2017
Leap seconds are inserted at 23:59:60 UTC, not local time. Some stock exchanges shut down briefly in the middle of 2015 rather than keep running across the leap second at the risk of timekeeping errors.
Comment by ben Fri Oct 20 14:35:46 2017
There are likely to be 32-bit systems still running in 2038, and in order to make that happen they will likely have a 64-bit time_t and 32-bit long. So please could you make your first example cast from time_t to long long, not long?
Comment by ben Fri Oct 20 14:26:47 2017

Nice post, and I'm glad you're enjoying NixOS!

I'm a NixOS contributor/committer, and the principle author (and co-maintainer) of the Bundler-based packaging integration. If you or anyone reading this has any feedback and/or questions about NixOS and Ruby (or NixOS in general) feel free to shoot me a message. I idle on #nixos on Freenode (as cstrahan), and you can email me at charles {{at}}


-Charles Strahan (cstrahan)

Comment by charles Mon Oct 16 23:05:02 2017