The long way through Software Craftsmanship

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

Take conscious decisions in your life. Be aware of your actions and their effect. Do not blush or be embarrased for changing your opinions. Say “I’m sorry” when required. Listen. Do not be a hotshot. Have integrity and self-respect.

Recommends these books:

  • Dealers of Lightning by Michael A. Hiltzik
  • Revolution in the Valley by Andy Hertzfeld
  • The Cathedral and the Bazaar by Eric S. Raymond
  • The Success of Open Source by Steven Weber
  • The Old New Thing by Raymond Chen
  • The Mythical Man Month by Frederick P. Brooks Jr.
  • Peopleware by Tom DeMarco and Tim Lister
  • The Psychology of Software Programming by Gerald M. Weinberg
  • Facts and Fallacies of Software Engineering by Robert L. Glass
  • The Design of Everyday Things by Don Norman
  • Agile!: The Good, the Hype and the Ugly by Bertrand Meyer
  • Rework by Jason Fried and David Heinemeier Hansson
  • Geekonomics by David Rice

Tags: adrian-kosmaczewski, career, profession, age, galaxy, long-term, book

Firing people

I’ve read this article by Zach Holman on firing people at your current work, both from the perspective of the employee (fired), employer, coworker.

Also explains his personal experience of being fired from Github.

You’ll know the difference between doing far and away your best work, and doing work that is still good, but just nominally better than what you’ve been doing. Once you catch yourself adjusting to that incremental progression… maybe it’s time to leave, to change things up

Tags: zach-holman, github, team-management, firing, coworker, employee, employer, job, relationship, next

10 design principles — for developers

I’ve read this article that explains what are the 10 design principles for programmers, as outlined by Jakob Nielsen. The article itself is by Nir Benita

Tags: design-principle, ux, jakob-nielsen, nir-benita, usability, testing, list

Design Patterns — Coming Full Circle, Part Two

I’ve read this article that explains how design patterns can be observed and then discovered and shows a list of four patterns dot working with data, by flux.io. Article by Jen Carlile

Tags: design-pattern, data, pattern, flux, flux-io, pattern-catalog, jen-carlile

Why I’m Ending my Github Streak after 844 Days

I’ve read this article by Karan Goel on the mechanics of following a pattern, of an activity sliced in small parts (1 problem a day or half an hour) and how this can be counterproductive sometimes.

Discusses ROI of this type of activity at the beginning of your career and later.

Tags: karan-goel, github, streak, python, code, everyday, practice, deliberate-practice, career, career-management

Good lessons learned from past jobs

I’ve read this article by Diego ‘Kartones’ on a synopsis of his work experience, job by job and what he has learned on each job.

Tags: diego-kartones, job, professional-career, career

Too Much Work In Progress

I’ve read this article by Samir Talwar on factors that indicate work in progress.

Tags: wip, work-in-progress, list, samir-talwar

TestDouble

I’ve read this article by Martin Fowler describing the test doubles that Gerard Meszaros describes in xUnit Test Patterns.

Tags: test-double, martin-fowler, gerard-meszaros, stub, fake, mock, dummy, spy, xunit, junit, pattern, test-pattern

Scaling to 12 Million Concurrent Connections: How MigratoryData Did It

I’ve read this article by Mihai Rotaru on how MigratoryData scaled to 12 million concurrent connections in a 1U server. They explain what optimizations they did in order to achieve this.

Tags: migratorydata, mihai-rotaru, concurrent-connection, 1u-server, scalability, websocket

Do what you love

I’ve read this article by Jorge Diaz on doing what takes you out of your comfort zone, changing careers, and life-work in general.

Cites this TED talk: How to find work you love

Tags: jorge-diaz, work, life, career, comfort-zone, scott-dinsmore, career-management

JHipster - The best way to breed a new app

I’ve read these slides by Ola Petersson, where he describes the architecture and contents of the jHipster, its pros and cons.

Tags: jhipster, ola petersson, java, code-generation, code-generator, microservice

How going to coding events helped me get an awesome job

I’ve read this article by Gwendolyn Faraday on how to kickstart a career in web development, attending events, pairing and networking. That netted her some interviews to start programming for a living.

Tags: networking, gwendolyn-faraday, event, job, learn-to-code

Maze Generation: Algorithm Recap

I’ve read this list of maze-generation algorithms by Jamis Buck. Including:

  • recursive backtracker
  • Eller’s algorithm
  • Kruskal’s algorithm
  • Prim’s algorithm
  • recursive division algorithm
  • Aldous-Broder algorithm
  • Wilson’s algorithm
  • Hunt-and-Kill algorithm
  • Growing Tree algorithm
  • Binary Tree algorithm
  • Sidewinder algorithm

Tags: recursive-backtracker,eller-algorithm,kruskal-algorithm,prim-algorithm,recursive-division-algorithm,aldous-broder-algorithm,wilson-algorithm,hunt-and-kill-algorithm,growing-tree-algorithm,binary-tree-algorithm,sidewinder-algorithm, jamis-buck, maze, maze-generation, algorithm, list

The Poverty of Constraints

I’ve read this article by Jamis Buck on interpreting two Korean proverbs in the world of software:

  • A dutiful son comes from a poor home
  • A poor house has many children

Tags: proverb, korea, philosophy, software, constraint, jamis-buck

Quote: Characterization tests Self-Study in June 2016