Tudor Barbu's blog

Ramblings about software development

06 Mar

Power in simplicity

Posted by Tudor. Tags: , ,

I’ve attended the 18th edition of Wurbe yesterday. For those of you that don’t know this, Wurbe is a periodical event that takes place in Bucharest, where developers meet to exchange ideas, share insights on latest technologies, promote best practices and talk about the daily activities that come up in a developer’s life.

This edition, the topic was “shaving seconds” – how to use automatic tools to replace the repetitive tasks that come up every day in the software development process. What editors, what tools, what scripts should we use to get our jobs done as fast as possible, while doing at least repetitive tasks as possible?

I usually use complicated IDEs, like Eclipse or Zend Studio, that consume a lot of resources, have thousands of features I don’t use nor need and that usually get in my way. Despite these obvious flaws, I still consider these IDEs to be the best in the branch, because “they can do” and “they also have”…stuff I don’t need. But today I’ve seen two presentations that made me reconsider my position. Two “ancient” and “obsolete” editors were presented: emacs by Alexandru Nedelcu and vim by Cristi Bălan. Well, in both cases, I doubt that any of my feature rich, RAM consuming, state of the art IDEs could ever allow me to achieve the same level of productivity those two had with their mid 70s editors. I’ve always considered vim and emacs to be stupider brothers of Windows Notepad. Well…I was wrong! Dead wrong!

I going to put some work into it and start to use emacs from now on, at least on my own projects…

18 Feb

IT Certifications

Posted by Tudor. Tags: , , ,

As I’ve said before, we’re living in exponential times. The motto of our lives will be “learn, learn, learn” as new jobs appear all the time. For instance, SEO specialist – a job that pays quite well today – didn’t exist 6 years ago. And all these new jobs require new skills. Either adapt or fall behind. And in the current economical climate, it’s a very good idea to have those skills certified. Just in case…Usually employers get tons of resumes when they post a job and if you want to step in front of the crowd, your resume should say more than the usual “hard working, very motivated person” yatta-yatta. And some well known industry certification might just do the trick.

Even if I work in a very prosperous company and it’s unlikely that the recession will get to me (by the way, we’re hiring – so have a look at our openings on www.zitec.com), I’ve decided to spend some time and bucks on my education this year. I’ve taken the Zend Certified Engineer exam for PHP 5 in January and I want to continue with the Comptia Linux+ exam. Today, courtesy of uCertify, I’ve received this Comptia Linux+ preparation kit for review. I haven’t got the time to review it yet, but I know now what I’m doing this weekend :)

Stay tuned!

08 Feb

Perl vs PHP

Posted by Tudor. Tags: , , , ,

I’ve read this article that debates the differences between perl and PHP in a childish way – sort of like the kindergarten debates on whether Batman can kick Spiderman’s ass. Since I haven’t ever coded a single line in perl, I can prove to the world that I’m a mature person that doesn’t plunge into “my operator in better than yours” debates, because if I would have any perl experience, I would be right there in the middle of it ;) .

They may be right on some of the statements they make, but when they claim that a career in perl in better than one in PHP they’re wrong. Dead wrong. PHP has a bright future ahead it whereas PERL does not. Because, in the end, arguments such as “perl has better naming conventions” don’t matter. In a world where nearly all programmers have access to speedy O2 broadband packages or other reliable internet connections, both systems can be (and usually are) widely in use on a number of hugely popular sites. Decisions on what technologies should be used, especially on large projects where loads of money are involved, aren’t taken by geeks in dark rooms over a game of AD&D, but by CEOs over a game of golf or in really expensive restaurants.

If you go on Zend‘s website, you find things like improve productivity, maximize IT investments. This is music to a manager’s ears. CEOs like pie charts more than they like pie. If you go on perl’s website, what do you see? Well, perl 5, perl 6, CPAN ratings, Annotated CPAN, mailing lists. Why do you think that there are so many products being developed on Microsoft technologies? Do you think C# in better than perl or PHP? Or that ASP (not ASP.NET, the original ASP) was better? No, this is just Microsoft’s image at work.

PHP is quite big on its own, but compared to perl, it’s huge. PHP in on Oracle’s site. PHP is on Adobe’s site. Wikipedia is built on PHP, WordPress is built in PHP and the examples go on and on. Perl is not even in the debate, it’s seen as an esoteric language used by CLI geeks. I doubt (I haven’t checked so feel free to prove me wrong) that there is a single project with a budget over 200.000 euros being developed on perl.

These factors aren’t exactly “programming related”, so why are they so important in the day by day life of the average programmer? Well, they create jobs, pay money, give you the ability to pay the rent, buy a car, go on vacation and so on. If you come across a career decision between perl and PHP, don’t waste time wandering if perl’s naming standard is better than php’s or which language has less string comparison functions. But instead ask yourself, which technology will allow you to find a better job? Look on a local jobbing site and see how many PHP are available and compare that number to the number of perl jobs available – if any.

…just my 2 cents.

04 Feb

About education

Posted by Tudor. Tags: , , ,

I’ve seen this video today

…and it made me think a lot about my life and my career. Most of the technologies I’ve studied in a classroom are now obsolete. Or were already obsolete at the time I was studing them. It’s very morale damaging knowing that you’re studing something just to pass an exam and that you’ll never use that knowledge ever again. But I wasn’t discouraged by the educational system and I’ve spent a lot reading and experimenting on my own and that’s how I’ve got a pretty good programmer. Really! I was always appreciated by my work colleagues and considered to be the guy that they could always ask for help. But still, I can’t even write a louzy string comparison in ASM without using Google. That’s not because I didn’t want to learn that or that I consider ASM knowledge to be useless and obsolete like other people do, but because there is simply to much information out there and not enough time to learn it all. And it multiplies at an ever increasing rate. Ajax as we know it – with the XMLHttpRequest object – was coined in 2005, less than 4 years ago. Now it’s impossible to find a job description in the web programming field that doesn’t include Ajax. Today’s experiments will be next year’s job requirements. Our generation will always have to adapt to world that’s changing like never before.

So I’ve decided to expand my education and skills and I’ve made a list with things I want to do this year:

  • improve my knowledge of the Zend Framework – the target is to pass the Zend Framework Certified Engineer exam
  • improve my knowledge of the Linux operating system – the target is to pass the Comptia Linux+ exam
  • improve my command of the English language – the target is to pass pass the Cambridge exam
  • learn a little bit of German – no ambitious target here as I can’t really set a target, now that my level in German is below zero
  • get my bachelor degree – after all these long years, it’s about time
  • take a race driver course – a hobby for now, but one can never know what the future holds;)

I’m not sure if I’ll be able to complete the list, but I’ll try hard and I’m going to look back to this post on the 31 of December and see how much I’ve accomplished. And of course, start a new list with “to-learn”s for 2010.