The long way through Software Craftsmanship

Self-Study in April 2016

Apr 1, 2016 - 8 minute read - Comments - self-study-aggregationapril2016readactionagilealan-schergeralberto-menaanalysisanders-ericssonangel-medinillaannouncementappleapplicationattackautomationautonomyavdi-grimmbonilistabootcampbreachbrian-knappbruce-schneierbrute-forcebuck-herouxbugbug-countburnoutbusinesscareerchangecode-retreatcodingcommentcomparisoncontinuous-learningcontractorcorbett-barrcorporateculturecraftsmanshipdan-luudan-pinkdave-gerhardtdavid-bonilladefectdefect-countdefinitiondeliberate-practicedeploymentdesigndev-bootcampdeveloperdeveloper-bootcampdeveloper-qualitydevelopmentdevopsdillon-forrestdomaindriftdynamically-typedemployeeentrepreneurshipexpertexploitfbifilefilesystemfirsthandfrancho-jovenfranklin-chengarbage-collectiongcgdcrgeniusgeofencegeofencinggitgithubgithub-pagesgogo-memory-modelgolanggrowth-trajectoryhackinghakyllholidayhome-officehugohypothesisimprovementincremental-generationinfographicinnovationintelligencejacob-shriarjavajekylljekyll-3jim-birdjobjob-vs-careerjon-yaujooqjuergen-hoellerjvmkai-weikaizenkent-beckkerrick-longkingkotlinlaboratorylanguagelawlearninglistlong-life-learninglukas-edermalcolm-gladwellmark-maundermartin-fowlermasterymastery-autonomy-purposemetameta-readmichael-ibarramichael-williamsmicroservicemindmossack-fonsecamossack-fonseca-breachmotivationmythnetflixnguyen-dinh-quanoctopressoctopress-2octopress-3officeoraclepassionper-malmenpeppep-20performancepersonal-developmentphil-haackpluginpolicypracticeprocrastinationprocrastinatorproductivityprofessional-developmentprogrammingpurposepythonquadtreequalityquotereactionreactive-programmingread-on-readrefactoringreleaseremoteresiliencerevolution-sliderrisk-appetiteroman-coedorpsrtrees2s3sandjar-kozubaevscratch-refactoringsecurityself-investmentside-projectsocial-mediaspanishspeedspringssgstartupstatic-site-generatorstatically-typedstockphotostorystrategystudentsubcategorysuccesssusanna-bergswizec-tellertalentteam-managementtedted-talktim-urbantime-managementtiptip-and-tricktom-johnsontravistweakuberunlimited-vacationvacationvideovulnerabilitywebappwebcastwordpressworkzaragozazen

Deliberate Practice: What It Is and Why You Need It I’ve read this article by Corbett Barr on what is deliberate practice and why it is needed to become an expert in a given domain field. The four essential components: Motivation Tailored (practice) Feedback Repetion Tags: corbett-barr, deliberate-practice, expert, practice, anders-ericsson, talent, professional-development, career 10 Features I Wish Java Would Steal From the Kotlin Language I’ve read this list of features that the Kotlin Language has that would be an improvement for the Java language.

Books read in 2016Q1

Mar 31, 2016 - 1 minute read - Comments - bookreading2016Q1self-study

Books I’ve read this quarter1: 101 cosas que ya sabes, pero siempre olvidas by Ernie J. Zelinski; in Spanish Structure and Interpretation of Computer Programs by Abelson, Sussman, and Sussman, with the ‘@deAprendices’s reading club’. Blog posts under the tag sicp. Only chapters 1 and 2. Books started, not yet finished (WIP): Building microservices, by Sam Newman, with the ‘@deAprendices’s reading club’. Blog posts under the tag building-microservices Why programmers work at night by Swizec Teller Readings in Database Systems, 5th Edition by Peter Bailis, Joseph M.

Self-Study in March 2016

