All Posts

Explore all articles from Life Beyond Fife - Page 8

management

How much coding should a manager do?

In my day job we use Slack as a key communication tool - for those who haven't used it, it's basically a corporate version of IRC with good UX. In a private channel for those in leadership positions, there was a question about how to transition from Software Engineer to Engineering Manager; what to consider when moving from a predominantly individual contributor (IC) specialisation to a team management focused role. My reply got an upvote from about 10% of the channel, so thought it a good start for my first blog post on the subject of management\: Q: How much...

5 min readRead more →
essays

Are you happy?

A thought experiment occurred to me which looks to answer the question, "Are you happy?" In a science fiction film I saw recently there was a fantastical machine that copies (clones) whatever thing or person is placed inside it. Without ever explicitly going through the detail of the pros and cons of the situation, the people who use the machine to clone themselves do so at great risk to their very being. Because the ability to make another person, exactly the same as an existing one, has such devastating consequences its users preemptively setup a murder. And these consequences though...

4 min readRead more →
follies

How I became a data scientist

During the #firstsevenjobs trend on Twitter, I tweeted my rather standard career path into software. It piqued the curiosity of a friend and former colleague who was interested in my minor blip as a data scientist - it was a surprising and short six month period in my career and fairly recent. Here's my story about why, and how I became a data scientist, and more importantly, some lessons on why it didn't work out. history of me Before launching straight into recent history, I'll briefly cover my early career where I was a computer scientist researcher. Growing up I...

11 min readRead more →
coding

Insurance against LeftPad level events

When it comes to dependencies, there are two extremes in software development. Complete ownership of everything right down to the abstract data types e.g. "Yes I write my own open addressing hash table and hash map"; or on the other hand grabbing strangers' code left, right and centre e.g. "I'd rather have a dependency on some random, 12 line implementation of LeftPad because that's one less thing to bugfix, debug and maintain". As with all computer science trade offs, the majority feel comfortable somewhere in the middle. Done properly, I see the elegance of relying on small, composable dependencies but...

2 min readRead more →
coding

Breaking into the opinionated, disjointed world of web development

Again and again, I find web development one of the most fascinating of all the disciplines I've come across in my career. Fascinating in the way Extreme Ironing is fascinating: you spend as much of the time wondering why as you do how. Getting started The main issue as I see it for a developer with existing skills in programming looking to become a web developer, is how to get started. Take jstherightway.org as an example of one of many introductory guides to modern web development: as comprehensive and helpful as it is, where do you begin? How do you...

4 min readRead more →
git

Caveats

If this isn't the only site you've looked at for assistance learning git, you may have come across advice that perhaps contradicts some of the suggestions I've made. For example, the template workflow I describe instructs users to get the latest changes from the origin repo using git pull. Other sources will recommend, with good reason, a slightly longer approach that splits this over two git commands, fetch and merge. Opiniated versus Non-opinionated As a programmer you may have heard languages being referred to as opinionated or non-opinionated. Opinionated languages do not just specify their, often terse, syntax, but rather...

4 min readRead more →