Walking on Water
I found this great sentence, which belongs to Edward V. Berard and I am eager to share it with you:
Walking on water and developing software from a specification are easy if both are frozen.
Thanks to Irina Marudina for this piece of wisdom.
If you like the posts in this blog or you are interested in the discussed topics, please, subscribe to the RSS feed to guarantee yourself that you won’t miss an interesting post. You can do it in an RSS reader or by Email
Filed Under Fun, Software Development | 2 Comments
The Two Types of Programmers
Jeff Atwood at Coding Horror wrote a post called The Two Types of Programmers, which gained a lot of controversial comments. Then he wrote another post trying to explain what he meant in the first one and to bring up the peace but the war has already started. I read them both. I read them many times and I still don’t understand what exactly he meant.
He says that there are two types of programmers - Type 0 (20%) are the people who program for fun. These people live programming, they breathe programming. They use Linux and they contribute to Open Source projects. In other words (although he doesn’t say it), these are the good guys, the smart guys. The other group are Type 1 (80%) - people who practice programming for living. They work from 9 to 5, they use only Microsoft technology and they don’t read the technical news. “They are not stupid”, he says but I believe it is just what he means because the final appeal is to the smart guys to swallow their pride and to hope the stupid guys become smarter.
If you feel that you belong to the Type 1 programmers, the stupid ones, don’t worry - one of the most important characteristics of the 20% group is that they read blogs, especially Jeff’s one. So you just need to read one article of his and you’ll automatically become a member of the elite group.
Sorry Jeff, I don’t buy it!
Recommended Readings: Free e-book downloads
Jeff Atwood of Codding Horror wrote an article the other day called Why Does Software Spoil? where he gave his brilliant thoughts about the feature creep that spoils all software products. I was very impressed because I also have suffered of “feature overdose” and I think I am going to add my comments soon on this topic. Continuing the theme, yesterday Jeff wrote another article, where he recommended the Mark Minasi’s e-book The Software Conspiracy. Here the author examines in great detail the “feature paradox” - new features are used to sell software, but they are also the primary reason that software spoils over time.
You can download the book from its website - The Software Conspiracy.
Filed Under Books, Business Analysis, Death March, Links, Project Management, Software Development | 2 Comments
Software Product Success Stories
Craig Brown of BetterProjects started a meme with the same title and tagged me to participate in it. He was inspired by a Scott Sehlhorst’s post at Tyner Blain.
I thought a long time before deciding to write something about it.
Why is it so difficult for me to write about successful products? Well, mostly because I spent most of my professional life working at project-oriented companies. Most of the projects I participated in were one-time shots and I don’t know what happened to those products - if they were ever used or if they were successful. And I can say that most of the companies operating in Bulgaria are outsourcing companies working this way. It is not their responsibility to care about the product. They only care about the current project - to be delivered on time, within the budget and within the defined scope.
Filed Under Links, Project Management, Software Development | 6 Comments
The Mythical Man-Month Walkthrough

TheServerSide.net started a great new initiative - classic books walkthroughs. Joseph Ottinger is the first author with a review of the first chapter of Fred Brooks’ masterpiece “The Mythical Man-Month”. Although the book was written a very long time ago it is still one of the must-reads for all the people involved in the software development business. I highly recommend reading the review and buying the book
.
It is worth it!
Filed Under Books, Project Management, Software Development | Leave a Comment
How do you estimate the project’s budget? A new poll
I just want to bring your attention to the new poll I published on the sidebar of my blog. Especially for those who are subscribed to my RSS feed and don’t visit the site.
The question this month is: How do you estimate the project’s budget? My personal observations are that in the software companies in Bulgaria the project managers are not allowed to deal with the budget. The financial estimates are made by the top management and usually are kept in secret from the team, sometimes even from the project manager.
I am very curious if this practice is used elsewhere.
Please, vote! Your opinion matters!
Recommended Readings: Computer Ergonomics
I read recently Jeff Atwood’s post on Computer Workstation Ergonomics and I realized that I really didn’t know a lot of things that were important for my health. For the last couple of months I started working at home and I work the worst possible way - I sit in my bed holding with my laptop in my lap (this is why they called it “laptop” isn’t it?).
Unfortunately, it isn’t funny at all. My back is aching terribly and now I know the main reason for that - my bent working pose. So I did a little research and I am giving you some links to sites with very useful information about computer ergonomics and a lot of graphics and pictures.
- The Boston University self-help guide to computer workstation ergonomics
- Guide to Setting Up an Ergonomic Computer Station
- One more article on Computer Ergonomics
- And a whole blog devoted to ergonomics - Ergoblog
I believe this information will be of great help to you. Don’t be careless to your heath - think about it!
Programmer’s Day
I was reminded today about the “unofficial” Programmer’s Day. I don’t think there will be an “official” day ever. And in fact, I don’t think anyone cares. What is more important is just to have more reasons to celebrate! And we love to celebrate!
The logic about this day is that September 13th is the 256th day of the year and 256 is very important number for the programmer’s brotherhood. It’s a great idea but I’ve also heard about the 128th day of the year and why not celebrate the 42th day? It’s hardly possible to find a programmer who doesn’t believe in the magical nature of the number 42
Long time ago, when I was a first-year student in the University, me and my company defined another date to be the programmer’s day and it was defined with and algorithm! We announced the programmer’s day to be the first Saturday of April when it’s not the first of April (simply because it’s another holiday :-)). If the first Saturday happens to be on the first of April then the programmer’s day would be on the eighth of April. Why did we choose that time? Well, because then the weather becomes warmer, the spring is coming noticeably and you can go on a picnic in a fresh air. We may be programmers but we are not moles and we value the sun and the air like everyone else.
So, today is a holiday and it should be honored.
I congratulate all the colleagues working in the field of Information Technologies and everyone who feels like a programmer on The Programmer’s Day.
Happy Programmer’s Day! Cheers!