Mar 2, 2016 - 7 minute read - Comments - self-study-aggregationmarch2016readabstract-data-structureadoptionadtagileambitionanalogyanalysisautomationbecodeweekbemben-orensteinbenedict-fritzblogbook-comparisonbook-reviewburnoutcapacitychristopher-buiclean-codecodecationcodingcodurancecohesioncoman-hamiltoncomparisoncontinuation-stylecraftsmancraftsmanshipcsscss-architecturecss-methodologyculturedaniel-irvinedeath-marchdeductive-learningdeep-workdeliberate-practicedeploydesigndesign-level-cohesiondesign-problemdesk-surfingdetaildevopsdlc-cohesiondomain-specific-languagedslduncan-stuartedward-yourdonessayestjetsyexclusive-orexperienceexperience-reportfeminismfibonaccifragile-test-problemfullstackgarbage-collectiongiving-up-tddgroup-belongingheinz-kabutzhireholidayhypothesisiain-taitian-sommervilleimplementation-patternsimprovementin-companyinductive-learninginternalizinginterviewintpintroductionivan-fraixedesjamis-buckjavajaxenterjemima-kissjessica-livingstonjobjoe-richardsonjohn-allspawjohn-rawlsjoseandreslabellambdalarry-constantinelawlaw-of-ruthless-prioritizationlazinesslearn-to-programlearninglearning-cyclelearning-processlistmachine-learningmagic-bullet-problemmagical-thinkingmanagementmartin-fowlermaturity-levelmetametaphormotivationmyers-briggs-typenon-strictnessoctopressoffice-cultureonboardingpaul-grahamperfectionpersonalpet-projectplaipomodoroproblemprocessprocess-theoryproduct-managementproduct-strategyproductivityprogramming-languagepsychologyq-and-aquotereactive-programmingred-black-treerefactoringresponserich-mironovrobert-martinrobin-rendlerubysandro-mancusosarah-tavelsassschemeshallow-workshippingshriram-krishnamurthisimplificationslacksmc-cohesionsoftware-designsoftware-economicsspamspammerstorystrictnesstddteachingteamteam-managementteammateteamworktechniquetestable-design-problemtime-managementtip-and-tricktnstaafltype-soundnessuncle-bobuser-experiencevacationveil-of-ignorancevincent-partingtonvlogwarfarewolfgang-goerlichworky-combinatorycyeray-darias

Learning Programming Isn’t That Hard, Deep Work Is Hard I’ve read this article by Benedict Fritz on two types of work (i.e., deep and shallow) and how programming is of the deep type. He links the difficulty of learning to program to the difficulty of practicing deep work. Tags: analogy, benedict-fritz, deep-work, shallow-work, learn-to-program, psychology BeCodeWeek by Yeray Darias I’ve read this category of posts by Yeray Darias about his BeCodeWeek, a desk-surfing experience at BeCode.

Tip: using tortoise credentials in git CLI

Mar 2, 2016 - 1 minute read - Comments - githow-totipclitortoisegit

TortoiseGit part Go to a repo right button, Settings Git -> Credential Add a creadential Config type: global Helper: wincred Sync once using your HTTPS password CLI part Open the $REPO/.git/config and add [credential] helper = wincred Remote git operations should not ask for credentials anymore

Kata formulation: Find the comments

Mar 1, 2016 - 2 minute read - Comments - kataformulationphpcommentexercise

Little Johnny is inspecting a PHP source code that contains comments. These comments contains words that he doesn’t understand, as it written in another language. Rules and constraints The source code in the PHP files does not need to be correct. A comment (a subset of PHP comments) is defined as: A line containing C-style comment delimiter, except when it is within a string // hello C-style is a valid comment echo "//"; is not a comment echo '//'; is not a comment A line containing Perl-style comment delimiter, except when it is within a string # hello Perl-style is a valid comment echo "#"; is not a comment echo '#'; is not a comment There are no multi-line comments /* .

Two persons involved in a git commit, in github

Feb 14, 2016 - 3 minute read - Comments - gitpair-programminggithubhow-totipcommitterauthor

On git You can have multiple persons involved in a single git commit: an author and a committer. The difference is explained by Manuel Doninger 1: The author is the one who did the code change. The committer is the person who committed that change to a repository. an example, by the same author: Example: I’m not a committer in the EGit project, so i have no rights to push directly to the EGit repository at Eclipse.