OSWay 10 years later

September 2nd, 2010 by Marco No comments »

As I briefly mentioned in this post I founded a company called OSWay – The Open Source Way – back in 2000 with a friend of mine, exactly 10 years ago!

A bit of history: in 1997 I went live with my first ever website on Geocities, it was called C++Warriors and it was all about…C++ :-) News, articles and tutorials were in Italian and that was a scarse resource at the time so much so that it got featured on a few magazine (the physical ones!) and got quite some traction. That’s when I met all kinds of interesting people like Alex Martelli of Python and Google fame (at the time he was able to spit out a 30-part tutorial on Win32 programming in a matter of days) and Ugo Landini to name a few.

In 1998 I started thinking about the success of C++Warriors and decided that if a little amateurish website about C++ was so successful it was due to the sheer lack of programming resources in Italian and I started planning what would then become Programmazione.it in 1999 (although I have nothing to do with it since 2003 it still exists and it’s 11 years old now!): the first Italian website about programming with news, articles, tutorials and soft dev product reviews all in Italian.

To do that I needed to find people willing to write and publish material in Italian about as many programming languages as possible and that’s when I met Filippo on the #programmazione IRCNet channel in 1998 who will then become my business partner in both Programmazione.it and OSWay (I now regret a lot letting osway.com, .net, .org and .it expire a few years ago :-( )

At the end of 1999 Filippo and I also started working together for a few customers and came up with a product idea around “making information free”, sharing and collaborating on-line, etc, etc (all pretty common stuff nowadays), founded OSWay S.r.l., sold part of it to a public company to get some capital and invest it into the product development. We eventually froze the product and kept working as a software house specialised in the use of Open Source. We did all sorts of things from partnering with SuSe Italy, to developing the world first Kylix enterprise-grade POS application (there used to be our case history on Borland‘s website before the CodeGear split), community websites in Java and PHP (Freestation.it), Linux-based embedded software for touch-screen, industrial-rugged appliances and more.

We started working on the product a few months before incorporating but we eventually incorporated in September 2000, exactly 10 years ago!!

There are many noteworthy things about that venture, including the fact that Open Source was at the center of everything we did, starting from the company very own name 3 years before the Open Source Initiative adopted bylaws and applied for recognition as 501(c)3 nonprofit in 2003 but I just wanted to celebrate the 10th aniversary with a post and this is it :-)

UPDATE: Filippo dug out the flash teaser that we prepared in 2000 for OSWay and the product. Yes, it’s flash and yes it’s heavy but it’s still beautiful! :-D

» Read more: OSWay 10 years later

Focus on what won’t change

March 23rd, 2010 by Marco No comments »

Last weekend I read Rework, the new book by 37Signals and as I tweeted: “nice although nothing new if you’ve been following stuff like Agile, Getting Real, Guy Kawasaki, Lean Startup, etc”. That doesn’t mean it’s not worth reading even if you indeed have been following all those things and more for it’s a very enjoyable read, it’s easy to find yourself going back and re-reading bits and pieces but most importantly it helps you reflect and what you‘ve been doing lately.

There are many things that resonate with me and among those one in particular that nicely summarises what I’ve been doing for at least the last 4 months in Sourcesense UK: “Focus on what won’t change”

If you visit our old and a little stale website (currently working on a complete refresh) you are likely to end up with something along the lines of: “ok, these guys do Open Source stuff and Agile stuff across Europe, have a number of Open Source partners all over the place and employ as many OSS committers as possible” which is cool but doesn’t really tell you much about why you should engage with us rather than someone else that “does Open Source stuff and Agile stuff”, does it?

So we started an exercise of introspection plus some pie-in-the-sky thinking to answer questions like: what don’t we want to change? what do we want to build on top of? what are we really good at? what are the gaps from here to there? how can we fill those gaps? and so forth.

We came up with the following:

Sourcesense UK

and although this was intended for internal use and therefore assumes all kinds of background knowledge you likely don’t have, I’ll do my best to describe it and, more importantly, draw a line where “things won’t change”.

Sourcesense is built on top of 2 pillars if you will, and these are never going to change because that’s what we are good at, what we enjoy doing and what we can pour ourselves as people into so that we can “Decommoditize our product” – another Rework essay. Those pillars are:

  • Software Craftsmanship
  • Open Source

While the former is hard to achieve but easy enough to understand (good starting points here and here), the latter is less obvious than you may think therefore I’m going to expand on it later in this post.

Going quickly over the rest before getting to the meat: the 2 pillars are then sort of wrapped by what I’m calling ALM for lack of a better term: it’s simply the collection of tools, processes/approaches/methods and ideas we like to use day in, day out. On top of this block there are the domains we specialise in: Enterprise Content Management, Enterprise Search and Business Intelligence but I won’t be writing about these in this post as they are not part of what won’t ever change. Everything is topped off by good consulting skills since one thing is being great developers and another is being great consultants: we want to be both to the advantage of our customers.

The Open Source block

I’m not just referring to “the code is available and is free” here, but more importantly to the belief that there is much more to Open Source than just software. Or to be more blunt: we believe Open Source is only a byproduct of participation. Would be stupid of me to spend hours trying to distill this when I can reuse something Gianugo Rabellino wrote sometime ago in an internal discussion thread:

“What we strive to do is helping companies making sense of Open Source, companies that maybe initially are driven by price pressure but more and more oriented today towards a better understanding of the dynamics of doing things together. Our job is having them come for the price, and stay for the community. Or drive them directly to the community, that works as well – as long as they understand the new way of dealing with technology and how that should open conversations rather than confrontations.

That’s an ambitious goal, and something well out of our reach unless we fully understand the Open Source world. This is why we live and breathe by committers, people who know how to read a license, people who are not scared to participate in a group, people who know how to reach for help and contribute solutions. Our Open Source consultants need to have a firm grasp of what Open Source can provide, and try to pilot the big corporation ships into the open port by telling them when to watch out and what is the best place to steer. In a nutshell, the Open Source side of Sourcesense is our understanding of the group dynamics behind software today. We know how to choose software beyond the technology bit, and we understand when we are talking about open source, and when open source is just smoke and mirrors.

To that extent, and using the openness gauge to measure solutions out there, we try and find the best compromise between good technologies, open vendors listening to their customers and the community and yes, market reach and momentum because at the end of the day we need to pay the bills and we like easy wins from time to time. We then end up with a suite of products which, to different degrees, are Open as open can mean.”

That’s what won’t change in Sourcesense because that’s what we are and we believe in.

1 year in Sourcesense UK

March 12th, 2010 by Marco 3 comments »

I know it’s a cliché but indeed I cannot believe 1 year has already gone by! My ‘A new challenge‘ post was published on Monday 16th March 2009, the day I left ThoughtWorks and joined Sourcesense as the new UK managing director.

Next Monday will be the first day of my second year and as it happens such a milestone is a good point for some reflection and although not everything can go into a blog post (either because it’s too long, too detailed, too hard to put down in words or simply private), I want to try and list the major good and not so good points of this ride:

Good

  • since March 16th 2009 Sourcesense UK has hired 8 great new people (and is currently looking for more on both the sales and technical side): Huw, Tom, Peter, Nigel, Gustavo, Edoardo, Vikrant + an unnamed one who is starting shortly. If you consider that I spent the first 4 months getting up to speed, looking after existing customers and slowly building a vision for the UK office, that means we hired an average of 1 person per month and because we are very picky (remember, I come from ThoughtWorks ;-) ) that means interviewing something like 52 people to narrow down this 8. Although we are looking to hire more soon – in fact contact me if you are a software crafts(wo)men who love Open Source - I feel we have a great team in place now, and our customers agree!
  • One of my goals has always been to build a truly multicultural office and we are getting there as we’ve got: Italians, British, Brazilians, Slovaks, Indians. As you might have noticed already though we only have men, I’ll expand on this in the not so good points.
  • One of those 8, Peter, was in fact our guinea pig for internships. I wrote briefly about it back in August. I say guinea pig because Peter was the first one to go through a completely new idea never tried before and not happy with that we also split his time between London and Milan. I know for a fact that next time we do offer an internship we will do much better…
  • At any given time we’ve had at least 2 colleagues from the other offices (Amsterdam, Milan and Rome) working for UK customers either remotely or here in London and at some point there were more than 6! On top of that we are consistently working with 3 or 4 trusted contractors who, for whatever reason, prefer this type of contract (and not for lack of trying on my part! I love permanent people so that we can invest on them for the long term)
  • UK office

    London office

  • We moved into a new office opposite Spitalfields Market and I cannot tell you enough how much I love the location: great transports (Liverpool Street Station), easy to reach from airports and packed full of bars, pubs, restaurants, the market and shops. Oh yes, it’s also in the City ;-)
  • Every Last Wednesday of the month we all meet up in office from 5.30pm and talk over pizza and beers. I go through last month results being as transparent as possible disclosing all the numbers, discussing what’s coming up, new ideas, proposals and so forth and then leave the stage to whoever wants to present something they care about: technical stuff (from Scala to Lucene), customer stuff (what’s going on with project X), partners stuff (we had a partner of ours delivering a private webinar on their technology just for us). Of course we then head to a pub to keep talking and socialising :-)
  • It looks like slowly but surely we are heading in the right direction since we get more and more work of the type we like and less and less of the “not that interesting but it will help pay the bills” type. This can only be a good thing!
  • We had an energising OneCompany meeting in Amsterdam back in October: everyone flew in from the various offices and we spent a day in a beach house and a day in the beautiful Amsterdam office.

Amsterdam Office

Amsterdam Office

Beach House

Beach House

Kites by the beach

Kites by the beach



Not so good

  • We are all men! I care about diversity and I’ve worked with some pretty amazing women in the past (across the board, including developers) therefore one of my goals for this year is to try and recruit some of the best female geeks in town. I’m lucky because London is a great place for this and there are plenty of opportunities like London Girl Geek Dinners and Women in Technology
  • It’s always hard when new hires don’t work out and usually it’s whoever recruited them fault, in this case mine! With one guy, after the standard 3-month probation period, we decided to part ways because we realised we weren’t a good fit: what Sourcesense UK needed at the time didn’t match with where he was in his career. The thing I’m happy about is that we are still in touch (twitter, buzz, email). That’s what happens when you try your best to be transparent and up front.
  • This one goes with the nature of the business but it’s hard at times to make sure everyone feels part of the same entity when half the people are working on a customer site, some are working from our office and some others run around multiple customers offices. Last Wednesday, regular one-on-ones, company meetings and other activities are all geared towards overcoming this issue but I still feel like we need to do more and we will.

I’m sure the moment I publish this I’ll remember another 50 or so things but I guess the fact that the ones above come to my mind immediately makes them the most important ones to me.

Looking forward to an even better second year! :-D

On Internships

August 25th, 2009 by Marco 1 comment »

As we all (?) know finding good, senior people is relatively easy but finding good junior ones is not and takes a long time (and money). I see two strategies to tackle this issue:

  1. never stop the recruiting effort even when you don’t need new people. If you stop, it then takes too long to restart it and because you usually restart it when you have a need it’s kinda too late anyway
  2. have a proper internship programme in place.

While point 1 is, again, relatively easy although time consuming, point 2 takes a bit more effort but I think it’s worth it. The problem is: everyone is looking for good interns! In a competitive market I believe that having an Internship Program at the European level (in Sourcesense‘ case) gives us an edge.

Of course our values, principles, and commitment to OpenSource are great for attracting already experienced people but works somewhat less well with graduates who don’t necessarily have an opinion on Open Source or might not be that interested in our unique selling points because they are at the beginning of their career and couldn’t know better. At the same time graduates often shoot for the (very) big names so that at least by the end of the internship they will be able to put that name on their CVs.

What can we provide to a prospective intern that others cannot? As I said there are our unique values, principles and our strong commitment to Open Source, the fact that we don’t exploit interns by making them billable on customer projects and more. But I still think it’s not enough as other companies have that as well (not sure about the not exploiting bit…. :-D ).

So here is what we do on top of everything else:

  • an internship with Sourcesense means the interns will have a chance to work in multiple offices across Europe. E.g.: Peter, the first Sourcesense UK intern, started 2 weeks ago and is spending sometime with us in London but will be flying to our Milan office on Tuesday to spend 4 weeks there. This will give him exposure to Sourcesense as a European company rather than just a UK one and will give him the opportunity to build a relationship with colleagues there.
  • an internship with Sourcesense means spending sometime on a customer project/site and sometime working on and contributing to some open source project. As I said we are not going to bill an intern, it wouldn’t be fair neither in his regards nor in the customer’s. It’s a way to expose the intern to a real life situation rather than just keeping him away
  • an internship with Sourcesense means, if there is the opportunity, the intern can then ask to move permanently to another office/country. In my experience there is nothing more invigorating than working and living in a different country.
  • an internship with Sourcesense means we want to hire you rather then just exploit you for a while and then let you go :-)

Are you looking for an internship? Let me know ;-)

Italian Agile Day 2009!

July 30th, 2009 by Marco No comments »

And so it begins! The sixth Italian Agile Day will be held on November 20th, 2009 in Bologna – Italy.

The conference has organically grown:

  • Milan, 2004 -> 100 attendees
  • Milan, 2005 -> 150+ attendees
  • Milan, 2006 -> 180+ attendees
  • Bologna, 2007 -> 260+ attendees
  • Bologna, 2008 -> 400 attendees!!

This is a free conference for the community by the community and instead of looking for commercial sponsors we accept donations. Real donations as in no minimum amount required and more importantly people don’t have to donate in order to participate.

If you are interested in knowing more about how that worked, statistics and analysis about this aspect take a look at:

TwitterSheep 4 months later

July 19th, 2009 by Marco No comments »

On March 6th I posted my TwitterSheep tag cloud and today I generated a new one to see if and how my use of twitter has changed in the last 4+ months. Here are the two results side by side:

March 09 July 09
TwitterSheep July 09

Managing TO DOs

July 18th, 2009 by Marco No comments »

Over the years I’ve tried almost any system I’ve come across to manage my TO DOs and my time. Off the top of my head:

  • nothing, just a big mess :-)
  • a text file with all my TO DOs and notes
  • multiple text files, one for each area of interest
  • a calendar
  • a structured spreadsheet (resembling a product backlog + sprint backlog in Scrum style)
  • Inbox Zero
  • the Getting Things Done approach with pen and paper
  • the Pomodoro Technique by my friend Francesco
  • Google Tasks
  • various tools GTD style the best of which is Things for Mac (that I bought and is really a great tool)

I went back and forth a few times adding and removing tools and looking for the best combination for me and this includes not only the system but the supporting tools for someone like me who alternates days in office with days taking 6 tubes, 5 buses, a couple of trains and a flight here and there.

This is my current setup which seems to work better than others:

  1. Inbox Zero
  2. Google Tasks
  3. Google Calendar
  4. All Sync’ed up and pushed to my mobile (and the other way round of course)

Inbox Zero

I strive to empty my inbox as soon as possible and GMail labels help a lot here:

  • as soon as I get an email I apply the relevant labels
  • unless it’s really urgent I then leave it there for whenever I’ll be able to tackle it
  • depending on the importance of the task associated with the email I leave it in either unread or read state. This gives me a visual sense of how much important stuff is still in my inbox (unread) and how much is stuff that can just wait
  • an email stays in my inbox until I have done whatever needs doing then I remove it from the inbox
  • if I’ve done whatever needs doing but I want to make sure I’ll remember to follow up I’ll star the email before removing it from my inbox. Starred emails are therefore emails I’ve answered to but I should really keep an eye on (e.g.: if I don’t get a reply back in due time).
  • If an email requires both a reply and some other activities I’ll create a new Google Tasks linked to that email (More Actions -> Add to Tasks

Google Tasks

Google Tasks is where I dump all the tasks I’ll have to tackle. I like the fact that it can be as structured or unstructured as I want it to be. Some tasks can be very structured (due date, notes, links to an email, nested children and so forth) while others can be just a line.

Google Calendar

I do realise my use of the calendar mixes things up a bit: of course I put all my meetings, calls, conference calls, trips and the likes but I also use it to remind myself of deadlines for very important things. Hence it is a mix of things I need to do with other people and things I want to be sure I remember myself.

All Sync’ed up

I’m a push addict: everything must be pushed to my mobile and the other way round: email, calendar and tasks.

On top of that I like to have a dashboard-like view whereby everything is visible from one single web page and for that reason I’m missing more than ever the old Better GMail feature of having my email and calendar in the same (please bring it back!!). As a workaround I’m using the little google widget in the left column but it’s not the same (and it also pushes the Google Docs box down below the fold of the page):

2.5 months in Sourcesense…

May 26th, 2009 by Marco 2 comments »

…and nearly a couple since my last post: either I don’t have enough time to post or I don’t have anything interesting to say. Probably a bit of both :-)

The truth is that I’ve been very busy (and happily so) with my new challenge and even though I started writing this post with the intent to do a quick recap of the story so far I’ve realised it would take me too long and wouldn’t probably be that interesting for most of my (few) readers. So I thought I’d share only a few things that I found interesting about the business climate nowadays (at least in UK).

The biggest differences I’ve noticed first hand in comparison with only 1 year ago are:

  • high interest in Open Source and Open Development at C level: in the past few weeks I met 15+ C level people in Fortune 500 companies and all of them showed an active interest not only for the usual tactical reasons (a.k.a. cutting cost) but also for the more farsighted strategic ones. OK, I met them because OSS was high on their agenda in the first place but still! :-)
  • sales cycles aren’t longer than usual but companies are willing to commit only to shorter engagements (with likely extensions). This looks to me like an incremental and iterative approach and having preached it for years I’m only glad to see it spreading even though it’s driven by external factors (you know, the global downturn).
  • for the first time in ages companies are not that happy to pay NET 15 or NET 30. Coming from Italy where NET 120+ is the norm – if you are lucky – this doesn’t bother me at all. I know how to deal with it.
  • budgets are being slashed but there are still companies who get that investing in training is one of the things that will get them out of the downturn ahead of the curve and we are in fact improving our offering in this space. See the upcoming Maven Training with Jason Van Zyl Sourcesense and Sonatype will be doing in London on June 15-16 (shameless sales plug, I know…)

Back in a couple of months! :-D

BarCamp Apache Oxford: Agile and Open Source Development

April 5th, 2009 by Marco 2 comments »

Got back to London after having spent the day in Oxford at the BarCamp Apache Oxford (#barcampoxford).

Between meeting interesting people and discussing various topics Gianugo and I led a session about Open Development and Agility. As you might expect the topic is very broad and it’s easy to get sucked into one aspect or another (and even one specific practice or another) but I believe we managed to discuss quite a few interesting things.

The discussion started by showing a wiki page I wrote back in 2003 titled OpenSourceAsAgileProcess. Yes, the page is kinda stale now but it was my way to try and focus the session on values and principles rather than practices.

Of course all sort of questions and opinions came up about colocation vs distributed, programming focus vs management/governance and so forth but I hope I managed to get my main point across:

I see little value in mapping exercises (being it mapping XP or Scrum practices to CMMi or Open Development or whatnot). I see value in discussing commonalities and differences in values and principles and drive everything else from there.

Now, values are so high level that it’s easy to agree on them and then go about implementing completely divergent practices. That’s where principles come into play – those 12 principles behind the Agile Manifesto that most people have never heard of (or at least forget easily about).

From my point of view principles are what bridge the gap between values and practices: use the principles to drive the practices that help you realise the values.

During the session we took a look at the 12 principles in question and it became quite obvious to me that one of the reasons why it’s so hard to adopt Agile fully – whatever that means – in a typical Open Source project can be nailed down to one single word in the first principle:

“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”

As there isn’t necessarily a customer in the common sense of the term. It might be a whole community, the single developers working on the project or something else entirely.

Will need to think more about this and luckily a conversation started on twitter among a few people following the BarCamp and we are going to try and discuss this further soon.

Thanks for the day!

Productivity and Quality effects of TDD

March 18th, 2009 by Marco 2 comments »

In the May/June 2007 issue of IEEE Software magazine there was an awesome series of articles about Test Driven Development and I’ve just discovered that one of them – the main one – is now freely available: Guest Editors’ Introduction: TDD–The Art of Fearless Programming by Ron Jeffries and Grigori Melnik.

Go get it, read it all and spend some time studying Table 1 on page 28:

In particular the last two columns: Productivity effect and Quality effect