The long way through Software Craftsmanship

The role of a software consultant

Jun 10, 2016 - 1 minute read - Comments - bookquotereinventing-organizationsfrederic-lalouxteal-organizationconsultant

A quote from Reinventing Organizations, about roles, job descriptions and job titles in Chapter 2.2: Self-management (structures), page 90: [In] Teal Organizations […] people are not made to fit pre-defined jobs; their job emerge from a multitude of roles and responsibilities they pick up based on their interests, talents, and the needs of the organization. Frederic Laloux, Reinventing Organizations In my opinion, this is the role of the software consultant when working with a client: even if the customer has asked for help in some parts of their activity, a senior-enough consultant can discover other areas where they can add value, even if that new work doesn’t have much in common with the initial request (this change should be approved by the people that will be affected).

Unwritten principles for coaching, a quote

Jun 10, 2016 - 1 minute read - Comments - bookquotereinventing-organizationsfrederic-laloux

A quote from Reinventing Organizations, about a few unwritten principles for coaching, in Chapter 2.2: Self-management (structures), page 70: It’s okay for teams to struggle. From struggle comes learning. And teams that have gone through difficult moments build resilience and a deep sense of community. The coach’s role therefore is not to prevent foreseeable problems, but to support teams in solving them (and later help them reflect on how they’ve grown in the process).

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

DiversityMediocrityIllusion 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.

Self-Study in May 2016

May 1, 2016 - 4 minute read - Comments - self-study-aggregationmay2016read1u-serveradrian-kosmaczewskiagealdous-broder-algorithmalgorithmbinary-tree-algorithmbookcareercareer-managementcodecode-generationcode-generatorcomfort-zoneconcurrent-connectionconstraintcoworkerdatadeliberate-practicedesign-patterndesign-principlediego-kartonesdummyeller-algorithmemployeeemployereventeverydayfakefiringfluxflux-iogalaxygerard-meszarosgithubgrowing-tree-algorithmgwendolyn-faradayhunt-and-kill-algorithmjakob-nielsenjamis-buckjavajen-carlilejhipsterjobjorge-diazjunitkaran-goelkoreakruskal-algorithmlearn-to-codelifelistlong-termmartin-fowlermazemaze-generationmicroservicemigratorydatamihai-rotarumocknetworkingnextnir-benitaolapeterssonpatternpattern-catalogphilosophypracticeprim-algorithmprofessionprofessional-careerproverbpythonrecursive-backtrackerrecursive-division-algorithmrelationshipsamir-talwarscalabilityscott-dinsmoresidewinder-algorithmsoftwarespystreakstubteam-managementtest-doubletest-patterntestingusabilityuxwebsocketwilson-algorithmwipworkwork-in-progressxunitzach-holman

Being A Developer After 40 I’ve read this article by Adrian Kosmaczewski on the required topics to be a developer at age 40 and keep enjoying it: Forget The Hype Choose Your Galaxy Wisely Learn About Software History Keep on Learning Teach Workplaces Suck Know Your Worth Send The Elevator Down LLVM He references galaxy, the big stack you are positioned (JVM, .net, PHP, etc). He makes a special mention of the LLVM

Quote: Characterization tests

Apr 18, 2016 - 2 minute read - Comments - quotewewlcmichael-featherslegacy-codecharacterization-testtestlegacy

In Working effectively with legacy code, Michael Feathers talks a type of tests to define or characterize the current behavior of the legacy system: In nearly every legacy system, what the system does is more important than what it is supposed to do. A characterization test is a test that characterizes the actual behavior of a piece of code. […] The test document the actual current behavior of the system.

Brownish Greenfield Gilded Rose Kata

Apr 18, 2016 - 3 minute read - Comments - formulationkata-formulationkatagilded-rosetrikitrokmanuel-riverogreenfieldlegacy-codebobby-johnsonterry-hughes

(This formulation has been copied and adapted from Bobby Johnson and Terry Hughes’s repository) Formulation Hi and welcome to team Gilded Rose. As you know, we are a small inn with a prime location in a prominent city ran by a friendly innkeeper named Allison. We also buy and sell only the finest goods. Unfortunately, our goods are constantly degrading in quality as they approach their sell by date. We have a system in place that updates our inventory for us.