Resources

 8 Ways to Become a Better Coder

That’s an easy career improvement goal to give oneself, but “become a kick-ass programmer” is not a simple goal. For one thing, saying, “I want to get better” assumes that you recognize what “better” looks like. Plus, too many people aim for improvement without any sense of how to get there.

Improve Tips

Mar 1 2016

 Core Design Principles for Software Developers by Venkat Subramaniam

Writing code is easy. Writing good quality code is an entirely different story. How can we measure the quality of design? How do we know we're doing the right set of things that will lead us to a better design? In this session, we will learn about some core software design principles that help programmers every day. Instead of talking about theory and what we could potentially do, we will take on multiple examples, discuss the solution, pros and cons, and bring out key design principles that have an impact on the outcome.

Architecture Design Video

Feb 14 2016

 Introduction to Algorithms

MIT 6.006, Fall 2011 This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming and introduces basic performance measures and analysis techniques for these problems.

Algorithms Course MIT Playlist Video

Jan 16 2016