Author Archive

1984 giorni di propaganda negativa contro la Apple

Friday, July 31st, 2009

Il prestigioso giornale on line osnews ha promesso 1984 giorni di pubblicità negativa. Tutto è nato dopo il rifiuto della Apple di pubblicare Google Voice app sul loro store. E’ stato l’ennesimo rifiuto che ha fatto traboccare il vaso per l’editore di osnews. L’obiettivo è ottenere una piattaforma veramente aperta, libera dal controllo e senza restrizioni dei gestori che vogliono sfruttare tutto al massimo. Finchè questo non cambia anche per me le alternative che promoverò a scapito del iPhone sono chiare: Android, Symbian e perfino Windows Mobile.

All your base are belong to us

Friday, April 24th, 2009

Oracle ha comprato la Sun per $7.4 miliardi. In attesa che l’accordo venga approvato pensiamoci un attimo. La Oracle ora possiede Oracle DBMS, MySQL e Berkley DB.
E proprio ora di dire Tutte le vostre basi ci appartengono!
Meno male che uso postgresql 🙂

Google App Engine introduce Java

Friday, April 10th, 2009

E’ un dato di fatto che spesso, la piattaforma di sviluppo che scegliamo è collegata con i servizi di hosting che esistono. Le preferenze personali semplicemente passano in secondo piano. LAMP è un successo mondiale sopratutto perche esistono migliaia siti di hosting pronti e a basso costo. .Net è un “fallimento” lato server perche i server non sono gratis e aperti. Java ha i server gratis e aperti, ma presenta i problemi. Se un host provider mette a disposizione un application/servlet container, come dare un servizio che scala e contemporaneamente proibire ai sviluppatori di fare idiozie che potrebbero mettere in ginocchio il sistema o lasciarlo meno sicuro, alla fine avete a disposizione tutte le API del JDK. Aggiungiamo anche il fatto che i requisiti neccessari sono più esigenti in termini di RAM e CPU messi a confronto con LAMP. Un problema non da poco che gli ingegneri della Google hanno deciso di affrontare e offrire una soluzione tutta loro.
Google App Engine, che fin’ora offriva Python come piattaforma di sviluppo, ora offre anche Java. Per il momento, è in fase di “prova” e limitato ai primi 10’000 sviluppatori che faranno la richiesta (10 siti a testa).
Chi sarà il fortunato, vedrà che la Java VM è stata modificata, le modifiche principali sono

  1. Non poter scrivere sul file system (ma potete leggere)
  2. Non si possono aprire delle Socket, ma si possono utilizzare le API di google per eseguire richieste HTTP e HTTPS
  3. Non si possono creare dei Thread, le richieste devono essere “servite” in tempo limitato (30sec)
  4. Altro, qui ci sarà da divertire sicuramente man mano che scopriamo tutte le limitazioni e modi per evitarle 🙂

Esiste una lista dettagliata delle classi del JDK disponibili per lo sviluppo e la guida per il sviluppatore e l’SDK, e sono messe a disposizione anche delle API proprietarie per la persistenza dei dati (api JDO e JPA tramite la libreria DataNucleus), autenticazione utenti, mail, memcache, modifiche immagine, task schedulati e fetch di URL. E’ stato publiccato anche il plugin per Eclipse con l’SDK e GWT incluso.
In breve, prevedo che avremo tantissime applicazioni che d’ora in poi proveranno a fare vita e miracoli per stare dentro questi limiti. Già ci sono post in giro per vedere se il i vari framework possono girare su App Engine e si sta già lavorando per fare le modifiche neccessari (es. struts 2, osgi).
Il hosting è gratis con il limite di stare al di sotto i 500MB di storage e 5 milioni di pagine servite al mese, per andare oltre bisogna attivare il billing.
Una piccola rivoluzione è iniziata (di nuovo) grazie a Google e ora, andiamo avanti per creare il prossimo milione di siti 🙂

Vala, linguaggio a cavallo fra C# e C

Monday, July 7th, 2008

Delle persone in gamba hanno avuto una idea per un linguaggio molto interessante. Hanno preso come modello c#, la libreria di tipi la stessa del gnome GObject. Alla fine, i sorgenti vengono compilati in file C e header, non soffrendo di overhead del runtime .net e non neccessità di un runtime di esecuzione. Fra le varie features: interfaccie, proprietà, segnali, foreach, espressioni lambda, inferimento dei tipi su variabili locali, generici, tipi non null, assistenza nella gestione della memoria, gestione delle eccezzioni, ecc. Se vi stuzzica potete cercare Vala qui.

My new favourite NetBeans 6.0 feature

Thursday, July 12th, 2007

I was programming away when I unintentionally deleted a file by mistake. As by law, that same file was modified and not committed in the svn repository. Thankfully NetBeans has a slick local history as well and you can revert a deleted file. This just saved my evening. While the subversion support in NetBeans was a nice inclusion into 6.0 it was flaky at moments and I had issues up until M9 but it would seem it was solved in M10 and with the local history it really does offer a nice feature set.

Revert deleted file screenshot

Borland/Codegear read user feedback

Monday, July 9th, 2007

As I’m registered on the Borland developer network up until now I’ve been given the chance to answer two polls on the road they should take in the future. I personally dropped using the JBuilder IDE long time ago as it started to have too great machine requirements and also because of it’s mostly commercial orientation (something I didn’t need back then). When I received the last poll I’ve been using Eclipse in and out (and also tried their excellent Together for Eclipse IDE for architects) so as I was really hooked up on it I of course gave full support for to migrate JBuilder to Eclipse as well. Personally I don’t really know what did the JBuilder community loose with this nor do I care to make any comments on JBuilder 2007 but what I find really great about Borland is that they do these polls and actually take the time to analyze what do their potential and current users want. I really think that is a positive attitude towards software development that I hope in the long run will help CodeGear recover the grounds on the IDE market.

