Better late than never (A Curious Moon)

I keep saying that you never know when some knowledge would be useful. So there’s no such thing as useless knowledge. You’ve just not found usage for it yet. Some time ago I was praising The Imposter’s Handbook. I’ve liked it so much that I’ve bought and started reading A Curious Moon of the same author. I was doing some SQL at the time, but it wasn’t my major task. And I knew nothing about PostgreSQL, apart that it existed.

Choose your file format and encoding wisely

I’m working with memoQ (CAT tool) for more than four years now. It’s quite good comparing to other localisation tools. Which isn’t maybe such a great achievement as there aren’t too many. But anyway, it’s decent. But memoQ team has made some weird design decisions early on. The most annoying one is the choice of encoding. Entire world uses UTF-8 which is great and everything works fine with it. However memoQ decided they’ll use UTF-16LE and it’s a nightmare.

Economist is not economical choice

We have this publicist in Poland, Daniel Passent, who’s one of the greatest to me. He once said that the Economist is the greatest newspaper in the world. And I agree with him. I’ve tried many, but there’s no single one which I would enjoy as much. There’s at least one which is close, but let me tell you something else first. I’ve been subscriber to Economist many times, usually it was digital subscription.

Job security and automation

When you’ve created some solution which is essential to the company you work for, it’s tempting to make it as proprietary and as little documented as possible for obvious reason of job security. But it’s short sighted. If your value lays only in maintaining this single piece of technology you still can be replaced at some point as this technology becomes obsolete or company would buy some other solution. I’ve always opposed the idea of irreplaceable people.

Journalists suck at tech

Recently I’ve revived my subscription to Wired. I’ve bought yearly subscription for $5 which is a great price. I’ve used my Gmail address when ordering it and received confirmation to this address. However, after logging in I’ve found out my subscription wasn’t active and I couldn’t activate it. Let’s create a support ticket I’ve thought and off to the support page I went. I needed to log in again and it’s asked me to activate my subscription, again.

Your projects can evolve

Some time ago I’ve created a tool which was testing our Translation Memories (TMs). It was useful, because they’ve become corrupted quite often and sooner we knew about it the better. So I’ve set it to run every day. These days problems with TMs are sporadical, but I’m still running it just in case. Process is automated and all it requires from me is to read short report each day, so no biggie.

Agile over waterfall

Agile is the hype these days and there’s probably no single startup which isn’t using this approach right now. In big corporations the adoption is slower, but they are also moving toward it as it simply works. Develop in small steps, measure how well product works so far, move forward or take a step back and fix. Data is really crucial here. Measure how well new improvement helped you with your problem, or measure how it’s made some things harder, as it can go both ways.

I'm an Imposter

I’m interested in computers since I’ve learnt that they exist. And I’ve always wanted to work with them. But life is strange and I’ve landed with MA in Marketing and Management. Thankfully these days education doesn’t chain you to one type of work and currently I work as a, sort of, software engineer. But I’ve been always feeling like an imposter, because I don’t have official CS education. The Imposter’s Handbook to the rescue!

Why BOM?

BOM is a Unicode character, U+FEFF byte order mark (BOM). In context of UTF-8 the most import thing is that it confirms that the file is UTF-8 encoded (most probably). Because there’s no other way to be almost certain (you never get 100% confidence with encodings). Of course there are methods of heuristic analysis which can offer high accuracy. I myself am using Mozilla Universal Charset Detector, but it’s still guessing.

Invisible improvement

This year alone I’ve written more than thousand lines of code for various libraries. And I’ve started to write libraries;) Each of my methods is unit tested. My classes are as well designed as it’s possible basing on my current knowledge. I can write new automation script for our servers in the matter of hours (sometimes minutes) comparing to days not so long ago. I’m able to test most of the things before they’ll get on the server, so I’ve almost eliminated vicious cycle of build-deploy-check-fix.