Skip to content

tombasche/professional-development

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 

Repository files navigation

A curated selection of software development resources

The following list is by no means exhaustive, and I've tried to keep it as objective as possible. Pull requests are welcome, as is discussion in the form of issues. Suggestions, problems, feedback is also welcome.

Name Description Level
Coursera Massive Open Online Course (MOOC) provider All levels
O'Reilly Online Subscription-based online book provider. Contains entire O'Reilly catalogue and more. All levels
Udemy Massive Open Online Course (MOOC) provider All levels
MIT Open Courseware Free course material provided by Massachusetts Institute of Technology. Intermediate - Advanced
acloud guru Subscription-based cloud service training platform. Covers AWS mainly, but also Azure and GCP. Also includes the entire Linux Academy catalogue. All levels
Execute Program Subscription-based spaced repetition learning platform. Web development heavy, with a bit on SQL. Beginner - Intermediate
Udacity Online 'nano-degrees' All levels
Complexity Explorer Free deep dives into technical topics ranging from mathematics, machine learning, computer science etc. All levels
Lynda / LinkedIn Learning Wide range of online software development courses provided by LinkedIn All levels
Pluralsight Massive Open Online Course (MOOC) provider All levels
Codecademy Online interactive courses to learn to code and different languages / frameworks. Beginner
Skillshare Massive Open Online Course (MOOC) provider. Provides Web Development courses. Beginner - Intermediate
FreeCodeCamp Free (non-profit) online learning platform with interactive lessions and certifications Beginner
LeetCode Interactive computer science interview questions platform. Typical FAANG interview questions. All levels
GameDev.tv Online videos and courses for game development and art in Unity, Unreal, Godot, Blender etc. All levels

Standalone courses

Name Description Level
Writing an Interpreter in Go A test-driven development (TDD) focussed approach to writing an interpreted programming language purely in Go. All levels
DevOps with Docker Free online Docker course provided by the University of Helsinki Beginner
FlexBox Froggy Interactive gamified way to learn CSS flexbox Beginner - Intermediate
Vimtutor A tutorial for Vim that comes with the commandline text editor. Accessed with the vimtutor command in the terminal. Beginner
Crafting Interpreters An online guide on creating an interpreter for a new programming language, in Java. All levels
Design of Computer Programs Free course on designing solutions in Python, using Peter Norvig's problem-solving techniques and clean coding style. By Peter Norvig & Udacity All levels
Epic React A series of courses on advanced React concepts, covering testing and architecting of React applications as well as user experience. Courses by Kent C. Dodds Intermediate, Advanced

Conferences

Name Description Level
GOTO Conference Talks Recorded talks from the GOTO conference. All levels
YOW! Online Australian conference talks with workshops and Q&A sessions All levels

Sites and blogs

Name Description Level
Refactoring Guru A free and comprehensive guide to design patterns, refactorings and code smells. Intermediate - Advanced
Game Programming Patterns Robert Nystrom's guide to applying design patterns in games. Could also apply to a lot of systems programming. Intermediate - Advanced

Books

Name Author Description Level
Accelerate: The Science of Lean software and Devops Nicole Forsgren (Phd), Jez Humble and Gene Kim A research-based book describing the application of technology and Devops principles to building an organisation. Intermediate+
Test Driven Development By Example Kent Beck A straight-forward introduction to Test Driven Development (TDD) using various examples in both Java and Python. Discusses best practices and the 'greatest hits' of TDD. All levels
Clean Architecture Robert C. Martin (Uncle Bob) A primer on the SOLID software engineering principles, software structure, discussions on cohesion and coupling in software components. Java examples, mainly focusses on the object-oriented paradigm but very easily translatable into others. All levels
If Hemingway Wrote Javascript Angus Croll Very tongue-in-cheek recommendation, but a great read for those interested in the art of reading code as prose. Quite funny too. Intermediate+
The Art of Leadership: Small things done well Michael Lopp Lots of great lessons to be learnt on leadership from all levels, from manager to director to executive, all told through the lense of a Silicon Valley veteran All levels
The Design of Everyday Things Don Norman A great introduction into good design principles and usability. It's an entertaining read and a must-have for anyone producing anything which is used by people All levels
Designing Data-Intensive Applications Martin Kleppmann A good high-level overview of data-centric application design and the benefits, pitfalls of various technologies All levels
The DevOps Handbook Kim, Humble, Debois & Willis A thorough introduction into the principles of DevOps and how and organisation can use them to increase competitiveness, quality and reliability of software. Loads of examples from Etsy, Google, Facebook etc. All levels
The Phoenix Project Gene Kim A novel about a company with a failing Enterprise IT division and how the ideas of DevOps, Agility / Lean are applied gradually to bring the company back into profitability. Humourous and at times feels very real! All levels
The Pragmatic Programmer David Thomas & Andrew Hunt Illustrates the best approaches and major pitfalls of many different aspects of software development. All levels
Refactoring: Improving the Design of Existing Code Martin Fowler Explains what refactoring is; why you should refactor; how to recognize code that needs refactoring; and how to actually do it successfully, no matter what language you use. All levels
Working Effectively with Legacy Code Michael C. Feathers This book provides programmers with the ability to cost effectively handle common legacy code problems without having to go through the hugely expensive task of rewriting all existing code All levels
The (Delicate) Art of Bureaucracy Mark Schwartz Discusses bureaucratic process within technology firms and divisions with respect to changing it to match DevOps and Agile principles. Discusses 'Digital Transformation' within bureaucratic systems. All levels
Release it! Michael T. Nygard A very in-depth technical book on how to write the most robust production-hardy systems. Goes in depth for all levels of the stack (from networking to containers to exception-handling). Contains many great anecdotes as well. Intermediate
Fundamentals of Software Architecture Mark Richards & Neal Ford A good primer into the different kinds of software architecture (e.g. Monoliths, microservices, service-oriented) which touches on the pro's and con's of each. Discusses not only the technical aspects but how an "architect" communicates and leads to express these concepts. Intermediate+

About

A curated selection of software development resources

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •