The long way through Software Craftsmanship

Self-Study in February 2017

Feb 1, 2017 - 7 minute read - Comments - self-study-aggregationfebruary2017readalan-brouilettealyssa-mazzinaanalysisandromedaapiappashton-kemerlingattack-vectorbonilistabonusbookbrandurbruce-schneierchallengechange-jobclojurecode-reviewcompanyconferenceconsultingdaniel-dietrichdaniel-mattedarius-forouxdark-standupdavid-bonilladavid-casseldavid-dawsondiffeisenhower-productivity-matrixemailencryptionexperience-reportexperimentfalliblefrustrationfuchsiafunctional-programminggithubgooglehappinesshaskellhrhuman-resourcesimportantimportant-vs-urgentinterfaceinterface-designinterruptionjavajavaslangjob-offerjoel-spolskyjohn-napierjoyentkat-boogaardkeykim-zetterknowledge-workerlambdalanguagelavabitlegacylegacy-hardwarelegacy-softwarelegacy-systemlibrarylimited-timelisticlemailmainframemanagementmanaging-performancemarianne-bellottimaybemeasuring-performancemonadnotificationoperating-systemoptionoptionalorganizationosovertimepalatablepapers-we-lovepayperformancephonepost-mortempostmortemprivacyproblemproductivitypsychologypull-requestpurpose-of-lifequestionquotereferencereferentremoteremote-workreviewrobert-austinscalascott-nonnenbergsecuritysexismshut-downsimplicity-itselfstack-overflowsusan-fowlersystemsystems-we-loveteamteam-managementtime-managementtokenuberuiurgenturgent-vs-importantusefulnessuxwhatsappwomenwork-environment

WhatsApp Security Vulnerability I’ve read this article by Bruce Schneier on a security defect in whatsapp, where an ‘unconfirmed’ message can be re-encrypted (with a new key) and resent. This is a vector for some attacks. Tags: bruce-schneier, security, whatsapp, encryption, attack-vector Encrypted email service once used by Edward Snowden relaunches I’ve read this article, by Kim Zetter, on Lavabit restablishing its service. Explains the company’s past and the new services they are offering

Self-Study in January 2017

Jan 1, 2017 - 7 minute read - Comments - self-study-aggregationjanuary2017readadditive-monadadvicealvaro-videlaamplifierauthoritybenjamin-hardybindc-sharpcode-completecoding-horrorcomonadcompound-interestcontinous-improvementdan-piponidata-structuredennis-forbesdisciplineeric-elliotteric-lippertessayfunctional-programminggerald-weinberghaskellhume-loganhunter-thompsoninterviewinterviewingisomorphicjames-coglanjavascriptjeff-atwoodkaizenleadershipleading-by-examplelifeliftlinreclong-term-plansmonadmonad-explanationmotivationmultirecnasapersonal-improvementplanningpoliticspsychologyquadtreerecruitementrecursive-data-structurereginald-braithwaiteshinystephen-toubtailrecteam-leadtestthomas-oppongtreeunitunit-test

Translation from Haskell to JavaScript of selected portions of the best introduction to monads I’ve ever read I’ve read this article by James Coglan, introducing monads. About composability: The symmetry of the argument and return types is what makes these functions composable or symmetric input and output types Guide to basic monadic functions: lift, which converts a ‘simple’ function into a debuggable function bind, which converts a debuggable function into a composable form unit, which converts a simple value into the format required for debugging, by placing it in a container

Books read in 2016Q4

Dec 31, 2016 - 1 minute read - Comments - bookreading2016Q4self-studycodurance

Books I’ve read this quarter1: Books started, not yet finished (WIP): Functional Programming in Scala, by Chiusano and Bjarnason. Doing the exercises with the codurance team Gödel, Escher, Bach: An Eternal Golden Braid, Hofstadter Books I want to finish. Usually come from another quarter: Books that have entered the queue: Non-technical that have entered the queue: La psicología del dinero, Hammond Invirtiendo a largo plazo, García Paramés Quién domina el mundo, Chomsky Homenaje a Cataluña, Orwell El camino al 18J, Payne Cartas desde la revolución bolchevique, Sadoul Shogun: The Life of Tokugawa Ieyasu, Sadler Els jueus i Catalunya, Villatoro Russell en 90 minutos, Strathern El problema de los tres cuerpos, Liu The ending date of the quarter is the same as the publication date [return]

A common misunderstanding about `reduce`

Dec 14, 2016 - 2 minute read - Comments - functional-programmingclojurehaskelljavascriptmisunderstandingreducefoldhigher-order-functionquotemozilla-developer-network

Misconception I’ve read in several places that reduce reduces an array1 of values to a single one. The main characteristic of this function is not to reduce to a ‘smaller element’ / ‘single element’, but to have access to the accumulated results and the elements, one by one. Quoting Mozilla Developer Network’s (MDN) Javascript reference: The reduce() method applies a function against an accumulator and each value of the array (from left-to-right) to reduce it to a single value.

Self-Study in December 2016

Dec 1, 2016 - 5 minute read - Comments - self-study-aggregationdecember2016readalex-williamsanalogyautomationautopilotbob-wisebull-in-a-china-shopbytecode-generationcobra-effectcompanycompany-practicecomplacencycontainercopy-pastecppcurious-geordedebugdecoratordevopsdisable-pastedockerdocker-swarmeurekaflat-hierarchyfunctional-programminghackerhaskellimmutabilityinternet-of-thingsiotjames-sinclairjavajavascriptjoab-jacksonkuberneteslearninglearning-programming-languagemanagementmaria-konnikovamario-brosmatthew-garrettmetaprogrammingmonadmonad-explanationmonitoringnpmnpm-linkobi-wan-kenobiociodeopen-salarypassword-fieldpastepawel-brodzinskiphilippa-warrprogramming-languagepromisepythonreal-worldrequestrubysalarysecuritysimeon-simeonovsinging-in-the-rainsource-codetealteal-organizationtoby-retallicktooltroy-huntusabilityuxvalvewatch-expression

A Docker Fork: Talk of a Split Is Now on the Table I’ve read this article by Alex Williams and Joab Jackson about the possible split in the Docker environment following Docker’s and other providers’ product roadmaps. Each own has their policies and priorities and they collide in this case Tags: docker, alex-williams, joab-jackson, container, oci, kubernetes, devops, tool An Ode to Boring: Creating Open and Stable Container World I’ve read this article by Bob Wise, in which he describes the state of the Docker tool and the Docker Engine.

Self-Study in November 2016

Nov 1, 2016 - 2 minute read - Comments - self-study-aggregationnovember2016readadvicebartosz-milewskicate-hustoncommitcommit-messagedavid-heinemeier-hanssondhhfeaturefunctional-iofunctional-programminghaskelliojohn-cutlermanagementmicrosoftmonadone-on-oneproduct-developmentproduct-managementpsychologyrantrunar-bjarnasonscalaschool-of-haskelltalktaotao-te-chingtim-popetoolvaluevideo

Advice for white men I’ve read this article by Cate Huston about how advice affects different people. But here are some things to consider: Advice on failure is different for people who are judged on performance rather than potential. Advice on saying no is different for people who aren’t appreciated for doing work for the collective… but who are punished if they don’t. Advice on negotiation is different for people who are perceived negatively when they do negotiate.