DEV Community

Cover image for Standing on the Shoulders of Giants: the Articles and Resources that have Shaped my Career.
Michael Landry
Michael Landry

Posted on

Standing on the Shoulders of Giants: the Articles and Resources that have Shaped my Career.

I am sharing this list of articles, videos and books as the topics covered are critical to any developer. These are the articles I found looking for answers when I needed them; there may different or better works covering the same ideas that we all find on our journey, but these were what I found when I needed them, and they have molded my ideas on software engineering. As a writer and one who wants to give back to the community, I also found that creating this post solves two problems: it helps me consolidate all of the critical but not obvious knowledge about the profession, and it helps me identify the major gaps of knowledge that needs to be penned to paper, and while I can certainly provide my take on all of these critical issues, I don't think that I can do it better than what has already been authored, and I really want to focus my efforts on high impact topics with little exposure. I'll probably periodically update it as they come to me.

With that intro out of the way, here is the list, and my thoughts on their importance.

Software Development Lifecycle

No excuse not to read it if you have not done so yet. It's only 413 characters and it can fit in 2 tweets. It really helps to frame what Scrum tries to do, and understanding the Agile Manifesto makes seeing Scrum for what it is, a logical yet somewhat simple tool for reliably building software

The original Encypcopedia of SDLC antipatterns. What is striking is that these antipatterns are really not obviously antipatterns, illustrated by the fact that these practices continue to scourge software projects still today. A reading of this book brings with it an understanding that the hectic, panicked, and chaotic ambience of the project is a pretty typical experience. The reader would also possess the ability to pinpoint the particular practices that enivitably bring about the failures.

If you don't know who Jeff Atwood is, you should. His articles are a treasure trove of software-people intersections. We who also practice Clipboard-Driven-Development (CDD) also owe him a debt of gratitute for https://stackoverflow.com/. 😉

Cynical yes, but quite on point.

Programming

Provocative but well thought out. It is also a reminder to listen to that alarm going off in your head when you find yourself disagreeing with the sacred idols of the industry.

Key ideas when comparing Java to other languages. The article has aged well having watched all of the new versions of Java doing everything in their power to ship out functional features without having to conjure up some intermediary class to house it.

May want to toss in Principle of Least Suprise as well

Data structure and Algorithm training. Aside from the obvious Crack the Coding Interview , Neetcode has provided the absolute best resource for it,

Functional programming

Versioning and build pipelines

I don't actually condone the suggestions in this article, nor does the author anymore for that matter, but the majority of the software industry still reveres these concepts, thus making it extremely important reference material

Top comments (0)