Archive for the ‘billflo_alec’ Category

(Programmers) Thought for the day

Wednesday, March 4th, 2009

Ob Wan , aka Alec my co-founder, sends along a thought for the day from The Tao of Programming.

There was once a programmer who was attached to the

court of the warlord of Wu. The warlord asked the programmer:

“Which is easier to design: an accounting package or an operating

system?”


“An operating system,” replied the programmer.


The warlord uttered an exclamation of disbelief. “Surely an

accounting package is trivial next to the complexity of an

operating system,” he said.


“Not so,” said the programmer, “when designing an accounting package,

the programmer operates as a mediator between people having different

ideas: how it must operate, how its reports must appear, and how it must

conform to the tax laws. By contrast, an operating system is not limited by

outside appearances. When designing an operating system, the programmer

seeks the simplest harmony between machine and ideas. This is why an

operating system is easier to design.”


The warlord of Wu nodded and smiled. “That is all good and well, but

which is easier to debug?”


The programmer made no reply.

Software is cool (no really, it is!)

Saturday, February 21st, 2009

For those of you that don’t know, the other half of the billFLO founding team is non other than Alec Kercso. Alec (I call him OB Wan) is the technology whizz behind billFLO and has been developing cool stuff for years (checkout “starflight” to get a sense of his previous accomplishments). We were having a discussion a while back and Greg blurted out “Software is cool!”. It was kind of funny at the time but its since become a rally cry that encapsulates the energy, excitement and passion of the whole team. Anyway, OB Wan was doing some early morning coding today and got inspired…enjoy!

Speaking of typing trainers and Zaxxon (and we were doing just that yesterday over lunch here at Anoowa), have you ever considered how programming is very much like playing a game? When you stop and think about it, they’re not dissimilar.  You have some objective you’re trying to reach, but you may not have all the components or knowledge necessary to get there.  And as you explore your environment, you’re constantly uncovering new surprises that can aid you in your quest, or maybe simply amusing and entertaining diversions along the way.

Take the Path class in the C# System.IO namespace, for example, that not only has a method for returning a file’s path without its extension, but gives you wonderful goodies like a means to quickly create a uniquely named zero-byte temp file, Path.GetTempFileName() — just the thing I needed this morning.  Path also provides you with juicy bits like GetInvalidPathChars() and GetInvalidFileNameChars() that return arrays of unallowable characters for file paths and names, respectively.

Of course, like games, there’s always the boss level, that problem where no matter what tools, spells or weapons you have, nothing seems to solve the problem.  And sometimes when we beat the boss, even unelegantly or by chance, we choose to proceed on in the game rather than going back and doing it the right way.  (By the way, Greg, some day we need to talk about the rectangle coordinates that enclose PDF text.)

So this is why we can stay up late developing a new algorithm or file format or what have you.  Really, it’s all just fun & games… well that and we need to pay our rent.  And this is why, among other reasons, Software Is Cool.