Blog

A couple of words about TDD
Unit-test coding supposes to be one of the most significant methodological achievements of the industry, let’s say, for about last 15 years. The Internet is full of enthusiastic exclamations [1, 5, 6]. However, there are some not so enthusiastic ones or even without any enthusiasm at all [2, 3, 13]. A humble attempt to consider pluses and minuses of TDD (test driven development) based on literature research and some practice is being made in this article. At the beginning, it’s necessarily to clarify the terminology because there is some misunderstanding: saying TDD one means one thing and another one means ...
- Posted by: volodya 21.2.2010 at 10:51 0 comments
Metrics - LoC
This is going to be a small set of articles devoted to metrics. The first one is about LoC - Line of Code. I think that the first reaction on that phrase is smile. Many of us have heard about an anecdotal case at Macintosh when they tried to count the lines of code and measure productivity. There is even a classic saying of Kenneth Thompson: "One of my most productive days was throwing away 1000 lines of code". Actually, counting SLOC is routine and boring: we simply carefully count the lines one by one including code lines itself, comments ...
- Posted by: volodya 11.5.2009 at 05:43 0 comments
Metric - Cyclomatic Complexity
There is a simple and logic explanation: the more “if”, “while”, “for”, and etc. in code the higher the complexity of the code improvement, management, understandability and refactoring. Cyclomatic (here and on – V(g)) is an a-posteriori metric, the same as LOC. V(g) is being used only after the initial code is written. Some programmers criticise these things saying that better to prevent too complicated code than correct it afterwards. However, in real life very often we have the situation when the code is already written by somebody else and according to the Murphy Law *you* have to deal with ...
- Posted by: volodya 11.5.2009 at 05:41 0 comments
SESE vs SEME
SESE/SEME are terms of structural programming and were introduced at 80-s. Nothing new. However, experience shows that some programmers do not know about them till today. That’s why it makes sense to explain what it is all about. I want to express my gratitude to Ruslan, Oleg, and Alex who actively helped me to work this theme out. SESE = Single Entry Single Exit. SEME = Single Entry Multiple Exits. It is very simple: any function has a single entry but one or many exits. Consider this code as an example:
- Posted by: volodya 8.4.2009 at 05:33 0 comments
How to use ASSERT
Asserts can be very helpful in any development… If you use them wise. Alas, in the net there is miserable information about how to use these wonderful tools of security programming correctly. The only more or less understandable explanation that I have found is Code Complete by Steve McConnell. However, I hope this article, as minimum, will not be worse. Definition Assertion is a macros that is used in software and which helps a developer to check if a program is being implemented correctly, especially at certain places of code. Assert forces the program to end the work instantly. Like ...
- Posted by: volodya 17.3.2009 at 05:37 0 comments
.h/.hpp including strategy
Sorry to say but people are very thoughtless concerning filling up of .h-files. Often you can see just a huge dumping site of everything imaginable there. This article is devoted to classify the approach of working with .h-files. It is a result of my conversations with Anton, who I truly believe, is the best one among C++ers which I have ever seen. Globally, there are two ways of including into .c/.cpp-files. umbrella header fine grained headers A couple of examples: 1) ntddk.h, windows.h. Let’s assume we have foo.h, which in its turn has ntddk.h and other odds and ends, and ...
- Posted by: volodya 7.3.2009 at 05:35 0 comments
How to walk through a container
Just a small article explaining how to work with the STL containers. Vector is taken as an example. Аt the beginning I would like to say thanks to Anton. The reason for this article is multiple examples of incorrect iteration seen everywhere in Internet:
- Posted by: volodya 7.3.2009 at 05:31 0 comments
Welcome everybody!
We are happy to announce our site opening! We are remote-based offshore outsourcing company. Why outsourcing? Simply because the software developing can be well out of your company’s main business and outsourcing process allows you to transfer this demanding non-core activity to an offshore provider. It proved to be the most popular, budget-friendly and successful way of doing business, enabling the companies to create highly competitive solutions with significant cost reduction and in shorter project time. Moreover, you will not feel any time difference even if you are located on the other side of the globe. We possess the resources, ...
- Posted by: volodya 6.3.2009 at 05:28 0 comments
WHAT'S NEW
- A couple of words about TDD
- Unit-test coding supposes to be one of the most significant methodological achievements of the industry, let’s say, for about last 15 years. The Internet is full of enthusiastic exclamations [1, ...
- February 21, 2010
- CodeExample plugin for Trac
- The Trac plugin for code examples colouring. It supports three types of examples - a simple, a correct one and an incorrect. Further details see at
- February 13, 2010
- Metrics - LoC
- This is going to be a small set of articles devoted to metrics. The first one is about LoC - Line of Code. I think that the first reaction on ...
- May 11, 2009
- Metric - Cyclomatic Complexity
- There is a simple and logic explanation: the more “if”, “while”, “for”, and etc. in code the higher the complexity of the code improvement, management, understandability and refactoring. Cyclomatic (here ...
- May 11, 2009
- SESE vs SEME
- SESE/SEME are terms of structural programming and were introduced at 80-s. Nothing new. However, experience shows that some programmers do not know about them till today. That’s why it makes ...
- April 08, 2009