When describing what Bodega is to people for the first time, I usually start with the following phrase: "It is an open market for digital content." We usually then spend the next good while unpacking the meaning in those eight small words. In this blog entry, I'm going to focus on what that phrase means from the perspective of those experiencing it from the consumer side.
Freeing ourselves from old notions
When people hear the word "market" they tend to think of "money". When they hear "consumer" they also tend to think of "money" and related things like "marketing", "advertising", "sales". Those words are definitely all related, but by themselves they are incomplete.
According to Wikipedia, a market is "one of the many varieties of systems, institutions, procedures, social relations and infrastructures whereby parties engage in exchange." This is precisely how we use the term "market" in relation to Bodega. It is a digital place people can come together to engage in exchange. Whether that includes money or not is really up to those involved.
One of our (not-so-)hidden agendas with Bodega is to reclaim concepts that ought to be integral to that special, and I'd say sacred, set of interactions that occur when people coming together to share and trade. It is not just about money and salesmanship, it's also about the interaction and the human flexibility.
A focus on people
As we examine what Bodega offers, you may notice a recurring theme: a focus on people as humans rather than agents of consumption or value production. When you create an account with a Bodega warehouse (I'll get into what a 'warehouse' is exactly in the next blog entry), you are creating a participant account.
As a big believer in the idea that the words we use support the thoughts we think, we made sure to avoid terms such as "user", "customer" or "consumer" in the source code that drives Bodega. So the database does not have a listing of "users", for instance; your account appears in a table called "people". The idea of people as humans is deeply embedded in our thinking and the creative process behind Bodega.
In fact, when you create an account with Bodega you can use that to immediately log in to the management application (more about that in the next blog entry as well) and quickly get on your way adding content to the system. There are no walls between participating as a consumer and participating as a producer. That is why we refer to all who use the system as participants.
Privacy and other important rights
Bodega is entirely Free software. The client-side C++ library is licensed under the LGPL, everything else is released under the GPL. That means you never have to wonder what we're doing, nor are you ever held hostage to a central group. You can install Bodega yourself and host your own world of stuff. In fact, we hope that happens. We see a huge potential for hosted Bodega for schools, government agencies and even companies.
All data transmission is encrypted (we use https extensively), your passwords are securely hashed and if you register a payment method such as a credit card we don't even hold on to that on our servers: it is deposited with a certified and audited 3rd party (Stripe) whose business is the security and privacy of that data. We're also going to be bringing online direct payment microtransactions and other forms of privacy respecting payment.
Variety is the spice of life
Bodega is not an app store. It isn't a music store. It isn't a book store. It isn't a service activation system. It isn't a community sharing system. It is all of those things rolled into one.
You can browse and search (full text!) all kinds of content. You can even create your own kinds of content (more on that in the next blog entry). We could identify no reason why the place you find applications shouldn't also be the place you look for wallpapers or books or ..
This also means that it works just as well for, say, add-ons for a network router as it does for promoting books on a website as it does for finding and installing the newest games available. There are no platform requirements or assumptions built into the system. This is intentional as we saw so many Free software projects inventing and re-inventing ways to delivery application data, game levels, artwork and more. It just doesn't make any sense.
To us the idea of a Store(tm) seemed very outmoded and unnecessary. The only reason we could identify for there being an Android Store, an Apple App Store or an Ubuntu Store was control. Well, we value freedom and sharing more than we value our ability to control your every experience. That has allowed us to create a platform-neutral system that can still be shaped to a platform's precise needs. (More on that in the blog entry after the next one ..)
So instead of juggling a dozen different interfaces with a dozen different accounts and a dozen different ways of using an add-ons system ... Bodega opens the doors for a consistent experience. Ironically, perhaps, that is only possible because we acknowledge that variety is the spice of life.
There are many ways to exchange value in Bodega. The most basic one is simply through use and appreciation. People who make their creative works available via a Bodega warehouse can follow usage and feedback given to them, which for many people is a huge part of the reason they engage in such exchanges.
People can track beyond simply counting the number of times their things have been downloaded or (if there is a price on the item) purchased, Bodega has a few tricks up its sleeve. One is ratings. Most people are familiar with the common, and utterly useless, 5 star rating system seen in most online stores. This xkcd comic sums it up perfectly:
Instead of a single meaningless "star review", each type of content in Bodega has a unique set of attributes which you can use to rate an item in the store. Applications, for instance, feature the following attributes:
Games have attributes related to game play, wallpapers related to artistic qualities, books about the writing style and storyline .. you get the idea. This lets you provide useful feedback to the publisher, and allows the person whose item it is to understand better how people are perceiving their work.
You also do not have to leave a comment to leave a rating, or leave a rating to make a comment. This is a baffling misfeature we noticed in many other content systems out there. Of course, discussion is important as it communicates things simple ratings never can. Being Free software people, our first thought was to look around and see what kind of good discussion software existed already. We'd rather re-use than re-invent, after all. What we found was Discourse. The Discourse team uses the phrase "Civilized Discourse Construction Kit" to describe their forum software, and it is a thoroughly modern affair .. not to mention quite beautiful.
When you create a Bodega account, you can also use that same login to visit the Discourse forums. Immediate feedback and glancing at recent postings can also be done right from within the client software without having to go to a web browser. (That final bit of integration is currently sitting in a branch awaiting final merging for the next update.)
These forums are not the usual limited "leave a message" style affairs; they support fully threaded conversations with all the features we expect these days: private messages, being able to tag individuals in your comments, notifications of follow-ups and more. This is not about simply giving people a way to leave a 140 word message, but about actually engaging with each other.
Eventually we will provide integration with defect tracking and feature requests as well, making it a full life-cycle system.
Making a living
Many people simply want to share the things they create for no further reason than to share. This is a wonderfully human thing, and it's something we do ourselves every day as we create Free software. We also acknowledge that people need to and want to make a living. So Bodega supports the notion of paying for content.
Where Bodega diverges from the pack a bit is that money is not the currency. Instead, there is an in-system accounting mechanism based on points. In the Bodega install we host, you can buy points with money. Those points can be used to purchase items in the store that have a price. (How those prices are set will be covered in the next two blog entries.)
Used in other contexts, however, points might be handed out to students enrolled in a school, used as an incentive program in a company or .. just not used at all.
We will also be bringing tipping, pay-what-you-want and subscription systems in future updates. I'm even toying with providing a built-in crowd-funding feature. Best of all, because it is Free software, you can participate in helping define the mechanisms of trade.
.. oh, and you can download things and stuff
Of course, all of this is there to make it possible for you to browse, search, explore and ultimately get stuff. What we've talked about so far might seem a tad complex, but it is all hidden beneath the surface. The actual user experience is remarkably calm, simple and straight-forward.
Our goal has been create something simple to use and enjoyable to experience, but with a lot of intention and meaning behind every aspect of the system. It is like an ocean: wonderful to float around on, immensely deep.
Even when it comes to the "download things and stuff" bit there is this signature of care and thought. Downloading software, for instance, integrates with the system's package management. On Linux systems, we use PackageKit to meld with the operating system. You can even have software installed from a package repository .. without even knowing what a package repository is, if you must.
Other kinds of packages similar are handled by their 'native' systems: Plasma packages are installed with plasmapkg, eBooks go into your books folder, etc. If using the Plasma Active Add Ons app, it even integrates seamlessly with the semantic desktop system to transparently index the books, music and types of content you choose to access. All of this happens transparently and efficiently.
Updates are also handled in a similar fashion. When a new version of the content appears (be it an application, a book or whatever), you receive a notification in the notification area. Of course, if the application has been installed using the package manager from a repository, Bodega leaves it to the integrated software updater that comes with the operating system to handle it. Perfect harmony.
I'm sure you have questions
If you have questions, comments, ideas or other feedback, please leave them in the comments section below. I'll be hosting a Google+ Hangout at the end of this week where I will be gathering up your feedback and questions and answering them live, though you will be able to catch it later at your convenience on Youtube.