Dedication, Drive, Excellence and Passion

For the past few years my wife and I decided to stop wasting time watching TV. It seems like the content of programs is quite weak and depending on the time the show is aired, the number of commercials increases to the point that a half hour program is aired in one hour. We used to make fun of commercials from cable networks that boasted the feature of being able to watch a program while simultaneously recording other three shows. Continue reading “Dedication, Drive, Excellence and Passion”

Test Driven Development – TDD

I was about to continue the design and implementation of the single link queue using C++ and decided to write this blog to illustrate the TDD process that I follow when developing code. The initial architecture and design phases have already passed. I am now facing the design, implementation and testing of some methods that could be used around the implementation of dequeue (remove) the next element in a FIFO (First In First Out) fashion.

Please note that I am using C++ and the Visual Studio 2013 IDE running on a Windows 10 platform. Continue reading “Test Driven Development – TDD”

The Feynman Technique

I would like to open this post by mentioning that it is classified under the Computer Science category. In actuality, the technique applies to any time an individual wishes to learn something new, improve your understanding of a subject / topic or to prepare for an exam.

To give the technique validity, we first need to know who Richard Feynman was. Continue reading “The Feynman Technique”

SOLID

In computer science, SOLID (Single-responsibility principle, Open-closed principle, Liskov substitution principle, Interface-segregation principle and Dependency-inversion principle) is a mnemonic acronym introduced by Michael Feathers for the “first five principles” named by Robert C. Martin in 2003 that stands for five basic principles of object-oriented programming and design. Continue reading “SOLID”

Unit Testing

apple_pieI will provide additional details on this question towards the end of this blog entry. That said; write a piece of code that would perform the following task:

Using a counter from 0 to 50 print the word “Apple” when the counter is divisible by 3. Print the word “Pie” when the counter is divisible by 7. Print the words “Apple Pie” when the counter is divisible by 3 and 7. Continue reading “Unit Testing”

Coding Exercise

cubeEarlier this week I was talking with a colleague about sites that are becoming quite popular with software developers (e.g., HackerRank https://www.hackerrank.com). The format is quite similar between sites. A problem is described. You need to write correct code to solve it.

All have a window in which you can write the necessary code. Most of the constraints for the problem are described. The better sites provide some sample data sets to test your solution. Continue reading “Coding Exercise”

Top Dozen Qualities

software_developmentThis past week I read a couple articles about what hiring managers are looking for. Having co-owned and managed a software development business for over a decade and worked for small, medium and large size companies, encouraged me to write this post. Continue reading “Top Dozen Qualities”