Tudor Barbu's blog

Ramblings about software development

14 Apr

Coding music

Posted by Tudor. Tags: ,

What do you do while programming? And more important, what kind of music do you listen while programming? My habits are:

  • Starting a new project: Rammstein – Sonne
  • Taking over a project originally started by a junior programmer: Nightwish – Wish I had an angel
  • I’m assigned to 5 years old project that uses really old technologies and frameworks: Weird Al Yankovich – Amish paradise
  • Looking over a Perl script written by somebody else: Prodigy – Voodoo people
  • After a long meeting with the project manager: Zebda – Hasta siempre
  • Debugging (first 30 minutes): Rammstein – Ich will
  • Debugging (after 30 minutes): Prodigy – Fire starter
  • Looking for security flaws: MC Hammer – Can’t touch this
  • When I see a QA guy heading for my desk: Nana – He’s coming
  • When the project goes online: Britney Spears – Ops, I did it again (just kidding :P ) I’m having a brew and listen to Irish Rovers – Star of the county down

What do you listen to while coding?

This is the very definition of cool…

How will the future look? Here is Microsoft’s point of view:

<a href="http://video.msn.com/?mkt=en-GB&#038;playlist=videoByUuids:uuids:a517b260-bb6b-48b9-87ac-8e2743a28ec5&#038;showPlaylist=true&#038;from=shared" target="_new" title="Future Vision Montage">Video: Future Vision Montage</a>

I consider Microsoft’s point of view to be very optimistic. I’m not sure that in only 10 we’ll reach that level of technology, and even if we do, there will be a lot of people that will reject it, due to traditions, personal convictions that it “was better back in the days”, religious beliefs and so on. And, before developing that technology, we should figure out some new energy sources, to have enough juice to power it all. But the ideas expressed in the movie are impressive, not the less…

Credits for finding the movie go to Radu.

air_appicon_150x150As previously stated, I intend to get my bachelor degree this year. And I have to chose from a variety of projects. I have 2 options, either choose a PHP project, that will be ready in no time and get rid of it fast or choose to do a project with a technology I don’t know yet and learn that technology in the process, so that I can honestly that I’ve learn something useful while in school. I decided to give AIR a try, for one possible project, a RSS aggregator and a RSS reader (desktop app). I if get along with AIR, this will be painless. I’ll develop the browser based application and use AIR to build the desktop one on top of this one.

Installing AIR on my Ubuntu box was a piece of cake, it worked right out the box. Unfortunately I can’t say the same about Aptana, which kept poping errors and I had a hard time installing the AIR plugin. But I get this type of problems a lot when dealing with Eclipse based software and I got used to it in time…

So I’ve the gas and tried out some code examples. Copy/paste, monkey style, see how well it does. Well, what can I say…I’m impressed. If this was a gaming blog, I would have to say “AIR pwnz”. Really! AIR is a much developer friendly platform that I initially thought. So today I’m starting my AIR learning quest for 1 week and at which end I’ll decide if I’ll go forward with AIR for my project. As I’m a seasoned web developer, I want to see how easy it is to port an web application from a browser based app to an AIR one. Yes, I know AIR does that by default. And not quite. For instance, in order to send something to the server, in Javascript you use Ajax, like such

new Ajax.Request( url, options);

…while in AIR you have to write…

var request = new air.URLRequest( url );
var loader = new air.URLLoader();
loader.load( request );

If I were to use a design pattern like MVC, it will be a lot easier to port a browser application to AIR. I’ll have to rewrite the model and probably the view. No meddling with the controller, the application’s logic would remain unchanged (parse some feeds and display them to the user). This would be a big plus. So first of all I’ve wanted to try AIR with Javascript MVC and make some sniffing in the controller, see if the application is running inside the browser or on AIR, load a different model and a different view for each case. But after giving it some thought I’ve realised that I also have to read the Javascript MVC’s documentation, try it out and get used to it. And I just don’t have enough time for that, because those South Park episodes aren’t going to watch themselves. Or do I? I’ll post some code examples as things go forward. This is a plead to my readers, if any of you is familiar with AIR, please leave a comment. I would appreciate having someone to share my problems with ;)

Motto: I’m not fat, I’m just big boned. Back to South Park…

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.