Open Source Software, Self Service Software

What everyone fails to understand about open source software, as far as customization goes, is that it primarily benefits technology companies who have the resources to develop it further and market the results. Individual programmers do not have the spare time to work on a massive project. Open source web applications are more likely to benefit from a community of developers because minor improvements are easier to make. I’m currently migrating to PHP because the ASP.NET community does not have enough open source web applications available.

This was a great read, Jeff.

I would ban the IPs of idiiots who submit first comments.

OpenOffice needs money. And management. But first – money. The combination of it being massive in size, and not too sexy kills it. You can’t just make patches to a 100MB C++ codebase. You’ll need to invest a month just to find your way around this thing. That’s commitment. Also, products this big can’t work with programmers designing the UI, somebody needs to write specs…

There is nothing wrong with asking the developers on an OSS project to focus on a single, common language, whether it is C++ or FORTRAN. First, any serious developer who is truly interested in the project should be able to learn whatever language it is that is being used. Languages are just tools. Second, on any project a common communication dialect has to be decided on, or no one can work on anyone else’s code. Then it becomes Open Source in name only.

Open source is not Java, it is collaboration.

The thing I always hate about the self checkout machines is that when they ask you to type in your zip code for the credit card you just used, the keypad they put on the screen is in a non-standard layout. Specifically, the bottom row consists of the number zero on the far right, not in the center, and the rest of the bottom row is a clear button taking up two buttons’ worth of space.

So for example

1 2 3
4 5 6
7 8 9
0 CLEAR

Since my zip code has a zero in it, I instinctively hit where zero should go - which is actually the clear button. So then I have to start over. Once, an employee was trying to help me check out (can’t remember why) and when I did the zero/clear thing she actually told me well now you’ve screwed it all up

I stopped shopping there. They closed.

Jeff,
Thank you for presenting an interesting topic.
I am, however, a little confounded by the analogy between Self Service and Open Source. In each side of the analogy you 3 tiers of involvement/concern to consider in evaluating success.
In your supermarket example of self service, first there is the store (the owning entity). Since Open Source projects usually do not have owners in the same sense as a corporate entity, we can compare the store to an open source initiative sponsor (such as SUN in the OpenOffice.org example). Next, on the open source side, developers are akin to the self-serve checkout system builders. Finally, in both cases you have the consumer.
As a manager charged with establishing and maintain vendor relationships, I spend a lot of my time thinking about ROI. In this analogy, you and others have clearly identified the ROI for each tier on the supermarket side. The store saves resource costs. The builders get paid for their checkout system. The consumer gets a higher level of control over the packaging of their groceries.
On the other side of the analogy, I don’t find the ROI as clearly. Approaching it form the opposite direction, it is clear that the consumer benefits by free or reduced costs. Also, the developers may benefit by community status, resume building and perhaps even employment by companies that appreciate the impressiveness of their work. These developer incentives have only potential ROI and so are suspect. At the Open Source sponsor level, things get really murky. What is the ROI of an Open Source project? I can only think of one; implementation of strategy. Perhaps (in the OpenOffice.org example) SUN would benefit by getting a “foot in the door” with a free product, or advertising. Perhaps they just wanted to hurt Microsoft’s Office product sales. Regardless, they did it because it was part of a corporate strategy not because of the ROI.
It has always been my opinion that I share with many others, and have heated discussions with Don Norman, and a long time ago Richard Stallman that the lack of clear ROI is the main disconnect with Open Source projects, and in this case why I feel the analogy doesn’t work.
MK

It is quite obvious that you don’t work work in the Open Source world.

Open Office is bad not because it is open source, but because the product is so poorly managed. This is true with non open source projects as with open source projects – poorly run projects produce sucky software.

However, the idea that Open Source is some sort of Socialist Internationale of programming is just out of touch with reality.

Scientific Atlanta and Tivo both base their systems on the open source Linux kernel. Google’s Android phone OS is completely Open Source, and so is the new Palm WebOS. Both of these are based upon Linux. I guarantee you that the people who work for these companies don’t work as volunteers.

Then, there is the Mac OS which is based on the open source BSD Unix operating system and the open source MACH kernel. Certainly Apple knows how to churn out money.

Then think about all the open source CMS and Blogging software that’s out there. Or Google, that behemoth which bases its entire operation on open source projects like Python, JavaScript, Linux, etc.

Open Source isn’t bad because it is all self service while propriety software is better because it is more consumer focused. It’s that well run projects will produce good products while poorly run projects will produce disastrous products.

Jeff missed the obvious Robotic Nation link, so I’ll add it here:

http://www.marshallbrain.com/robotic-nation.htm

Scanning a few items when you are in a rush is fine, but scanning a months worth of groceries is way too much effort for me.

As long as your customers are willing or gullible enough to handle the retail work themselves why stop there?

Give them an axe and let them slaughter the cow themselves, and butcher it themselves and wrap it themselves, weigh it themselves, price it themselves and bag it themselves. …

I love the part that says But to me it’s no riddle at all: nobody else in that store cares about getting Jeff Atwood checked out nearly as much as Jeff Atwood does.

If you don’t mention this, I just won’t think of it.

Had to be done - sorry Jeff!

@`Josh – WHY did it have to be done?

Heck wordpad is good enough for most jobs.

I’ll posit that anyone who finds Wordpad good enough for most jobs does not use enough features of Word (let alone any of the other products incorporated into the suite) to have a serious opinion about the utility of OpenOffice. Heck, Notepad is good enough for most programming, right?

I think the correct metaphor in this case would be to say you’re forced to check out someone else’s items instead of your own shopping list.

Self checkout counters are not all the same. In my local supermarket, there are two options: the belt kind and the scale kind. The scale kind seems like what you describe, where the bagging area is a scale that is supposed to be able to tell what you put in it by weight. They never work right. I have yet to complete an order with them that didn’t have issues.

The belt kind, on the other hand, uses an arch with laser or IR sensors to see which items go through. This is much more consistent, and works quite well. The only issues I’ve had with these are occasional freeze/lockups on large orders… obvious software bugs! :wink:

I second the other commenters about the hand-held scanners, too. They work extremely well. On the efficiency level, why load everything into a cart, and then take it out, and then put it back in, and then take it out again at your car? You get to skip one whole cycle with the hand-held scanners, and reduce the contention at the checkout.

I don’t like the self service lanes.

  1. Good checkout cashiers have tons of experience and can complete a transaction in half the time, easily.
  2. I like the social interaction with the cashier
  3. I met my girlfriend because she was my cashier. I’d hate to think that I could’ve been dating a self-checkout machine for the past 4 years!

don’t forget all this time the cashier messed up and over charged you
happens a lot at wall mart

Great article, Jeff. I like how you took the self-service concept and spun it full circle with OO.o

I always use the self-service stations too, but not because they’re necessarily faster. Checkstands at grocery stores always have these little LCD TVs which run ads non-stop, and which are not present at the self-checkout stations. I abhor those little ad factories; I would much rather do all the work myself than be a captive audience for any length of time. This emotional experience with grocery stores has so biased me toward self-checkout that I always prefer it, even in non-grocery institutions which don’t have the ad TVs.

As an aside, the practice of posting ad displays near checkout stations reminds me of your blog post about people who pollute forums with advertising posts, except instead of being victimized by my peers I’m victimized by the store I’m patronizing. I tend to interpret this practice (probably incorrectly) as a lack of character on the part of their decision makers. I would change stores entirely to avoid them, except that all the regular grocery stores have them now. If I start seeing these things on the self-checkout, I’ll probably stop going to grocery stores entirely and just shop at Trader Joe’s or something.

My bugs are not fixed. Well, I can buy MS Office with maybe 2 days salary. How long would it take from me to implement features to OpenOffice? There is no limit to that.

Surely OO would be greater than MS Office if implementing features was easier. But software development has such intricacies that it takes really much effort and patience to achieve something. Plus that you need to co-operate with others.

I have good ideas for office software, but I don’t have the time or strength to build them. Also many others don’t seem to have either. And there is a paradox in here. I create software for my living. I don’t want to see even more software development work eg. programming and so on in my spare time.

@jmucchiello:

Who has the time to write tutorials? I’m not talking about project specific tutorials but detailed general tutorials on patching, committing etc. I’ve read a couple, but they aren’t very good. I think Scott Hanselman’s was the best I read.

If no one has the time to contribute community valuable information such as ‘how to help us’, how do they find the time to contribute to community valuable code? It HAS to be the same people doing both. If no one has the time to do the former, then no one has the right to complain about the stagnation of OS projects.

I stand by my claim. The entrance barrier for contributing to OSS is high and overwhelming unless you’re extremely interested in the product in the first place.

the store is making you do work they would normally pay their employees to do

AND, they’re still raising prices through the roof!! Its like outsourcing. The CEO thinks and says hes saving money, but then like Bank of America has taught us, the outsourcing just doesnt work.

Self-service does nothing for the customer.