Archive for the 'Digital Life' Category

Automagic Platforms

Few years a go, Ruby on Rails (RoR) start shinning because it was only framework able to speed up the Web development with a set of all-in-one tools. As Java experienced programmer and architect, I’ve to recognize that the RoR team made their point. I still remember that video with a guy with a lot of jars on top of a table (check it here) that made me LoL for a while -an awful truth. Now we have a lot of solutions that offers similar out-of-the-box scripts and frameworks that build code as RoR does -the fancy but power/useful scaffolding, the code generators, and others. Few of them:

The list could be huge, but the main point is not to check them all but to provide few tips to start a Web-based project and choose the right tool.

The .NET and Java mistakes
I do love Java, I’m a fan-boy of JEE technology and portability but, I’ve to say, even if it hurts, Java is a huge rock. It means you need to have a huge infrastructure, a huge processing capacity and a lot of tools to start a JEE project. Why? Let’s face it, you need more than your imagination to start a project and it isn’t easy nor cheap to find a great hosting solution, to properly setup an environment for development (with sandbox and preproduction/test environments). Even if your project is really small it is a good idea not to have the test environment on the developer computer -I hope you don’t think this is a joke, it happens ALL the time.

So, instead of being easy to start with a basis, you have to deal with complex configuration problems -it is good to have all those options if you are on a banking/financial project with a couple millions as budget, but in a real economic-crisis world you should look for “point-n-shoot” solutions -if you know what I meant.

The Apache Friends
So you have a lot of alternatives on the Apache HTTPD side, with PHP (the popular), Perl (the bad cousin), Python (the genius), RoR (the cocky brother) and all others.

I’m not a scripter guy, the compiling hell is for me but, the simplicity shows us that you don’t have to deal with complexity all the time for Web projects. So, give non-corporate-supported technologies a chance. It was hard to me, but they worked faster and cheaper than expected -there is not measure to say better. It is cheaper to create a top-class development and testing environment and work with remote teams if you use open solutions -not necessarily open source. It is not all about the language you love, the server you own, the database that rules the world. It is about cost, simplicity and efficiency. It is easier to get/hire great developers on these tools than for Java - .NET is for chickens and everybody knows it (check this article if you do not believe me). Software development is not about coding, is about solving, that’s what Microsoft doesn’t understand. They code a lot but they do not solve too much, right? You should notice since Windows 95 and the coming of the Blue Screen ERA!

The Automagic
Before I became a senior developer I worked migrating some applications from Oracle Forms and PowerBuilder to J2EE -we used to put a horrible 2 in the middle few years ago. And those tools were great for the task they were created. So it took almost a decade to have those tools on the Web -and they do not work as fine as those mentioned. However, the Automagic isn’t new at all. ActiveRecord exists since, I don’t know, the Z81 maybe? He He He!

So now we have tools that reverse the database and create ORM models, pre-formatted pages and objects that speed up -years- the development. So you can concentrate in other IMPORTANT STUFF like, User Experience (UX), Information Architecture (IA) and the forgotten design.

The generated code is clean as possible (I remember the JBuilder and its generated & encrypted code). And this is thanks to the separation of concerns and excellent pattern implementations - the commonly used for the Web is the MVC supported with other ones like ActiveRecord and IoC, but you can find a whole universe on each platform and framework - I do have an old poster of J2EE patterns as wallpaper for example!

The Verdict
Before fan-boys appears into the scene while you are deciding what platform should use, please take a look to the ones you probably will not look at -don’t waste your time with .NET :-). During these 7 (should I said 8?) years working on Web development I’ve noticed that only big companies uses robust (slow development) platforms like Java and .NET -by big  companies I meant with more than couple billions of dollars on their budgets. They spent a lot of money in servers and infrastructure and ironically most of the time they use always versions old versions of platforms, servers, databases and all. So even if they spent a lot of money they cannot move as fast as it happens with the technology. Microsoft still produces Adobe Flash banners right, even if they have their own Silverlight. And it also happens with JavaFX. When you develop Flash components some companies still requests Flash 6 or 7, when we all know that we have version 9 and 10 running on most of the computers on the web. But hey, they want to be sure and even those computers that are off since 1995 can see them! - why?

Before you spent more then 6 months working on a project without a single release -could be a partial one, but functional- keep in mind that probably it will take other 6 months before you see the product/result you are expecting. Automagic means fast, so I hope you do not spend more time thinking on if you should or not, and how, than coding… Otherwise it will demostrate my point :-)

Better late than never

They made it!. They made it! - it is better late than never. I’m so happy now! Ubuntu Intrepid Ibex is here to make us happy.

Better Late than Never Next time you should set the expectation acordingly -you can have the release one day after, and align communications plan to avoid misunderstaning -could be Launch at 12M EST or something like that. It will be good to put the MAINTENANCE MODE on the site :-) And suddenly launch the new version -i will prefer that than see things changing during the whole day -it becomes like my girlfriend, she takes hours to get ready to exit.

WTF: Ubuntu 8.10 Coming Soon?

Coming Soon I put the countdown logo on my page, I waited patiently for the new release, and what I got? Coming Soon. WTF expression came to my face. I know that I can get the official release from the update manager or looking deeper under downloads section -I already did that, however this is all about communication. If you want to create a kind of expectation around the promotion or release -to boost your product launch, you have to do it right, otherwise it will be confusing. People like me will be disappointed. And it is not because I do not elieve, I do believe on the team, on the product, but I also check the details. It is not what you did, it is not how you did it, it is how you sell it.

BogoTech @ Studiocom done - only one more to go

First of all, I would like to congratulate the organizers of the second BogoTech event. Last night we saw an improved logistic and infrastructure supporting this event/ It is not about money, it is not about politics, it is about decision and motivation.

Also I would like to say thanks to Studiocom management team, Maria Claudia and Javier for all their support and willingness helping us with the location, the chairs, the video and sound. Thanks to IT Team for taking the time of setting all the stuff ready for our little event. Thanks to all Studiocom for participate and let us use their space.

This week is a king of crazy time for me. My boss is out -doing biz I hope :-) - and I had to organize BogoTech and a presentation for the national association of Computer Engineers -ACIS. So there is only one more to go. I hope to meet you there (@ACIS Octuber 23th, 6:30pm)

BogoTech @ Studiocom - HOY

Tras dos semanas de mala planeación y pésima logística ( LOL :-D ), y algunos favores que debo agradecer personalmente a Studiocom -empresa para la cual orgullosamente trabajo y a la que algunas veces le doy duro en mi blog- puedo anunciar que el BogoTech se llevará a cabo en la oficina de Studiocom Bogotá. También gracias al equipo organizador por su dedicación “pro bono”. Más detalles aquí.