5 Software Development Courses You Must Follow Online

5 Software Development Courses You Must Follow Online

1. Algorithms, Part I & II
Kevin Wayne and Robert Sedgewick (Princeton University)
Learn the basics that every programmer needs to know about algorithms and data structures
https://www.coursera.org/course/algs4partI
https://www.coursera.org/course/algs4partII

2. Learn to Program: Crafting Quality Code
Jennifer Campbell and Paul Gries (University of Toronto)
Learn to write quality code that runs correctly and efficiently. Design, code and validate your software
https://www.coursera.org/course/programming2

3. Startup Engineering
Balaji S. Srinivasan and Vijay S. Pande
Learn the engineering skills needed to build a technology startup from the ground up.
https://www.coursera.org/course/startup

4. Design of Computer Programs
Peter Norvig (Director of Research at Google)
Learn new concepts, patterns, and methods that will expand your programming abilities, helping move you from a novice to an expert programmer.
https://www.udacity.com/course/cs212

5.Pattern-Oriented Software Architectures for Concurrent and Networked Software
Douglas C. Schmidt (Vanderbilt University)
Learn how you can apply patterns, pattern languages, and frameworks to alleviate the complexity of developing concurrent and networked software.
https://www.coursera.org/course/posa


Manifesto for Software Craftsmanship

As aspiring Software Craftsmen we are raising the bar of professional software development by practicing it and helping others learn the craft. Through this work we have come to value:

Not only working software,
but also well-crafted software

Not only responding to change,
but also steadily adding value

Not only individuals and interactions,
but also a community of professionals

Not only customer collaboration,
but also productive partnerships

That is, in pursuit of the items on the left we have found the items on the right to be indispensable. (http://manifesto.softwarecraftsmanship.org/)

Click here to join my Software Craftsmanship on Linkedin

 

Interview with Bjarne Stroustrup

As a follow up on my previous post about C++11, I would like to share an interview with the creator of the C++ programming language.

Bjarne discusses how C++ can help improve the reliability, maintainability, and performance of software.  He also describes features that are part of the latest versions of the C++ language.

For the latest info, please visit: http://www.stroustrup.com/

Here are some great C++ books: