Archive for January, 2005

TV de noantri

No, dico… dopo avere visto, rivisto e stravisto CSI (Fox non è il massimo quanto a varietà dei programmi), la fiction di Canale 5 sul RIS di Parma è davvero ai limiti del patetico. Al di là del fatto che Ugo Dighero, bravissimo, per carità, non è credibile (da un momento all’altro ci si aspetta che si giri urlando “mi hai mica chiamato Sandro?”), il parallelo è sconfortante: CSI ha delle simulazioni al computer che farebbero impallidire la Pixar, i nostri carabinieri simulano un incidente spingendo le macchinine su un plastico. E vogliamo parlare di Gil Grissom che ha la passione dei rollercoaster ipertecnologici mentre i nostri si rilassano con i calcinculo da fiera? A quando la versione nostrana di Ally McBeal con Nadia Rinaldi nei panni dell’avvocatessa glamour? O, in alternativa, si potrebbe proporre un remake di Friends con il cast del Bagaglino al completo.

Un minimo di dignità, che diamine…

JFDI works

This and this made me wonder today. Now, what do Google antispam measures and Daisy have in common? Well, they both somehow came out of the cold, with just very little discussions happening in closed circles, and they both are community praised as successful moves.

Looks like open processes are unable to produce successful stuff. Compare Google’s move with e-mail antispam measures: all of a sudden ten companies gathered around a table and more or less overnight handled us a solution (as questionable as it might be) on the blog spam issue. Meanwhile, standard bodies are still frantically trying to reduce the spam load on our mailboxes. Compare the ultra-proprietary Daisy repository, courtesy of a small team of very smart guys focused to build a practical solution starting from a clean slate, even is that means don’t giving a damn about standards, with JSR170, where political issue have substantially delayed and, while they were at it, diluted quite a bit what could have been a very useful standard.

There are much more examples (JDO vs. Hibernate and Linux vs. Hurd just to name a few), but it all boils down to how difficult can be bootstrapping a successful open process, while the open system seems to work really well in picking up from an existing (and sound, mind you) foundation. Starting from scratch in the open tends to lead to bikeshedding, political fights, delays and failure, JFDI and then start the open route seems to work. Point taken.

The OSS Business Hub

The growing interest for OSS technologies, especially from mid-large enterprises, is struggling against the quite peculiar nature of Open Source shops on the market. Give or take a few large companies, the OSS business ecosystem is built upon a quite impressive number of consultants, associates, and small shops: this has to do with the coarse nature of Open Source. People (and companies) have diffferent backgrounds and are committed to different technologies, yet even though most readers of this post will have no problem understanding why Linux shop doesn’t support Velocity, from an external (yeah, you can call it dull) point of view, there is a radicated vision of Open Source as a whole. Deal with it.

If we consider companies making up the OSS market, there is an incredible amount of knowledge and skill floating around. A good portion of the shops out there, despite being little more than one man shows, are clearly able to solve most business needs and complete successfully complex projects. However (again, this is the perception of our small part of the world) this clashes with the needs expressed by large players: the big ones are catching up and realizing that they need an Open Source strategy but still there is a clear struggle in finding the right partners to help them out.

A large corporation has a lot of issues in managing business relationships with small shops: they do hire consultants, and of course they are used to talk with large firms, but a small sized company scares them away. There are multiple reasons for that, some of which associated with practical issues (think about ISO9000/Vision 2000 compliance): mostly, however, there is a clear feeling of uncertainty associated with small shops.

As a consequence an interesting trend is emerging. Markets are usually based on a pyramid of suppliers: your sandwich is sold you by a shop buying tens of loaves of bread from someone who has bought a ton of flour from someone else who stocks truckloads of wheat products. In the traditional software model companies are used to assumes that stuff is bought from VARs partnering with a wholesale providers of technology such as Microsoft, IBM or Oracle.

Open Source based projects don’t work this way (again, with a few exceptions): the final user is supposed to get code from the source and then start looking for support and integration, delving into the jungle of those scary small shops and with no real competence to understand and measure the right partner. There is a clear lack of a trusted source, where “trusted” has a wicked association with “large”: I know this is the old “who do I sue if something goes wrong” refrain, but reality shows that this is the current market situation, at least here. The quest for one-stop solution is alive and kicking here, and traditional players in the consulting business are getting ready to answer the demand.

Of course this is impossible to achieve internally, even to them: there are just too many Open Source technologies for a single company, no matter how large, to master. The emerging model, then, tends to subvert the traditional supply chain, and there is a clear trend towards the “hub” model: a somehow OSS aware traditional consultin company gathers a bunch of small, specialized, shops, looking for the technical skills they’re missing. They continue of course to provide legal backing, a trusted brand, Vision 2000 compliant processes, and all those features large customers are looking for. The actual projects, though, are mastered head to toe by their small partners or consultant networks, with the large guys formally backing the gigs knowing little or nothing about the underlying technologies and the final customer ignoring who’s really behind his project.

This is clearly a VAR model (albeit wicked), but it’s somehow weird to see it happen in the software arena, within an inverted pyramid environment, where wholesalers are vehiculating small (and unknown) suppliers. I’m starting to wonder whether it would make sense to push this model forward, making the process more explicit. This could happen by creating OSS “hub companies” whose role would be scouting viable and proven OSS small shops while providing accountability and marketing/process overhead large customers need. The key, though, would be retaining as much transparency as possible towards both the backing network of specialized small shops and the final customer: this isn’t easy since it would require a clear perception of value from the underlying participants (something that isn’t granted) and a notable amount of trust from the customers. However, the more I think about it, the more I’m convinced that there might be a way to make this really work.

Cronologia della sfiga

  • 11/12/2004: mi vengono rubati i bastoni da golf
  • 19/12/2004: il campo da golf chiude un mese(!) per ferie
  • 20/12/2004: arrivano i nuovi bastoni
  • 21/12/2004 – 17/1/2005: si contano i giorni che mancano alla prova dei bastoni nuovi
  • 18/1/2005: riapre il campo
  • 18/1/2005: nevica

Non è solo che ci vede benissimo. La sfiga centrerebbe da Milano un pisello in volo a Mach 2 sul lungomare di Riccione. Di notte. Con la nebbia.

It doesn’t have to be a madeleine…

… to take a walk down memory lane. A few weeks ago I started thinking about my grandma’s ravioli, something I didn’t eat since, well, at least 10 years or so. Boy, I loved that stuff: when I was a kid, from time to time me and my brother used to spend the weekend with our grandma, and quite often we were rewarded with this wonderful bag of mixed roasted meat and vegetables, sprinkled with cheese and stuffed into a weird looking pasta envelope. All handmade, of course. I loved waking up late in the morning and sip a giant cup of bread and milk in a warm kitchen while my grandmother was tossing out ravioli at lighting speed: those were times when you were pretty safe in eating raw eggs, so whenever my grandma wasn’t looking, me and my brother used to quickly steal some ravioli and eat them (raw!) from the wooden board they were resting on. I still remember my grandma yelling at us…

(Note for non-italians: I’m not talking about the ravioli you’ve been used to. The shape and filling are quite different, and you can find them only in a rather limited area of Piemonte. If you want the recipe, look for “ravioli al plin”. Actually someone may argue these aren’t ravioli but rather “agnolotti”… I never quite got the difference, but we always called them ravioli, so I’m reluctant to change).

Anyway, last week we were at my parents place, and I asked my mother about the original recipe of grandma. Armed with the result, it took me the best part of a Sunday to prepare everything: I had to roast beef and pork meat, cook vegetables, mince all together, prepare the dough, roll it, lay down small nuggets of filling, pinch everything (“plin” in Piemonte means “pinch”). In the end I think I came pretty close to the result I remembered (I can do much better on the filling, though):

Ravioli al plin

The result, seasoned with the roast meat sauce, was definitely impressive:

Ravioli al sugo di carne

My journey into memories, though, reached the top when I figured out that I’m an adult now, so I qualify to eat ravioli with wine, something my granpa used to do. Yes, you got it right: no seasoning at all, just pour some good red wine in a cup and fill with hot ravioli. Eat it all and, in the end, sip the warm wine, enriched with flavours coming from the ravioli:

Ravioli al vino

The really good news is that we managed to cook and eat just half of the ravioli load we’ve been doing yesterday… the remaining ones are in the freezer waiting for the next occasion: want to be my guest? :-)

Maybe I’m not that much open, after all…

… at least this is what I thought reading Matthew’s idea (and some very interesting comments from Ben Hyde) about collaborative editing of a business plan. I had a lot of weird feelings, since I didn’t quite like the idea at first, and I started questioning myself: after all from “Open Source” people you expect no problem in being open on everything, right?

Well, not really. There is quite a leap between building a shared source platform/toolset tools and sharing a business idea: when building software, you don’t have to share the whole big picture. In our small Cocoon world we have people doing XML publishing, others doing integration, some EAI, mobile stuff and even embedded projects. We are able to work together and provide some excellent software exactly because we don’t need to be tied to a common and very specific goal: we build frameworks, and then everyone is free to specialize them. Not surprisingly, with the notable exception of a few infrastructural projects (Linux, Samba, Apache HTTPd) and a whole wealth of desktop stuff, the real value of Open Source today is really about libreries and frameworks. Software commons, remember?

Business stuff is different. Sure enough, my dream company is much more open to a network and “social” approach than the usual stuff we are used to see, and I reckon that I’m not alone. The problem of business, though, is that everyone has his own approach and it’s incredibly difficult to have people agree on even the silliest thing. Companies are not democracies, business people have a different mindset from Open Source developers and conversations about companies tend to either dilute into bikeshedding or stall because of different interests and unwillingness to disclose just everything.

Now, Matthew has a point in stating that this would work only for the “well established” kind of stuff, such as a good ‘ole services company: no one will actually disclose their killer app on a wiki (here comes a problem with ego: everyone believes his approach is unique and killer in some sense). However, this dilutes value quite a bit: I expect this would end up into some “Business Plan 101″ kind of thing, with some nice boilerplate, a few interesting ideas but nothing mindblowing.

Not to mention that the read/write ration would probably be abysmal, with many readers (cloners? spoilers?) and few writers: unlike Open Source, there wouldn’t be many itches to scratch or bugs to squash taking advantage from a collaborative effort. And even writers won’t disclose everything, keeping the valuable stuff for their own business plans (I’m ruling out customers from the beginning, I just don’t expect they would participate at all). Finally, this experiment might work only once: I don’t expect Matthew’s approach to be reproducible.

Anyway, if Matthew is serious about building a business plan framework for a next generation company, I will definitely keep an eye on it and possibly contribute, at least to see what happens: this is exactly one of the cases where I just love to be proven wrong, and very fast to adapt if you manage to convince me. Or was it just a modest proposal? :)

Update: Ross and Steven are commenting my entry, and I’m afraid I haven’t made myself clear enough. Steven, my point isn’t quite about being afraid of people stealing ideas. That was just a side note, to further prove my point that opening up a business plan won’t bring any really useful feedback because either (a) you’re not saying anything new, so since there is no value to protect, there is no interest in participating or (b) you do have something really new and really cool, and in that case you wouldn’t be opening your plan anyway. Ross: you’re definitely right in stating that mutual cooperation can bring lots of advantages in people sharing a similar business idea with no competition overlap (we have been trying that and got some very nice results). Getting together to share hints and thoughts is beneficial indeed, but it’s nothing new: corporations, consortiums and other associative forms have been there forever. Wikifying the process can help quite a bit (open participation and all that), but it’s just a (much better and) different way of doing the same thing.

John Fante – La confraternita dell’uva

Un libro tanto bello che fa incazzare. Per non averlo letto prima. E dire che pensavo di avere svuotato lo scaffale a suo tempo, ma non si sa come questo mi era sfuggito: non c’è solo Bandini a questo mondo. Ed è bello scoprirlo. Per fortuna che c’è una moglie che ci pensa: quando si va in libreria io giro per ore e non trovo nulla, poi a casa attingo a piene mani dai titoli altrui. Si, sono pigro, ma d’altra parte c’è chi sceglie meglio di me…

La prefazione di Capossela è la ciliegina su una gran bella torta. Nella mia somma ignoranza non sapevo che da questo libro fosse nata l’ispirazione per uno dei pezzi più belli dello stralunato Vinicio (Accolita di Rancorosi), ma fa uno strano effetto capire alla fine chi sia quello Joe Zarlingo che fa le carte.

Fa anche specie vedere come possono passare oceani e generazioni, ma intanto noi italiani siamo sempre mammoni (e spesso anche mammacchioni). Magari a modo nostro, ma mammoni. Altamente consigliato, e in qualche modo catartico.

P.S: parlando di Capossela, sul sito di Radio tre c’è questa chicca molto interessante e quasi ipnotica. Continuo a preferire il Vinicio canterino, ma anche il Capossela scrittore (e soprattutto lettore) non è per niente male.

Review: Holub on patterns

So, how do you become a good OO programmer? I mean, not just someone who knows about object, classes, encapsulation, polymorphism and all the yadda-yadda, but a professional who really forgets about the procedural paradigm and writes network of cooperating objects the way they’re supposed to be?

Literature, at least the one I know of, doesn’t help much: of course there are countless books on OOP and shelves full of pattern stuff, but still I felt there was a hyatus between “academic” books, written for people with a solid CS background (being myself a lawyer, I don’t quite qualify), and “practicioner” stuff such as “Teach Yourself Java In 48 Hours, You Dumbass Web Developer”.

The GoF book, for instance, is a typical example of an academic book that scares people away, especially in these days where C++ and Smalltalk aren’t quite mainstream: what I was looking for was a title that I could give to one of my junior staff members to let them know why I am so picky when it comes to pruning unneccessary ifs, getting rid of extends altogether and reduce accessors to a bare minimum.

A Slashdot review was incredibly timely: I was at Apachecon, and the following day I was lucky enough to win an Apress book raffle: the booth people were so kind to send me a copy of this book, since they didn’t have it on site.

Now, the book. First of all, it could have used a better title: patterns are there indeed, but this book is really about writing robust, maintainable and solid object oriented software: Chapter 1 and 2 are a collection of pearls of wisdom pervaded with reality checks. If you are either a procedural programmer wishing to go the OO way or even an OO programmer feeling like being built on sand, this book is definitely for you: the first 80 pages will be worth their weight in gold. Oh, and of course you’ll get patterns as well, lots of them actually, explained in a clear and practical way, by looking at real code (even though the same applies to a number of other books). After reading Holub on Patterns, you will be able to make much more sense of GoF.

If you’re a seasoned programmer, on the other hand, don’t bother. But in that case there is a good chance you’re leading a team of people: passing this book on to your juniors can make the difference. I’m confident it will for me, and I would really appreciate other suggestions for similar titles.

Giuseppe Genna – Nel nome di Ishmael

Il primo libro del 2005 è un regalo di Natale di mia cognata, che già l’anno scorso mi ha fatto scoprire Joe R. Lansdale, cosa di cui mi dimentico sempre di ringraziarla abbastanza.

“Nel nome di Ishmael” è il classico libro con un intreccio intrigante e inquietante, del genere che ti fa pensare a quanto noi poveri mortali possiamo conoscere solo una frazione minima di come vanno le cose a questo mondo. L’idea è buona e verso la fine il racconto si fa avvincente (come capire se un libro è avvincente? Una buona metrica per me è considerare i luoghi e i momenti in cui lo si legge: in questo caso ho letto alcune pagine mentre mi lavavo i denti… e garantisco che non è la posizione più comoda cui pensare, ma d’altra parte io sono abituato a leggere più o meno ovunque).

La prima parte è invece piuttosto lenta, e molti brani rasentano l’irritante: capisco la ricerca estetica, capisco la scelta delle parole, capisco tutto ma mi permetto di dubitare che a trentadue anni ci si possano permettere frasi come “il giorno ha due metà, come la mente: una è bianca, l’altra è segreta, perciò è buia. Durante la metà bianca del giorno la fatica rodeva Lopez in chiaro”. Discutibile anche la scelta delle microcitazioni letterarie a inizio capitolo: dopo i Sepolcri di Foscolo, è dura digerirne altre senza che il pensiero corra al termine “spocchia”.

Comunque, un bel libro: i dubbi che mi ha lasciato meritano al di la’ di tutto una prova d’appello alla prossima visita in libreria (rigorosamente Feltrinelli, possibilmente quella di piazza Duomo).

Come non promuovere il golf…

Diciamo che avevo una scusa buona… chi, avendo appena ricevuto i nuovi bastoni e avendo un giorno di ferie, riuscirebbe a resistere e a non andarli a provare? Si, è vero che era la vigilia di Natale, ma in fondo ogni giorno è buono per giocare a golf, no?

No.

24 dicembre 2004. Campo di Lainate. -3 secco per tutto il giorno. Green chiusi per ghiaccio, bandiere provvisorie sul fairway. Per fortuna, almeno, le palline non potevano andare in acqua. Si fermavano sul ghiaccio… devo comprare un peschino da cinque metri.

Pallinaggio sul ghiaccio...

D’altra parte il campo di Lainate non è che sia proprio quel panorama bucolico immerso nella natura di Arcadia. E il tempo non aiuta:

Desolazione e freddo!

(quello nel circoletto sono io) Ma tutto sommato si sa che i golfisti sopportano questo ed altro. Il problema è se questa splendida giornata arriva quando, dopo mesi di lavoro ai fianchi la moglie ti dice che tutto sommato potrebbe anche provare, ti accompagna e, anche per non schiattare del tutto dal freddo, commemora l’impresa con le opportune fotografie a imperitura memoria… vista la giornata mi sa che più che al golf avrei dovuto convincerla a darsi al grog.