Life long learning

The philosophy of a Software Craftsman

Who am I?

Jørn Ølmheim, GBS IT SUB Well Planning and Integrity

  • More than 20 years experience
  • Software craftsman
  • Polyglot programmer
  • Data and Solution Architect Drilling & Well (EITA)

Introducing the Cultured Developer


Techniques and methodologies

97 Things every programmer should know Pragmatic Programmer Domain Driven Design Agile TDD Scrum Lean Lean Design IT! Design Thinking Reactive Programming


Patterns and Architecture

Design Patterns Analysis Patterns Refactoring Enterprise Integration Enterprise Architecture Systems Thinking Software Architecture in Practice Just Enough Software Architecture Software Arcitecture for Developers


Programming Languages

Clojure Scala Java C C++ Javascript HTML5 CSS Ruby Python Elixir Elm



Node.js React.js Angular.js Play framework Rails Django Flask


Cloud platforms

Microsoft Azure Amazon AWS Google Compute Cloud IBM Cloud

Machine learning

TensorFlow PyTorch theano Keras


  • Pragmatic
  • Open
  • Dedicated
  • Deliberate
  • Curious

Always learning new things!

How do I become a Cultured Developer?

The Dreyfus model

of skill acquisition

Continuous, deliberate process

Sheep dip training doesn't work

Alien, toxic
and temporary

Collaborative Learning


... and keep up to date!