|
|

When I was an Intern at a large Global 500 company, my major responsibility is to deliver a Software Delivery process that uses the software engineering practice called Continuous Integration. In simple terms, I am responsible for a project to create and setup a Continuous Integration Build Server that will be used to “build” the company’s products.
During those days, when I hear the word “build” or “compile”, the first thing that comes into mind is to press the F5 button. Ever since I started programming, when someone asks me for a copy of my program or if I need to distribute the “binaries” of my program, all I do is press the F5 button to create an EXE (sometimes with a DLL), then browse to the output folder(Bin) and copy the binaries. Suffice to say, that is my “Software Delivery” process however crude it is.
In College, I got a little bit more sophisticated. My major projects are all carefully packaged in a very neat MSI installer — but that is just for the major projects. Most of my standalone tools are still made using the “Press F5 button to build” method.
Continue reading “The Importance of a Dedicated Build Machine” »
 Do you know how much Programmer's Blood it cost to put this tiny sticker in a Software Box?
In my previous blog post, I’ve mentioned that I’m working on a project to migrate an entire product line to Vista. What I meant by that is that I am responsible for making sure that our current product will run properly on Windows Vista. To guarantee that it is indeed Running Properly it should behave *exactly* like it behaves in Windows XP. In simple terms, my entire job security is riding on making our products compatible with Microsoft’s failed attempt at a MAC-ish Operating System and with Microsoft’s successful attempt (a first in their history) to make their operating system NOT backward compatible with older applications. So much for Raymond Chen’s camp undying obsession with backward compatibility.
This products that I’m talking about are a set of Web Applications written in ASP.NET version 1.1. This web applications are as old as Windows XP. I checked its File Modification History in our TFS repository and the last time that anyone have touched its code base is in 2005 — and that’s just for a minor code modification to fix a bug. I believe this apps were written way way back in 2004 — when I was in Third Year High School!
To make this products compatible with Vista, there are a couple of steps that had to be done. I’ll enumerate each steps and what it takes to accomplish them.
Continue reading “Migration: Why Developers Hate Microsoft or Why Developers Hate Vista or My First Encounter how Microsoft can Break your Software” »
 My First Official "Coding Horror" Encounter
Back in College, I have a friend who’s programming prowess is so godly that it can easily match mine. He is a C++ Junkie and belongs to the Java Cult. His mental agility is so great that he can beat me in writing complex algorithms anytime of the day. In fact, I chose him to be the “Architect” for our project in Compiler Theory Class (Kompayler Studio 2008: The First Tagalog Kompayler, Programming Language and IDE). He is THAT great of a programmer… BUT
Being a Great Programmer is not the same as being a Great Software Developer
“Aren’t programming and software development the same?” Uhhmm, NO. Programming is just a single part of Software Development. Software Development, on the other hand, is an entirely different song and dance.
In one of our converstations, I told him that instead of reading books about programming he should try to read books about software development. I gave him that advice not because I want him to suck in programming (I’m not that envious). I gave him that advice because I want him to realize that programming alone won’t make a great software product and that programming prowess alone won’t give him the best programming job around… at least here in the Philippines.
One of our main differences is reflected on how we write code (which eventually shows in our software). For example, say that we have a project that requires us to deliver a Simple Number Sorting Application that will ask the user to input 50 numbers and sort it. This project is resource constrained in such a way that we need to deliver it in 2 days.
Continue reading “Coding Horror 01: Readability vs Efficiency” »
Just a day after graduation, I received a congratulatory note from the Director of Software Development at work. The email is addressed to the whole software development department and it goes something like:
“Congratulations in accomplishing another milestone in your life. Now, there’s a new milestone that you need to accomplish…”
DEADLINES!

Continue reading “Deadlines: I used to love them” »
On April 17, 2009, I will be attending a leadership seminar sponsored by Accenture Philippines. Accenture Student Leadership Conference is a 3-day seminar that will be held somewhere in Tagaytay.
According to Accenture’s website, participants will “learn about key Accenture leadership contribution areas by being value creators, business operators, and people developers through seminars and fun activities… They will also hear first-hand testimonials from some of the top Accenture Senior Executives, Managers, and Leads from various workforces and projects”.
If you have attended at least one leadership seminar in your life, you know that it will be full of ego-massaging and morale-boosting talks from some senior-management guy from some Fortune/Global 500 company. And some funny “group dynamics” that the event coordinators will link to a certain “leadership” quality but in reality, it will just make you tired and sweaty. I have yet to attend a leadership seminar that will really teach me on how to be a really good leader. Accenture SLC… here’s hoping!
When I was in College, I was amazed that the suits (”Business People”) are so willing to pay me good money just to spew out pieces of code that would eventually end up in a crappy system somewhere. Well, that was the time when I thought that working as programmer is just about programming. Or, that was the time when I believe that majority of a programmer’s time would be spent writing code… building stuffs.
Nowadays, when people ask me about my typical day at work, I always tell them that I’m working on a Localization Project. Most often than not, the common reply is “What’s that? Does it involve programming?” Yes, it involves “programming”, if you consider replacing a bunch of strings to their localized equivalent as “programming”.
As Mike Rowe will put it…
Localization… It’s a dirty job!
Why is it a dirty job, you ask? Consider the English phrase “Preview and Spell Check”. Now let’s see how it will translate to different languages:
French: Prévision et contrôle de charme German: Vorbetrachtung und Rechtschreibüberprüfung Russian: ??????????????? ???????? ? ???????? ????????????
Continue reading “Localization: A Programmer’s Dirty Job” »
Lo and Behold, I will now commit geeky heresy by confessing that…
“Programming is NOT a talent”
 Dummies can learn programming, too.
We, the nerds and the geeks, would like to believe that programming is a talent. That programming is… Something special. Something that cannot be learned fully. Something inherent — a gift from the gods. We would like to believe that programmers are born – not made.
Continue reading “What makes a great programmer?” »
 Jeepney Drivers in the Philippines
I was wrong.
For a very very long time, I’ve always thought that the reason why Software Developers leave our country and work abroad is because of pure greed.
The realization came on the day of my job offer. Don’t get me wrong, their offer was good enough. In fact, it made me think of those developers who are receiving “average” or “below average” salary.
A lot of realization came to me that day… I realized why the people of this country is so angry with the government and corrupt government officials (READ: Taxes). I also realized that even if I graduated Cum Laude in a prestigious school and even if I am working for a Global 500 company earning above average salary, I will not be able to live on my own comfortably.
On that very moment, I am living in reality… the real world — Not in the fantasy world presented on those success stories in Time Magazine about how a geek changed the world and earned a few billion dollars in the process.
Continue reading “1 Software Developer == 2 Jeepney Drivers” »
|
|
Comments