Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman
Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman
Hi all,
Today I want share with you my notes after read the following book:
Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman.
Preface
- Kent Back
- Tektronix Company
- Smalltalk programming language
- Agile Programming
Introduction
- Lady Isabel Burton
- Stickyminds.com
- Software Craftmanship
- Developer Chris Morris blog
- Pat Metheny guitar
- Dave blog - redsquirrel.com
- Laurent Bossavit
- Darragh Farrel
- Kraig Parkinson
- Pattern Languages of Programs - hillside.net/plop/1
- Język wzorców. Miasta, budynki, konstrukcja - Christopher Alexander book
- Edventions Company
- Risetime Technologies Company
- Object Mentor Company
- ThoughWorks Company
- XP France conference
- Martin Fowler
- Obtiva Company
- C2 Wiki
- Extreme Tuesday Club
- OmniGraffle diagrams
- Graphviz diagrams
Software Craftmanship Manifesto
Chapter 1: Introduction
- Perl programming language
- Basic programming language
- Apple IIe computer
- Java Applets
- Perl. Programming. book
- Extreme Programming - XP
- Agile Development
- Bob Martin
- Kent Beck
- Refactorisation to Project Patterns - Joshua Kerievsky book
- Programowanie zorientowane obiektowo book
- Jezyk wzorców. Miasta, budynki, konstrukcja - Christopher Alexander book
- Ruby programming language
- Ruby on Rails framework
- Carol Dweck - Growth Mindset
- Wewnetrzne poczucie umiejscowienia kontroli book
- Etienne Wenger - Expert in Earshot pattern (Paul and Elixir language)
- Software Craftmanship: The New Imperative - Pete McBreen book
- Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku. book
- Refaktoryzacja. Ulepszanie struktury istniejącego kodu - Martin Fowler book
Chapter 2: Empty the cup
Your first language
- Ruby - irb console
- Ruby on Rails Framework - script/console
- Erlang - erb
- Firefox - Firebug
- TDD - Test Driven Development
- Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku - Ralph Johnson book
- Effective Perl Programming book
- Java. Efektywne programowanie book
- C++. 50 efektywnych sposobów na udoskonalenie Twoich programów book
- The shape of your mind - Eric Merritt blog
- Pragmatic Programmer: From Journeyman to Master - Dave Thomas, Andy Hunt book
- Muench method
- Schwartz transformation
- Duff mechanism
The White belt
- Mastery: The Keys to Success and Long-Term Fulfillment - George Leonard book
- Psychology Abraham Maslow
- Ashleigh Montagu
- Michael Feathers developer
- Praca z zastanym kodem. Najlepsze techniki book
- Becoming a Technical Leader - Jerry Weinberg book
Release your enthusiasm
- Mądrość tłumu. Większość ma rację w ekonomii, biznesie i polityce - James Surowiecki book
- Collective Mind in Organizations - Karl Weick and Karlene Roberts book
Specific skills
- Hibernate framework
- Struts framework
- TODO: Review jour CV regularly to create list of your strong skills
Admit your ignorance
- My Apparenticeship at Object Mentor - Jake Scruggs book
Face your ignorance
- O stawaniu się osobą. Poglądy terapeuty na psychologię - Carl Rogers book
Deep water
- So you want to be a Software Consultant? - Christopher Hawkins book
Withdraw into competence
- Zen i sztuka obsługi motocykla - Robert Pirsig book
Charter 3: Walking along a long way
Long way
- http://perlmonks.org
- com.lang.perl.*
- Extreme Programming Installed - Ron Jeffries book
- Donald Knuth
- Linus Torvalds
- Moore Law
Craftsmanship over art
- Art and Computer Programming - Richard Stallman
Solid motivation
- The Psychology of Computer Programming - Jerry Weinberg book
- Hakerzy i malarze. Wielkie idee ery komputerów - Paul Graham book
- More Secrets of Consulting: The Consultant’s Tool Kit - Jerry Weinberg book
Cherish your passions
- Mityczny osobomiesiąc. Eseje o inżynierii oprogramowania - Frederick Brooks book
- Great Hackers presentation
- 0SCON - O’Reilly 0pen Source Convention
- Knowledge Hydrant pattern
- A Pattern Language for Study Groups - Joshua Kerievsky publication
Draw your own map
Use your title
Stay in the trenches
Another way
- Duży mały poradnik życia - H. Jackson Brown Jr. book
- The Peopleware Papers: Notes on the Human Side of Software - Larry Constantine book
Summary
Chapter 4: Proper self-esteem
Be the worst
Find mentors
Soul mates
- Extreme Programming Explained: Embrance Change book
- Refaktoryzacja. Ulepszanie struktury istniejącego kodu book
- Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku book
- Czynnik ludzki. Skuteczne przedsięwzięcia i wydajne zespoły book
Friendship
- Pair Programming
- TDD
- Ping-Pong Programming
- Etyka dobrej roboty - Richard Sennet book
Remember the floor
Chapter 5: Constant learning
- Nauka w czasach wojny - Brzemię chwały - C.S. Lewis book
- Developer Andy Hunt
Increase your bandwidth
- Agile Software Development Ecosystem - Jim Highsmith book
- Tim O’Reilly - Watching the “Alpha Geeks” OS X and the Next Big Think
- GoogleTechTalks
- Perl Programming Language
- http://perlmonks.org/
- Extreme Programming Explained: Embrance Change - Kent Beck book
- Ruby on Rails framework
- Obtiva company
- Obtiva Software Studio department
Practice Practice Practice
- Perełki oprogramowania book
- Więcej perełek oprogramowania book
- Wyznania programisty book
- Etudes for Programmers book
Toys to break
- Shortest Wiki Contest
- Simple game, blogging tool, IRC client in each new programming language
- Wiki system from scratch
Use the source
- Programmers at work - Bill Gates book
- Linus Torwalds blog
- Daniel J. Bernstein blog
- Task: review open source version control code, ex. git
Be reflective when working
- Project Retrospectives: A handbook for Teams Reviews - Norm Kerth book
- Personal Practices Map
Write down what you are learning
- Lepiej. Zapiski chirurga o efektywności medycyny - Atul Gawande book
Share what you learn
- The Creative Habit: Learn It and Use It for Life - Twyla Tharp bookm
Create loops of feedback
- Dave Winer - What is Stop Energy?
Learn how you fail
Summary
- The Five Orders of Ignorance - Philip Armour book
Chapter 6: construct your learning program
- Zen i sztuka obsługi motocykla - Robert Pirsig book
- Jerry Weinberg
- Fred Brooks
- Steve McConnell
- Kent Beck
Reading list
- A school Is a Lousy Place to Learn Anything In - Howard S. Becker
- http://bookshelves.org/
- 35 chapter from book: Kod doskonały. Jak tworzyć oprogramowanie pozbawione błędów book
- Pragmatic Programmer: From Journeyman to Master - Dave Thomas, Andy Hunt book
- Book chain - Ravi Mohan
- Sequential Study from: Pattern Language for Study Groups - Joshua Kerievsky
- Refaktoryzacja. Ulepszanie struktury istniejącego kodu book
- Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku.
- TODO: Create file with reading list, put there currently reading list and update it regularly
Constantly read
- Kod doskonały. Jak tworzyć oprogramowanie pozbawione błędów. - Steve McConnell book
- Put books over blogs
Study the classics
- Joshua Kerievsky - Knowledge Hydrant: A Pattern Language for Study Groups
- The Psychology of Computer Programming book
Dig deeper
- Steven S. Sukienka - The Algorithm Design Manual
- Roy Fielding - REST thesis
- Steve Vinoski - RPC
Familiar tools
- Eric Hoffer - Reflections on the Human Condition
Chapter 7: Conclusions
- Etyka dobrej roboty - Richard Sennet book
- Kruger - Dunning effect
It is everything that I have for today.
Everyone is a blacksmith of own fate.
Mateusz.
This post is licensed under CC BY 4.0 by the author.