Quercus, a Java PHP implementation

Monday, July 9th, 2007

The fine people of Caucho Technology did a 100% Java implementation of PHP5 (released under GPL) called Quercus. While I don’t know PHP as well as Yoghi it presents a interesting platform that has an enormous community. As always, having choice is a great thing and this look like a really promising project that could allow PHP apps to scale better as it compiles to bytecode and enables usage of native Java libraries.

Omondo vs Soyatec?

Monday, July 2nd, 2007

Couple of weeks ago I’ve tried a UML designer by Soyatec. They had a nice web page and a free version of the tool so I said to myself why not. In fact I must say I liked it very much even though it has some limitations over the commercial version and a bug in diagram exporting. It also features a nice reverse engineering of your existing code to a Class diagram.

The first thing I noticed was that it didn’t do any stories that my project was in code repository. This is a strong drawback that the free edition of Omondo has, a tool that I’ve tried on numerous occasions and also always had issues with projects that are in version control. One more thing I don’t like about OmondoUML was the fact that it used annotations in the documentation (ala xdoclet), instead separate files.

So there I was browsing the eclipse site and looking of new eclipse plugins to pick up when I saw this nasty thread on the EclipseDatabase plugin. It would seem that Soyatec was founded by ex-Omondo employees and Omondo is having issues with the Database plugin that Soyatec now distributes.

I think it would be ashame if Omondo sued Soyatec. The UML plugin shows some great potential and if a suit gets filed the only one that will get payed in the end will be layers and not developers, it’ll only set back both Omondo and Soyatec. Does anyone have any more info on this matter?

That said I think Omondo has really *great* modelling tools, even beside the doclet annotations and project-in-versioning issues. In fact I think I’ll download their latest plugin for the just released Eclipse 3.3 (Europa) which seems to bring very nice features on the table and I hope they are putting their modeling informations using the eclipse metamodel and in separate files.

To Omondo and Soyatec,

You are competitors, but  you should put your axes aside and do what you do best and compete on technical merits, if you start litigations other projects can and will surpass both of you. Be good.

MS DLR and Silverlight

Wednesday, June 27th, 2007

Some time ago MS did the Mix’07 conference. We didn’t publish any articles on this mostly because there is a lot of material to digest but I think we can sum the most exciting things that came out of it as DLR and Silverlight.

Q1: What is your language of choice?

Q2: Would you like to deliver your app to anyone through the browser?

Q3: Would you like to offer some sizzling graphics?

Now, if you answered Q1 with Java, you’re in luck as Java has this thing called applets and you can reach a lot of people but not too many as folks don’t like big downloads and difficult installs, you might have issues with Q3 but you could do some nice apps. If you answered Q1 with ActionScript, Flash is your tool of choice. Of course you’ve got great graphic tools, market penetration, but how big and complex can your application become, also what is the performance you can expect?

Notoriously .Net already runs a bunch of languages, and it already has the capability to run applications in a browser. Has anyone seen any in all these years .Net was out in the wild? Not me.

What the “cool guys” doing right now is Ruby, JavaScript and Python. All these languages have one thing in common, they are dynamic in nature. That opened a possibility for MS to further extend .Net in adding a layer that would expose .Net runtime internals and enable implementation of many more dynamic languages on top of it. This I think is the killer move. The “cool guys” don’t do things because they are just cool (which, let’s admit it, they are) but also because it helps them do more (stuff) in less (time) with (hopefully) better quality. The “cool guys” are also pragmatic and they appreciate a platform that can host their application to an potential audience of 1.1B users. The “cool guys” actually produce applications or what people call killer-apps and they drive the industry.

So, some people went in a room and said, let’s get some cool basic stuff out of WPF, make it really small and lean and add beside the .Net runtime the DLR, make it cross platform (initially MS ships a Windows and MacOS plugin that will run under IE, Firefox and Safari, mono has produced a Linux prototype in just 21 days) and lets call it Flash-Killer. Someone objected and they renamed it so it became Silverlight, but that is another story.

Just think, you can build an application that can run in any browser, on any platform in any language.

Silverlight is definitely a step backwards from WPF as new tools will have to be created but that does seems to be a small price to pay if people adopt it early and start developing as time to market is indeed even more critical then ever. Graphically WPF is in my opinion best served with the Expression suite and has a great component model, Adobe has great experience and when finally Apollo ships it’ll be just as good if not better, but they target a single language. JavaFX (could they choose a worse name with all the Java/JavaScript confusion?) at the moment seems to have rather poor tooling support but rather live open source community and have the muscle to push the runtime to many devices, big and small, they also would seem to be moving to a smaller runtime at the cost of dropping some compatibility (yet reifying generics is still a no no, geez).

What will this bring? We still don’t know. Will we see the Web fracture having Web (2.0), Flash, Silverlight, JavaFX+applets all chasing the same goal? It’s hard to tell, on one hand these new platforms offer applications that were not possible to create before thus giving more value to the web and to the final users, but on the other it’ll fracture developers, tool sets and bring more interoperability problems. SOA’s and WS’s will finally find their ultimate cause of existing (REST and JSON as well).
If I see one thing in danger of this fracture is loosing ontology’s, loosing global knowledge that can be harvested and automatically linked together on the web if we keep the web simple. Something tells me in the end both worlds will coexists and we’ll just have more and more options instead dumping one for the other. What do you see?

JQuery Interface resizable div

Tuesday, June 26th, 2007