Save 37% off PRO during our Black Friday Sale! »

The Postmodern Programmer

The Postmodern Programmer

Slides from Keynote delivered at PyCon India 2016.
Video: https://www.youtube.com/watch?v=h03mHfS7UI0

8aa4490274249db8981283bdadb2ec2b?s=128

Baishampayan Ghose

September 24, 2016
Tweet

Transcript

  1. The Postmodern Programmer {Baishampayan "BG" Ghose} {PyCon India 2016} {24

    Sep 2016} # PyCon India 2016, New Delhi 1
  2. post.mo.dern n. beyond modern. This talk is about transcending our

    mindset, about developing a better understanding of the world we are trying to model. # PyCon India 2016, New Delhi 2
  3. About me Software Artisan Python ca. 2001-02 Been through a

    lot since then Here to share some life lessons # PyCon India 2016, New Delhi 3
  4. Let's start with a fable Or, an autobiographical analogy This

    is a work of fiction. Names, characters, places and incidents either are products of the author's imagination or are used fictitiously. Any resemblance to actual events or locales or persons, living or dead, is entirely coincidental. # PyCon India 2016, New Delhi 4
  5. As a child, I wanted to be a builder -

    Bridges - Houses - Factories - Ports # PyCon India 2016, New Delhi 5
  6. Upon closer inspection I saw bricks and mortar That seemed

    to be it! # PyCon India 2016, New Delhi 6
  7. Learning to lay bricks I became a brick layer Concrete,

    bricks and some plaster # PyCon India 2016, New Delhi 7
  8. I was a practitioner Concrete mixing champ Fancy brick designer

    Wall erector of the year Small housing pro I was having fun # PyCon India 2016, New Delhi 8
  9. I spent a long time doing this... but never got

    to build a bridge # PyCon India 2016, New Delhi 9
  10. Years later, epiphany struck me I could see the big

    picture A bridge is ultimately a load- bearing structure It's about Physics! # PyCon India 2016, New Delhi 10
  11. Onwards, ahoy! I went on to study Civil Engineering, Architecture,

    Mechanics I finally did what I had wanted to do I built bridges # PyCon India 2016, New Delhi 11
  12. As programmers, we are like that brick layer Wanting to

    build the large Yet stuck in the small # PyCon India 2016, New Delhi 12
  13. Programming languages distort reality It shows us an idealized view

    of the world There is only 1 thread There is only 1 computer Computers never fail Lightening strikes don't happen # PyCon India 2016, New Delhi 13
  14. The world is not a program, it's a system... and

    it's distributed # PyCon India 2016, New Delhi 14
  15. A distributed system is one in which the failure of

    a computer you didn't even know existed can render your own computer unusable. — Leslie Lamport # PyCon India 2016, New Delhi 15
  16. What is a (distributed) system? A group of services that

    work together Distributed, with no global supervisors Connected, somehow # PyCon India 2016, New Delhi 16
  17. Santa Claus is not real The network is not reliable

    CAP Theorem Coordination Problems Clocks and Time Byzantine Generals # PyCon India 2016, New Delhi 17
  18. Building systems, some lessons Don't distribute Avoid failure Accept failure

    Redundancy # PyCon India 2016, New Delhi 18
  19. Building systems, some lessons (contd.) Divide and conquer Avoid coordination

    Embrace immutability Backpressure Backup! # PyCon India 2016, New Delhi 19
  20. Programming languages are like bricks Tackle problem at a micro

    level Unaware of higher level concerns # PyCon India 2016, New Delhi 20
  21. But we need better bricks too! We could do with

    much better building blocks Key ideas, like the arch can be game-changers # PyCon India 2016, New Delhi 21
  22. Towards better bricks Immutable data-structures Functional Programming Specifications, Formal Proofs

    Generative Testing Better state management Better concurrency # PyCon India 2016, New Delhi 22
  23. We are an empowered bunch We know how to build!

    We need to get out of our comfort zones We need to build better systems We need to shift our perspective # PyCon India 2016, New Delhi 23
  24. Now, the time is. — Yoda # PyCon India 2016,

    New Delhi 24
  25. Thanks! @ghoseb # PyCon India 2016, New Delhi 25