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

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

3. Startup Engineering
Balaji S. Srinivasan and Vijay S. Pande
Learn the engineering skills needed to build a technology startup from the ground up.

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.

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.

5 Google Tools to improve your website.

Here are some useful tools from Google that will help you to improve your website.

First start with analyzing your website traffic with Google Analytics.

Google Analytics

Make your website faster with Google PageSpeed Insights. This tools gives you a detailed report about your website with recommendations about how to increase your website performance.

PageSpeed Insights

Investigate your site with Google Keyword.

Google Keyword

What is your Pagerank?

Google Pagerank

Investigate search terms with Google Trends

Google Trends

Latest Trends in Scrum

I started a discussion about trends and new ideas in Scrum in the “Scrum Practitioners” group on LinkedIn.

scrum1 scrum2 scrum3

Please add your comments or ideas to the “Scrum Practitioners” group on Linkedin or leave a reply on this Blog page.

For a direct link to the discussion press here (You have to be a Linkedin  “Scrum Practitioners” group member to join the discussion).


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: