Grails – the search is over

 And it is over for real. Imagine a full blown on-rails platform that…
- runs on almost any servlet container (Tomcat, Jetty, etc.);
- allows you to create web applications using a beautiful integration of Spring MVC
- … using a nice dynamic language (Groovy) that is fully compatible with Java
- … but not stopping you in any way to use Java itself if you like (for most functionalities);
- interacts with the database with the most impressive Hibernate integration (GORM) I’ve ever seen;
- makes it easy to create templates using a very simple yet powerful language (GSP);
- has a huge availability of plugins, from captchas, to optimizations, from LDAP to analytics;
- integrates a powerful testing suite;
- runs ‘convention-over-configuration’ for 99% of the features;
- the Eclipse plugins guide you during the development in the most useful way;
- its learning curve is gentle;
- it’s created and maintained by SpringSource!

Now, I’ve never been much satisfied by on-rails platforms, seriously, it’s not my world. Even more, being more a software engineer than a web engineer, my interests in that kind of products have always been kinda mild.
When I first met Grails (10 months ago) I was skeptical -as always- but it took me less than 1 hour to realize what was going on in my computer, and I was shocked. Everything was over the top. The persistence layer is SUPERB, the separation of the controllers and the UI is perfect as much as the languages needed to develop them (and their organization inside Grails). The time needed to understand all the basics? 1 hour.
Still, I HAD to start a test project and see how much my first feeling was correct and be certain this marvel of technology was ready to suffer the pains of a real full blown production environment. Folks, it really met my expectations. This thing… is amazing.

Of course it has some downsides, in 10 months I had my oh-oh here and there.
First of all, in production you might not need a super powerful machine to run it (unless your traffic needs it), but in development… well get ready to heat your processors and disk.
Secondly (by the time I’m talking, I’ve haven’t seen Grails 2 yet), sometimes the development environment simply stops working. “This is broken, this does not compile” you know, the kind of mysteries that makes you bang on the keyboard like a monkey. You just need to get in touch with Grails common oopses to fix that in an instant, but the very first times, it’s going to be a little troublesome. Note: this kind of issue are likely related to the Eclipse plugin, rather than Grails itself.

I’m no fanboy. I hate fanboys. But this framework makes me very close to one…

GO GRAILS! 

Apple: mind control

Ok, now I’m pissed. Apple: think different? No more.

I’ve been using a Mac for 4 years now and I’m pretty pleased by the overall performance. The machines are pretty good, the OS mixes the best of the two worlds (*nix and Windows) with a nice added flavor. But what I discover these days is I’m not a Mac user. I will never be, nor I want to.
The first signs that something wrong was happening showed up when the IPhone was released. It was nice, futuristic, Apple scented. And with a horrible Bluetooth layer that was making it impossible to have it talking to other devices but IPhones and Mac.
“WTF” I said “… did they meet any technical limitations? Bluetooth generally sucks, but everybody managed to have it talking with almost everything”.
“Nah” a Mac user friend of mine said “It’s their decision”.
“Why’s that?” I asked, but the answer bothered me. “Well, they’re making their own business like that. If you want the device, you’ll eventually get into Apple’s world, totally”. Questioned about the fact this is ‘right or wrong’, that friend of mine said it’s “absolutely right”.
At first I didn’t actually realized what it was going on.

Last  year, I upgraded my camera to a professional one. The camera manufacturer was making two professional models, I picked the smaller one. Ah, I was using Aperture by the way (at that time 192€).
When I got back home with my first shoots I was all excited, but when I tried to import the pictures using Aperture I found out that Aperture wasn’t supporting the camera’s RAW format. “How strange” I thought, considering the Mac was easily able to read them. But not Aperture.
After a small search, I discovered that Aperture was actually able to import the bigger camera version RAWs, but not the smaller one.
“WTF, it’s the same format!” I thought and after a small search, I discovered that it was exactly the same format with a header field value that stated one model or the other.
I thought of a mistake and searched other people having the same issue. I found that many reported the same problem.
Some time later, Apple announced that there was a way to solve the problem: a paid upgrade to the new version of the software.
Mac users, again, stated this is absolutely alright, because “they have to make money somehow”.

I did not upgrade and used IPhoto for the first import operation (irony…).

Now, today I’m working on some important pictures challenging at least 5 other depressing bugs (1 blocker) that Apple states to be fixed in the new fantastic version of Aperture. And again, Mac users say this is “normal”.

What puzzles me is not only how the stand there stating “you buy the toy and then shut the fuck up” but how they actually managed to brainwash any goddamned Mac user on the planet. How come people working in the IT field I would generally consider intelligent and competent in this discipline, would end up saying “if you don’t pay, you don’t get the bugfixes, it’s normal”.

iMindControl.

Let me finish with the famous Apple 80s TV ad, the one against the IBM “evil empire”.

Who’s  the evil empire now?

Software patents: the snowball effect

As I’m working with an US based software company, I’m facing a new software/political issue that, as european, I never met before: patents on software.
In Europe, patents on software are not legal (yet). Apart from the old discussion about patents killing open source projects (on which I can totally agree) I never really dig the matter ’till now I’m writing a patent draft for my company.

The boss entered the room one day saying “We must patent everything!”. And he meant not only the very high tech, important things that make us famous in the world. He meant EVERYTHING.

Why? Because other people pantent everything too. Even the most obvious concepts, things we would all place in the common sense domain.
This means that if they pantent something that you already created and use daily, you might find yourself in the curt.

So no matter if you really want to patent every fart you do or not; if you don’t, somebody could make you wish to be a plumber.
It’s the snowball effect, if others pantent everything, you must do it too, and if you do, you force others to join the crew.

I wonder who’s the winner of this game.

After five years without Windows

After five years without Microsoft Windows (except some glimpses here and there), a few days ago I had to use Windows Vista on an HP laptop. Wow, I almost forgot Windows could actually run on a real PC in place of a virtual machine!

All I had to do was checking if my multi-platform-Eclipse-based-application worked on Windows and make it a ZIP bundle.
I felt a kind of excitement while testing my application. First, it was working smoothly, second, Windows was kinda working too.
So it came the ZIP time. My self-confidence vacillated a bit when, looking for a compress-like menu item, I discovered it wasn’t there. Then this idiocy returned into my mind: compressed folders.

Right click, create compressed folder and here I go. I dragged my 250MB directory in the compressed folder and… 5 minutes to go… FIVE. MINUTES.
I patiently waited the 4.30 minutes (Windows always overestimates) and there was my ZIP. After that I plugged my usb pen drive that mounted correctly and explored my resources to locate my zip file -as I accidentally closed the window-, I noticed the disturbed fact that a compressed folder is actually listed among the files  (as it’s one) and not among folders… Personal HCI note: if you call it folder, handle it like one.

Anyways, I got the zip in the pen drive.

The real trouble came when I had to install the software on a VIP client’s laptop with Windows XP.

After copying the zip from the pen drive to the hard drive, the client double clicked the “compressed folder” and dragged its content on the desktop. After minutes of “computing” the computer whined that a certain file could not be found and the operation could not completed.
DAMN, corrupted zip, that’s what I thought. I ran to Malex who copied it into his Linux box that uncompressed it smoothly, into an iMac, that uncompressed it smoothly, and also into a Windows VM that uncompressed it smoothly.

As I brought the pen drive back to the client, I was frantic. “Could you… try that again?”. And he did but nothing worked.

I was about to go and make the bundle again, hoping for better fortune, when the client’s partner  exclaimed “Hey it worked!”.
The end of the story is that clicking on the “extract” action brought to a success, while dragging and dropping was failing miserably.

I was as happy as a kid, but when I looked at them, no feeling appeared through their eyes. Not surprise, nor anger for the time lost, nothing. Just the usual. The usual Windows shit.

Thank goodness I am so out of the Windows daily misery I can be happy the rare times I have to make it work and I succeed.

ERP – meeting halfway

In years in the ERP for small-medium companies field, I learnt the reasons for the lifecycle of an ERP product is a long road of tears and disasters. I’m not smarter than others (I often think so, but I’d be better not to tell everyone…) so it’s pretty obvious these reasons are clear to most experts.

Read more of this post

Open Source as business model

If you did not notice, than you’re quite blind: Open Source software surrounds us. We’re in the middle of the final battle among two business models and if you’re blind now, then it’ll be your pockets to regret it.
We’re talking about Open Source software.
Almost each one of you use one at least once a day. Want the evidence? If you’re such devoted to software-you-buy not to use OpenOffice for writing letters and Thunderbird for writing e-mails, you probably don’t know that your Symbian-based mobile is totally open source.
In the past years I saw people going nuts with this idea, like the fact they’re using an open soruce product  will soon compromise their work and security. This not only is false, but totally wrong.
Another frequent reaction is: I love this software but I really don’t understand why all this talented people waste their time in something they don’t get paid for. Again, this is a WRONG concept.
In this little introduction to Open Source business, I will show you how this approach is not only introducing a new business model, but a model where everybody wins.

Read more of this post

Follow

Get every new post delivered to your Inbox.