The long way through Software Craftsmanship

Self-Study in June 2016

Jun 1, 2016 - 7 minute read - Comments - self-study-aggregationjune2016readaaron-batalionabbreviationactive-management-technologyadrien-jolyadversaryafter-workagileagilityalex-beregszasziamtappapp-storeassistantawsaws-lambdabackdoorbasecampben-terrettblikicareercareer-managementcodecomparisoncompassioncompilerconferenceconsolecoursecraftcraftsmanshipcvcycledamien-zammitdesigndevopsdiversitydylan-ginsburgeggheadelmelm-compileremma-youngempathyenemyevan-czaplickifeelingfreelancefrenchgdsgendergithubgiulia-mantuanogovernmenthackheartbleedhiringhrhuman-resourceshypehype-cycleillnessimprovingintel-management-enginejavajavascriptjonathan-whitejoshua-chambersjustin-balthropkalyana-sundaramlambdalastpasslaw-instrumentleaklearninglifelong-learninglistloggingmanifestomartin-fowlermashooq-badarmemike-loukidesmistakemobile-appmykola-bilokonskynative-appnish-raooathparodypassionpasswordpassword-vaultpasswordlesspaul-galvinproduct-teamprofessionprofessional-careerprogrammerprogrammingpull-requestpythonquincy-larsonqutheoryratingrealityrejection-letterresume-driven-developmentreviewrobert-martinsecurityserverlessserverless-architecturesicknesssocratessocrates-uksocrates-uk-2016speedswifttalenttariq-alitcp-ipteamteam-managementtech-interviewtony-youukuncle-bobuser-engagementvaultvent-free-zonewebappworkforce


I’ve read this article by Martin Fowler (on his bliki) about the diversity in conferences and the profession. How it is our job to incentive a positive feedback cycle that brings more diverse people into the workforce.

Explains how they do it in ThoughtWorks and how they have changed in the last decade.

Tags: martin-fowler, diversity, gender, workforce, conference, profession, bliki

What do cryptic Github comments mean?

I’ve read this article by Alex Beregszaszi on the abbreviations used in Github comments and pull requests.

Tags: github, pull-request, alex-beregszaszi, abbreviation

6 erreurs à éviter en tant que développeur freelance

I’ve read this article (in French) by Adrien Joly on the mistakes freelancers shouldn’t do when working with clients.

Tags: adrien-joly, freelance, list, mistake, french

Agile Methodology’s Promise Seems To Fall Short in the Face of Reality

I’ve read this article on an experience by Paul Galvin on some failing agile implementations.

Tags: paul-galvin, agile, reality, agility, team-management

How sharing other people’s feelings can make you sick

I’ve read this article by Emma Young on how being empathic to others can make you sick on their own illness. How illness can be socially transmitted, by loved ones or even by strangers.

How algorithms (that display news) can affect your own well-being and how this is reduced by using compassion instead of empathy.

Borders on the difference of empathy vs compassion.

Tags: emma-young, empathy, compassion, feeling, team-management, vent-free-zone, sickness, illness

AWS Lambda for Beginners

I’ve read this article by Mashooq Badar on an introduction to AWS Lambdas, where the basics are covered until getting a Lambda service in production. Using Python or Java.

Tags: mashooq-badar, serverless, aws, aws-lambda, lambda, python, java, devops, serverless-architecture

Advanced Logging with the JavaScript Console

I’ve watched this course by Mykola Bilokonsky at

In it, he covers the following methods on the console:


The amount of parameters does not matter, it will put a space in between. printing an object will print its values

console.log with the C’s printf syntax, as long as the first parameter is a string

  %o for an object
  %c for CSS / groupCollapsed / groupEnd

Tags: mykola-bilokonsky, logging, javascript, console, egghead, course

After work, is what determines your future! Spend one hour per day doing these 5 things and your life will change forever!

I’ve read this post by Kalyana Sundaram on the activities we do at night, after a day’s work and how they influence our learning.

Tags: kalyana-sundaram, after-work, career, career-management, learning, lifelong-learning

Expert Resumé Driven Development

I’ve read this article by Tariq Ali, where he explains the Resume-Driven Development, as a subset of the Principal-Agent Problem:

The Principal (management) hires an Agent (a developer) to build a program and allow the Agent to choose the tech stack. But the Agent’s interest (making his resumé more impressive) can be orthogonal to the Principal’s interest (producing a great product by using the “right tool” for the job). If the Principal allows the Agent to do as he wish, then the Agent will do as he wishes, thereby leading to the Agent to prosper and the Principal to suffer.

References the Gartner Hype Cycle

Tags: tariq-ali, resume-driven-development, hype, cycle, hype-cycle, career, professional-career

Resume Driven Development

