What I Wish They Told Me - Part 1 of 2 - Odin Holmes - code::dive 2018

preview_player
Показать описание
Coming into software from an electronic engineering background I found that an overarching grand theory is missing in this domain. In EE we have the Maxwell equations as well as a few other fundamentals which everything builds on. Although to this day I do not claim to fully understand these equations, and my impression is that essentially no one understands their implications fully, they serve as a structure with which one can organize all the knowledge which one gains along the way.

In software, I felt more like I was presented with a giant grab bag of piecemeal knowledge and experience, much of which contradicts each other and most of which is outdated in some way. This often led me to question what "good" code is and if my code was "good" while lacking the tools to reason about it in a first principal manor. How should a beginner critique a piece of code which functions as expected? Surely there is still room for improvement.

Although I am no Maxwell or Faraday and cannot produce an overarching theory myself I would like to share with you the observation which I have made over my career which helps me categorize and reason about the quality and applicability of the giant grab bag of information which we call software engineering practices. From reasoning about the performance of code to patterns which increase the probability of correctness as well as questions like "what is architecture really?". I will do my best to efficiently dump my brain onto slides and hope to provide structure in the minds of beginner and intermediate programmers.

Рекомендации по теме