Pinned toot

🔥 Two Git commands that have made me a better developer:

– `git commit` without the `-m` option
– `git add -p`

The former forces me to write a good multi-line commit message, and the latter allows to stage changes partially in an interactive mode.

New post on my blog: "Self-hosting VSCode"

fribbledom.com/posts/selfhosti

If you like neither VSCode nor Docker, pretend this blog post never happened 😄

For everyone else: this was actually quite an interesting experience and I love this setup!

Craftsman's Log – 2021.06.20

Keywords: GraphQL spec, CLI apps with Node.js, Kafka comic, otters, roasted pigs and Netflix.

world.hey.com/niko.heikkila/cr

We went from the Turing Test, where a computer tries to convince a human that it is not a computer but a real person, to Captchas, where humans try to convince a computer they're a real person, not a computer.

software dev tip 

If I feel I'm not "done" with a programming task at the end of my work day, I leave myself detailed notes on what to do the next morning. Like: the next ~3 things I think I am going to need to do (update function X, run the tests, investigate function Y if the tests fail, etc). I've attached this morning's notes-to-myself.

Basically this lets me just "follow orders" at the start of my work day and ease my brain back into a place where I can start thinking at 100%

Junior dev: What's the best prefix for global variables?

Senior dev: //

#TIL The #Brainfuck programming language has a dialect called "I use Arch, btw". In this dialect, the original symbols are replaced with "I", "use", "arch", "linux", "btw", "by", "the", "way". #Arch #ArchLinux

github.com/OverMighty/i-use-ar

This is a "Hello World!" example:

arch the i the use linux the way i arch the i arch arch arch i the arch arch arch arch arch arch arch arch arch arch arch i way the i way linux the use way i linux way way arch arch arch arch arch arch arch arch arch arch use way i i i i i i linux linux linux linux btw use use arch arch arch btw use linux btw btw arch arch arch btw use linux btw i i i btw use use btw arch arch arch btw linux linux linux linux linux linux btw i linux btw use use arch btw use btw

Twitter announces "Blue", a subscription service for a monthly fee, that unlocks a bunch of extra features.

Editing tweets is among them apparently.

Why that is a horrible idea:
blog.joinmastodon.org/2018/06/

Day five of not using my phone: I have read five books and written twelve. I now perfectly understand what Hegel was going off about. I have learned to astral project

Craftsman's Log – 2021.05.30

Keywords: journaling, pair programming, product teams, zines, theory of constraints, productivity, and simplicity.

world.hey.com/niko.heikkila/cr

A reminder that we probably should stop recommending Clean Code (Martin, 2009)…

…and recommend The Clean Coder (Martin, 2011) instead.

Or if Bob's not your uncle, try reading the following for starters:

– Extreme Programming Explained, 2nd Edition (Beck, 2004)
– Software Craftsman (Mancuso, 2014)

Me 13 years old: yay, summer vacation!

Me 33 years old: yay, summer vaccination!

It's not often that I read the macOS system.log. It's written in an interesting tone, polite yet informal and to-the-point.

Pair programming is about mentoring, learning, sharing knowledge, and building social connections. Pair programming is also exhausting, makes you vulnerable, and is often looked down on by managers. Fortunately, through practice and repetition, you can make it work for you.

Read about benefits, pitfalls and practical tips for pairing in my latest blog post.

nikoheikkila.fi/blog/when-to-p

It turns out, medieval people knew quite a lot about software development. Scope creep and rushing features to production while sacrificing quality was not unknown to them.

Picture from the Book of Job, ca. 1330.

If it involves a couple of hacky tricks, I don't care if your code solves the problem 6% faster.

Hardware scales and will improve over time. The human capacity of understanding and maintaining code does not.

There are always exceptions to the rule, but generally speaking:

clean code > performance.

When the iPhone launched, all the cool apps were on the desktop, and you had to live with shitty web apps on your mobile.

Nowadays all the cool apps are on the mobiles, and you get shitty web apps for the desktop.

“How Apple screwed Facebook - Apple’s iOS 14.5 update has triggered an unstoppable collapse in Facebook’s ability to collect user data”

wired.co.uk/article/apple-ios1

👏

A good solution is to work in the smallest possible batches and leverage pair-programming. There is no better way to improve the code review process than to review the single line right after it has been written.

Each change should process like so:

Write code – review – test – commit – continue

Couple the approach with test-driven development where it makes sense.

Show thread

We are taught to use pull requests to guard us against unwanted changes. It (sort of) works in open-source development given you have ample time to review.

In business projects, it works the other way around. We are over-worked and over-utilized to the point we don't care about code reviews and easily let any change through. After all, we're always behind schedule.

Show thread
Show older
Mastodon for Tech Folks

This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!