I’ve read this article by Mike Loukides about the problem of finding a technical person based on CVs and the Law of the instrument:

[…] the inability of a technical team to specify what they really want (a developer with good programming taste and instincts), and instead hiring someone who has a particular skill or credential […]

Tags: law-instrument, mike-loukides, cv, career, resume-driven-development

Why Britain banned mobile apps

I’ve read this interview with Ben Terrett, former design chief at the UK Government Digital Services (GDS), that explains why they prefer webapps rather than native (mobile) apps: it’s a matter of cost, having to maintain and update so many mobile versions, versus a single one for the webapp.

Also talks about user research and productagile teams inside the GDS.

The interview is written by Joshua Chambers.

Tags: joshua-chambers, ben-terrett, gds, webapp, mobile-app, native-app, product-team, agile, government, uk

Most Tech Interviews Suck — The Only 4 Questions That Matter

I’ve read this article on why the majority of technical interviews could be improved, asking four questions instead of following other practices. By Aaron Batalion

Tags: aaron-batalion, tech-interview, hiring, team

Why Socrates UK is not just a conference for software craftsmen

I’ve read this article by Giulia Mantuano on the SoCraTes UK 2016 conference, where she gave a talk on the importance of design in our environment, where we craft beautiful interfaces in our programs.

Tags: socrates, socrates-uk, socrates-uk-2016, giulia-mantuano, design

360 million reasons to destroy all passwords

I’ve read this article by Quincy Larson about the insecurity of passwords, both managed by vaults (like LastPass) or remembered ones. They all are susceptible to being discovered, leaked or shared to other sites / accounts.

The author suggests to use passwordless login, which sends a link to your email account, which allows you to log in to the application

Tags: passwordless, lastpass, vault, password-vault, quincy-larson, hack, leak, password

A Brutally Honest Rejection Letter by an HR

I’ve read this parody letter by Nish Rao, on the real reasons so HR uses these templates for rejecting candidates

Tags: nish-rao, parody, rejection-letter, hr, human-resources

Passwords are Obsolete

I’ve read this article by Justin Balthrop on how to set up a passwordless system and how is that related to the Heartbleed bug.

Tags: passwordless, justin-balthrop, heartbleed, password

Server Side Swift vs. The Other Guys — 2: Speed

I’ve read this comparison of languages and frameworks (Vapor (Swift), Ruby on Rails (Ruby), Laravel (PHP), Lumen (PHP), Express (JavaScript), Django (Python), Flask (Python), Spring (Java), Nancy (C#), Go (Pure Go, no framework)) and to benchmark Plaintext, JSON, Random SQLite Fetch.

Tags: comparison, qutheory, speed, swift

Compilers as Assistants

I’ve read this article by Evan Czaplicki on seeing the compiler as an assistant to your work, instead of an adversary. Of how the compiler should give the most useful errors and warnings.

He also explains what features have been removed from the Elm language in 0.16.

Tags: compiler, assistant, adversary, enemy, elm, elm-compiler, evan-czaplicki

Craftsmanship, design, and code

I’ve read this article by Jonathan Z. White about the relation between design and code and what craftsmanship is about.

Suggests learning more about the counterpart (design vs code), to better understand the activity of creating software as a whole. For developers, suggests a few activities to improve (e.g., read better code, write unit tests, analyze code). Cites that the only way of measuring progress is comparing where you are today compared to some time ago.

Tags: craftsmanship, jonathan-white, design, code, improving

The Programmer’s Oath

I’ve read this oath by Robert C Martin.

Tags: oath, programmer, craft, manifesto, robert-martin, uncle-bob

Intel x86s hide another CPU that can take over your machine (you can’t audit it)

I’ve read this article by Damien Zammit on the Intel Management Engine (ME), a hardware system that is embedded in the newer Intel chipsets. Its function is to provide low-level management services. ME (like Active Management Technology [AMT] in the past), provides great services, but has access to any memory location and to the TCP/IP stack, without any control from the operating system.

The firmware is currently checked before booting, but it is highly-valuable as a security risk, as it has full access to the physical hardware.

Tags: security, damien-zammit, intel-management-engine, active-management-technology, me, amt, tcp-ip, backdoor

Programming Doesn’t Require Talent or Even Passion

I’ve read this list of examples of why programming doesn’t require talent or passion, by Tony You

Tags: talent, passion, list, programming, tony-you

Getting from ⭐️⭐️ to ⭐️⭐️⭐️⭐️⭐️

I’ve read this article on how Basecamp increased their ratings at the App Store: notify the user about new features and, in that modal, ask them to review the app or dismiss. By Dylan Ginsburg

Tags: review, user-engagement, rating, basecamp, dylan-ginsburg, app-store, app