The role of the Business Analyst - poll results
I wrote a post in Bulgarian about the role of the business analyst in a software development team and I put a poll to survey how the people in the software development business in Bulgaria evaluate it. Now the poll is closed and I am giving you the results.
Question: How do you evaluate the role of the business analyst in your team?
Total votes: 27 (little but I still have few readers).
Answers:
- Very important role. The BA investigates the customer’s needs and represent them before the team - 14 votes (52%)
- All roles are equal. The BA is responsible for the functional (requirements) specification, which the developers implement - 6 votes (22%)
- We don’t need such a person. The developers do the client’s business analysis themselves - 4 votes (15%)
- What is a “business analyst”? - 3 votes (11%)
- He just hangs around here and looks silly. He cannot write a simple JavaScript - 0 votes (0%)
How to interpret the results? Obviously, the first thing that has to be noted is the small number of the votes. For me, the main reason is the fact that still very few people visit my blog and most of them weren’t impressed by the poll. I think I will open it again in the future when there will be more visitors to my blog.
Anyway, the good news is that despite the few voters, the results show that the position of the business analyst exists in the software teams nowadays and it is appreciated positively. No matter if considered as very important (answer #1) or considered equal to all the others (answer #2), the business analyst takes his/her well-deserved place in the software team (totally 20 votes for both answers, which gives around 74%)
Answer #5 is rude and represents the vulgar and arrogant attitude of some developers to the surrounding world that doesn’t write code. I am glad that nobody voted for it. It probably means that this attitude was already buried in the past.
Answer #4 is a little silly. How can you be a self-respecting developer and not know what a business analyst is? I put this answer on purpose with the intention to be chosen for fun and to make the poll more colorful. I believe that this was the intention of the three guys who voted for it. And if they really don’t know what this is - keep on reading here - there will be more posts devoted to the job of the BA.
The most interesting answer for me is answer #3. It has a double meaning. There are companies, on one hand, that work on small projects or such that work on products and don’t use project principles at all. In such companies, every developer, having been working long time on the same product and having been communicating with the field experts from the business area being automated, gradually begins to gain exactly that knowledge and experience, which make him or her a business analyst. And if you add the aspiration of the company for more exploitation of its employees we come to a natural merging of the role of the BA with the role of the software developer in one person.
However, there is another interpretation. The team (or the company) could consist only of “great programmers” - people who think they know, understand, and can do everything. It was the ideal of the past socialist society in Bulgaria - so called “multi-dimensionally developed persons” - people who believe that a developer should be skilled in every aspect of the software business and there is no need of a narrow specialization in particular areas like business analysis, project management, testing, user education, etc. The developer can do everything!
I really would like to know what were the reasons to vote for this answer. I hope some of the voters will post a comment about it. And if you have an opinion about the role of the business analyst in your team - please, share it with me. It will be useful.
Filed Under Business Analysis, Polls, Software Development, Teamwork | 2 Comments
Project Management and Hiking
Glen Alleman wrote a great post in his blog Herding Cats entitled Agile Planning. There he makes an interesting comparison between the hiking “projects” and software ones and asks serious questions to the adherents of the Agile methodologies.
He says:
Hiking requires Planning and Scheduling and Execution. Alternative plans are needed, alternative schedules always happen and alternative execution choices are always there. So what’s all the noise about Planning and Scheduling in agile software development?
And more:
Preparation is the key to a successful hike
Why wouldn’t…
Preparation be the key to success for a project?To argue otherwise - that planning, preparation, sequencing, and execution performance management - is not needed is dangerous in the hiking paradigm. Why do we think these activities are not important in the project management paradigm?
Good questions to ask ourselves and especially those religious fanatics who claim that their extreme approach with no planning is always a better solution than the traditional management methodologies.
Filed Under Project Management, Software Development | Leave a Comment
