Your Company on Free Software Design

I don’t know why I get so wound up by Alan Pope‘s apologetics in the latest Ubuntu Podcast. What he says isn’t materially any different from what he’s said in the past and I doubt very much that his mind can be swayed from the arbitrary centre he always post-ad-hocs for himself after all these years.

So in a way, this is just my own bellicose frustrations. And I reserve the right to make a fool of myself on my blog when someone on the Internet is wrong. Full disclosure, I’m an Inkscape developer and when people argue design is harder without Adobe, I let me pride get in the way and you get fun ranting blog posts.

Adobe’s to Gnome’s

First let’s kick Pope back in line for choosing ‘The Gimp’ of all the Libre-Grahpics tools when comparing tools designers use. Firstly a comparison to Illustrator is just daft since The Gimp is a raster tool and Illustrator is a vector tool. Secondly comparing the oldest and most baggage laden brand in the Libre Grahpics cannon to anything else, just because you can pick and choose your open source straw man project to compare something favourably to, is cheap and unfair.

Gimp isn’t a design tool, it’s an old world grab bag of part-time design, photo touching and sometimes art tool. It’s got it’s issues and most of those boil down to “It’s old”, “It tries to do too much” and “It’s got an awful lot of opinions”. But mostly that it’s not the wow-wee latest chrome plated project that all the kids are working on these days.

It’s the Product That Matters

Consequentialism is the ethic of caring for the end result. The argument that Ubuntu’s design is the only thing that matters is for the one step arm chair philosopher. What is the ‘product’ that we want? It seems somewhat obvious that the product is a well designed Ubuntu. But, a well designed Ubuntu isn’t sufficient to make Ubuntu a success. It requires a strong ecosystem of Free Software projects providing the functional tools that sit on top of all that shiny pragmatism. Some of the users are going to want to have capabilities which designers have. Tools that work to do design.

Unfortunately, those tools don’t get any advantage from their distributors. So they’re not stretched and matured by the mistakes that the undoubtedly well trained design team would make trying to use the available Free Software tools. Libre Graphics design tools would benefit from the attention of Ubuntu’s own internal graphical opinionators. That’s right, “Libre Graphics tools needs YOU! to make them fail for your project TODAY!” Because if you don’t try and then fail to do your designs in Ubuntu, who will?

Best tool for the Job

It’s true that the total throughput in the short term of new hires is going to be higher with Adobe tools. That’s what their Adobersities teach them. But the best tool for the job often depends what you are trying to do.

Just making a poster for your high school band or a new company banner ad? Use your Adobe monoculture training. It’s the mainstream dominant cultural monopoly that suppresses the Linux desktop needlessly, but it just doesn’t matter when you’re working in a regular design job and the company’s ethos is elsewhere.

Best system for life

But. Want to Change The World ushering in the next great industrial and political revolution with freedom and beauty for all? Well that’s a culture and political thing. An ethos. Now you want to have all your staff really on board with the company product. Because the company product is a symbol of something bigger than just a semi transparent left leaning app list. It’s about grand ideas and it has important things to saytm. It grabs the minds of people through a mixture of competence and radical frankness that we may be a repressed minority with petty bigots barring our way to functionality, but we’re going to fight to make our ideas, the better ideas, be THE ideas of the future.

Or you know *yawn* you can er, what was I saying, yeah, something, about moving the buttons or was it *yawn* making the next version exactly the same as the previous dozen while completely *yawn* forgetting any motivation for doing anything at all.

Community

I think Canonical’s design team haven’t had a good ethos given to them. Their own company’s ideals about spending time on making it better for everyone instead of just yourself and caring to make a community beyond the company walls. Yes. It’s not the job you’re paid for, it’s the job you should want to do if you want to believe in a company like Canonical doing great things with it’s great ethos. Passion for design should go hand in hand with a passion for Free Software designing.

And if a company can’t enthuse a captive audience like a set of well paid employees into believing it’s core ethos… Well that speaks volumes about the strength of that ethos in that company. Unfortunately.

Apologist

Cartoon by David Hingley (https://www.youtube.com/user/TheTitaniumBunker)
So to conclude. I don’t like Alan Pope’s ideas. He’s a fine man, but a terrible philosopher. An apologist. I think he’s wrong about Free Software and wrong about what symbols and ideas mean to our users.

But it’s ok to disagree and I hope he (and Canonical’s much abused design team) can take this on the chin. If they ever read it that is.

Too much? Too harsh? Too wrong? Tell me below in the comments.

Software Freedom Society

I’ve been mulling over a new idea and I’ve come to my blog to draft my thoughts on it. I’m probably wrong, but I really want you to comment your thoughts below.

We have a Free Software world which is dominated by schools of thought, each focusing on a particular piece of the Free Software problem. Some of them know that they have a limited scope such as the Freedom Software Law Center and Software Freedom Conservancy (legal and sub-incorporation respectively) and then there are groups which try to be all things to all people like the grand daddy of them all, the Free Software Foundation.

I think the FSF itself wants to have a very limited scope, but it just can’t shake the fact that it’s political protests have implications outside of what it wants to do. Things like economics, interpersonal relationships, community culture and creative rights and remuneration to name a short few examples. I think perhaps that people who believe in the FSF’s political campaign, want it to be more. I know I’m frustrated with it’s lack of “do anything productive at all”, that seems to defined the last nine years. Many people who I know here in Boston voice similar low level grumblings think it’s lost focus a great deal because of what users want it to be.

Then there’s another organisation, the Canonical Ltd hype machine that is the Ubuntu community. It’s a pretty good force in the Free Software world (some people will disagree) but again, it’s members want it to be more than a corporate cheer-leading squad. They desire an authority that can standardise, set example, lead. But let’s be honest, Canonical can’t possibly do anything right in a lot of eyes outside of the Ubuntu community itself (even if it empirically did so). So the route to using the boundless capacity of enthusiasm and good ideas about community management and treating non-coders with respect has been watered down or rejected, ever tied to a company that is desperate to make money and over eager for your attention about it’s latest announcement that it drowns it’s own community out.

Now imagine a community that’s dedicated to Software Freedom like the FSF, as respectful and energetic as the Ubuntu Community, as transparent as Debian and as well defined as the Law Center. It’s goals would be to host an open membership, be an arena for debate about community structure, a place to document and explore social standards in both projects and the user communities surrounding them and to invite all to participate in projects as non-coding members.

We could take charge of the areas that the FSF struggles to host, help generalise existing community wisdom that might be tainted by the Canonical brand and provide valuable guides and education on the best ways to run projects and all the pieces needed to make them work.

We could do this by beating a drum and collecting together everyone until we get a critical mass that the social project works. But there is another more useful way too. Many coding projects suffer from a lack of infrastructure for their community operations, not just a lack of know-how. So we’d also start providing the-best-we-know-how pieces of community infrastructure such as mailing lists, forums, chat servers and social media mechanisms. The idea would be to share a lot of the technical burdens and let smaller projects have all the things they need to run a fun, inclusive and accessible community.

This project would of course ask other organisations to dismantle some of their existing structure. We’d have to gain trust and try and close down duplication as much as creating new spaces. This is after all about standardisation of social and community tools and practices and like the xkcd comic states, making new generic standards often leads to more standards. So making our infrastructure fast, pretty and reliable would also be important goals.

So, given that I’ve just rambled on about a passionate but off the top of my head idea (thanks for reading it!), what do you think? Please do comment below, comment in the social media link you might have used or you can email me at doctormo áŧ gmail.com with your thoughts. I really do want to hear from people as this idea could be important to the whole Free and Open Source Software universe.

Free Software Faith for the Long Term

I’ve been an advocate for Free and Open Source Software for a long, long time. When I first got into it, it felt right, just, progressive. I struggle with how to communicate that feeling of freedom to others, to make them understand how important Free Software is.

When we talk of Free Software dialectic conflicts, there are two big fronts; the first is the idea that Proprietary software is a /better/ way to make software. Developers get paid, investors make money, huge profits can be poured into research and development. This is your Microsofts and Apples. Let’s ignore that idea today.

The second battle is practicalism. This idea says that it doesn’t matter how the software was made, just that it needs to work. Let’s explore why this idea is an important conflict. Practical solutions often favour the short term and the local. That is, they are solutions which usually a single person will make a decision about what software to use and the criteria most important is the cost (money, time, effort) to get it working in the here and now.

The conflict comes about because often Free Software is a more expensive proposition in the here and now. It’s more expensive because it takes more time to set up, or it’s tools are not tested as much, or not designed as well, or the more insidious reason: the wider world does not support Free Software causing the Free Software solution to be on the loosing end of a powerful network effect.

But proprietary software often has hidden costs. After the initial purchase costs, these are often either societal or long term costs. Societal and long term are the direct opposite of a practical decision. Thus they are not considered, or not valued highly when making the decision.

There is one parallel which I hate to make. Religion. Here is another societal and long term cultural device. Most religions ask participants to give up the bad behaviours in the here and now and be a little more patient for the better life or better after life. I’m horribly simplifying here so please forgive me. But religions mostly work on faith and their evangelicalism pressures people to consider the societal and long term. This is why I think Free Software advocates are so often compared to religious fundermentalists. It’s a cheap shot; it does not follow that faith in Free Software is faith against evidence. That’s just a bad argument.

But it’s worth considering that Free Software is a hard sell precisely because it’s a societal good that requires powerful network effects on it’s side in order to be fully effective. Having a self-sacrificing religion of one is foolish, but a society of good intentions can be a powerful force. We in the Free Software world often have to invest more, pay more and spend more time to make the Free Software world we want to see, and to see it happen for ourselves and our friends and families. But this will only be the case so long as the network effects are against us and I don’t believe they always will be.

Now consider Ubuntu. Here’s platform that tried to move some of the power away from practicamism by making Ubuntu easy to install, easy to use, a joy to behold. Things that are genuinely empowering to Free Software. As it built itself up, the negative network effects started to weaken and Ubuntu users enjoyed for a time, a level of support from the wider world that had not been experienced before.

But that naturally led to the in-fighting. It’s typical for the front runner to be targeted by all the also-ran distributions. The FSF targeted Ubuntu’s practicalist concessions (even though they were fairly minimal), Other distributions ripped Ubuntu and their community apart, trying to block Ubuntu’s success. I’m not saying they meant to do it, or that it was a conspiracy. But that these other communities did not see Ubuntu’s success as their own success and naturally tried to undermine it as humans are likely to do.

So for very human reasons, we’re here with no real champion for Free Software in the practical arena. Ubuntu has fallen for its own hype and is not able to being the Free Software faith with it, even if it was successful. The societal and long term benefits of Free software remain largely unknown to the majority of the world and we wait patiently for a successor that can try again to change the world.

What do you think? Comment below.

What is my Work Ethic?

In response to this post about getting a job after graduating.

I think the core of finding a job and being motivated to do it is: How are you going to serve the people around you? At the end of the day society isn’t about what you can get out of it, but what possible super-power do you have which could effect the people around you in a positive way. Is that art? Is that cleaning? Thinking? Programming? I find that in the modern society too much emphasis is put on person gain, noble voluntarism or doing what’s enjoyable. The problem with these perspectives is that the focus is never on the individuals being served by the work and this blog post is a defence of direct service to others needs and having that be a mark of a successful career.

Doing a Thing

Sometimes something just needs doing. I think if you are in a strong community, you can sense when there’s pent up demand. I ran a campaign to raise funds to get aluminium computer case badges printed and this was before Kickstarter existed. I handled $4k and 20k case badges and they were sent around the world and I had an enormously positive experience serving the people who really wanted Ubuntu case badges. I was transparent about the money. I put the leg work into my relationship with the manufacturer and published news as soon as I had it. I published the designs so everyone knew what they were getting and in the end I had a thousand positive recipients and one negative one because they had been mangled in the post (sorry!) and I used my basic talents using a graphics package to put together something acceptable for users. Anyone could have done this, but to act is to be bold sometimes.

The side effects were more interesting. I asked people for ‘at cost’ payments which despite being based on estimates and the shipping costs wasn’t certain. People were generous and they almost always sent more than asked or needed, often with a note saying “keep the rest”. I didn’t feel bad about this, I think because I was honest with the costs and they were being served genuinely. The other effect was that we introduced the manufacturer to the idea of “open source” by licensing the designs under CC-BY-SA. I encouraged other groups or companies to use the designs to make their own. There are now many, many different aluminium case badges for different Linux distribution and I see them at conferences all the time. I feel good about this. Because imagine all the Fedora, Debian and Mint users who get something cool and the organisers who got a pattern to follow and a manufacturer to talk to. In a way I didn’t just serve people directly with the pre-sales, but also incidentally people through positive open source licensing and I can feel good about both.

Validity of Competence

But then, don’t I just feel good about it because I got praise for it? Well that’s true, I feel good when I get praise. But I think praise is more than just the warm fuzzies. It’s an important reminder to us that our work matters, that we’re still good at it and of the kinds of people who we have served.

One Harvard school gives awards to people who do good work in the anti-alarm professions. You know, those jobs where if the work is done well then no one even notices. But if something goes wrong the alarm bells ring loud. The facilities team, the system admins, the people who order those weird coffee machine cartridges. And that’s a really good thing to do, because it reminds those workers that their job is important and effects probably everyone else in some small way as well as for everyone to thank them once in a while. That feedback from server to served and served to server is the validity of competent altruism. I say it’s altruistic because only thinking about one’s self will not make you great at serving others.

There is a cross-walk near where I live where the snow had been repeatedly ploughed into the pavement one and a half meters high and had frozen solid with thaw. People walking to the train station would have to climb this mountain of snow to cross a very busy road. What if they had kids, or groceries or a bad leg? The night I thought about those people I got the ice breaking tools and shovel and cleared the whole corner. The next day as people shuffled to work, they probably didn’t notice their commute was a little better than before and had no way of knowing if it was the city or not. But I certainly reminded myself of all these slightly less miserable faces as I pounded away at the ice with the sweat pouring off me and the echoes of each thwack, crunch late at night for two hours.

Ethic

I hear about “work ethic” a lot, and it’s usually about “working hard to get on in life”. But anyone successful knows that there’s more to a good work ethic and I believe the largest missing piece is that is “one must work hard for other people, for them and not what one may want to do for them“.

There are communities in the Free and Open Source world who have chosen to work hard at imposing what’s good on their users. That’s a risky service ethic, a sort of pre-emptive competent guess. If your community has set up no way for your guess to fail or you mishandle the push back from your users then you can’t claim to have a good service ethic or to have actually served well. So how can these workers and their work be tied to the people they serve so that it heads in the right direction for the served rather than for the server?

I know that people will pay for good service. there’s no reason to slave away as a volunteer if your work is genuinely in service to others. Caveat, except for people who have nothing, but then grants, government programs, charities can help fill that hole. For my fellow Free Software developers, they do good work and yet many are failing to make the link between the work they do and the people they serve. Thus making it harder for them than it needs to be to earn a living from writing Free Software.

Being Good at what you Like

One part I’ve not talked about is getting a job that you like doing. This is a tricky one because being good at something makes you more likely to enjoy doing it. And Enjoying doing something makes you more likely to do it and thus overcome failures faster and become good at it. I say do what you are good at and like doing that gives the most benefit to others. It’s not as pithy a personal moto though.

A friend of mine who works in mental health once turned a job down for more money. Not just because it would mean serving people who really didn’t need the help, but mainly because being good at helping a certain kind of person with certain kinds of harsh needs is important work. Being good at this job wouldn’t mean there would be lots of recognition from patience, but it would mean truly serving and making a difference to those individuals. And it’s better to have the job one is good at making a difference than the job that could make a difference if only you were good at it or the job that makes no damn difference at all.

And serving individuals I think offers the best perspective on one’s own work. It motivates better than saving the world and feels more accomplished than earning stacks of cash. When one can see the good work well done and be validated for it there is no reason not to go to work every day and earn a living doing it.

I hope you’ve enjoyed hearing from me after a year of no blog post. Please leave your comments below as I love hearing from people.

Platform Money is Key to Free Software Success

Post was drafted Feb 2nd, delayed for review but is published now without finale edits.

Platforms are everything these days. They drive users in specific, and well structures ways and can make or break different ways of production. Take for instance the World Wide Web, it’s a platform that allows anarchy and it fundamentally breaks the traditional media’s economic model of charging for content per user. The World Wide Web does this by delivering content not just more cheaply, but more quickly and more succinctly than ever before.

By comparison consider iTunes which came well after. A platform which like the World Wide Web is built upon the internet with similar technology. This platform provided a more cohesive and contained experience for getting access to content that users could have gotten through the World Wide Web. Even though it was more expensive to do so, users have bought music and other media through the iTunes platform because the platform is more effective at delivering content to users than the World Wide Web’s anarchy.

The iTunes platform could be credited with helping solve a key economic problem that was befalling the music industry. How to get users to pay for music and thus make music creation worth being in involved in.

We Have Failed Here

Knowing this about iTunes, I’m jealous. That platform has achieved something which we in the Free Software industry have failed to do. That is; meaningfully provide the platform necessary to get users engaged in software production. Economically speaking, we need users who do not make code, but who want to use our software. Socially speaking, if we wish to Free users, we must serve their needs and therefore be willing to be told what they need and deliver on their expectant demand.

This isn’t just about making money for developers so they can quit their proprietary jobs and sustain their lives on making Free Software. This is also about the incredible disservice we give to users. Our ignored users. Those people who we SHOULD be serving with every key press but who we don’t pay attention to unless they morph into helpful bug reporters or fellow programmers. Which plenty do, just so they can be a part of the process.

This is a problem that not only hurts people’s perceptions of Free Software projects, but it also makes our industry weaker than it needs to be. Projects exhibit fragility and an inability to grow. Users pick software on existing features and compatibility and not on future prospects. User involvement is suppressed.

Just Saying No

There are many programmers, project leaders, Free Software members, who ask that money never be involved in Free Software production. These people do not know what damage they are doing to their projects. Not knowing how to get user money into a project is a typical problem, but there is a mindset from the leadership in some projects that having users pay developers should not be allowed. I _do_ understand why money is stigmatised, but this is a symptom of a project’s lack of codified user focus which would provide strong definitions of self-serving, charitable and user bought developer attention. No programmer serving his own needs should be jealous of another getting paid by serving user’s needs. We all need to grow up a little here.

What we need in committed Free Software projects is a meaningful service ethos that makes the users of software the firm target of the project. It would supply direction and impetus to many projects that can’t understand why users don’t like their code and provide economic input to drive projects faster towards those user centric goals.

User Focused not Business Focused

“But Open Source is very economically successful” I hear you say. Well, yes, if your a business it’s been great. The bigger your business, the more meaningful relationship you can have with projects by hiring developers. Having developers (or being a developer) is a sure way to have input. Open Source and the OSI have focused hard on making sure the business to business open source industry works.

I always wondered why Open Source was doing so well and yet doing so badly and it’s this: Big business needs are being met, small business and user needs are not. This isn’t good enough. As a developer if you’re not taking money from users then you aren’t serving user’s needs. Follow the money, follow the demand.

Social Justice

And if your thinking that this economic problem isn’t important for Free Software, think instead of all the users who are disempowered. This is what Free Software social justice is all about. A user is a super important component to development and with continuous development strategies and increasing segregation between developers and non-developers; we need to have thought about getting all users in a position where they can truly be a part of our development practices. They’re the core and source, not the periphery to be ignored.

Demand Change

I’ve been involved with two projects where I see a problem. The first is Inkscape, a project with no economic steam and plenty of users who have no idea how the inkscape sausage is made. It has direction, but no growth. Programmers, but no self-serving power left. Users with needs, but no way to meet them.

The second is XBMC plugins. Here there are thousands of tiny self contained projects and they’re all organised into a forum. Go onto any plugin forum thread and the pattern will be the same: “The plugin stopped working”, “It doesn’t work here either, where’s the developer?”, “I hope the developer comes back to fix it”, “I hope someone else comes in to fix it”, “Has anyone got it working yet”. Again and again, users who are putting their time into begging developers for attention. It’s a depressing situation that must put users off and certainly doesn’t speak well of the stability of XBMC when it’s most useful features are plugins which fail all the time from patchy maintenance.

Demand is important and getting user demand focused in a meaningful way has been our failure. Focusing on support models and business to business open source processes has been our distraction. Harnessing the paradime shifting nature of the platform should be out solution!

A Platform Example

The Ubuntu Software Center is a platform. The way it’s been set up is as a clone of Apple’s iOS store and it’s incompatible with the Free Software industrial process. Instead of helping Free Software it’s driving economic sustainability to proprietary software development and away from Free Software. It’s got unintentional institutional bias which is rooted in the ideas of the developers and managers at Canonical. The suggestion that donations are somehow a meaningful way to drive money to Free Software projects is a sure sign that a person doesn’t ‘get it’, Free Software isn’t a charity case in need of a one off anonymous tip. It’s an industry and with a unique production process that requires careful cultivation and sustainable connections that focus latent user demands to developers and potential developers attention. The USC and it’s makers fail to see that.

Use the User Force

A platform like the Ubuntu Software Center should be made though. But made to specification for the Free Software industry instead of the Proprietary one.

Imagine it embed directly into every Free Software desktop and mobile distribution. The same user focused invitation to join a Free Software project, involving money and time without stigma. Think of a framework available to Fedora, Debian and Ubuntu at the same time, users able to come together and join us in the community by opening their wallets and telling us to get to work on their dreams.

Imagine the power, the vitality and yes, even the vibrancy of the ideas users demand we make for them; all developed into a platform that like iTunes could take a wild west and focus it with good design into a platform that delivers successful sustainability for creators and meaningful dialogue with users.

We need transparency in the accounts of projects to foster trust. Progress of bugs and roadmaps delivered to the desktop so users can see a future in our projects. Reviews and statuses of developers working and available to work. Users electing favourite developers as heros of their causes with monthly payments to kick their bugs before they ever get to the archive. Kickstarter style risk investments to push radical designs and brand new projects. Bug reports where money can be added to the heat to indicate demand for attention and the rewards for completion.

It’s all possible if we dare to make users the center of the Free Software universe and scale it big, VERY big.

We require the courage and vision of the leaders from Canonical, Red Hat, Debian, the FSF and every project leader out there to advocate for User focused Free Software and economic sustainability. With a willingness to embrace our industry’s unique software production method, good design of the frameworks and an invitation to users and paid developers we can make the Free Software industry a powerful and successful part of every user’s computer experience.

Are you with me? Let me know below in the comments.

Ubuntu Membership

Launchpad asked me if I wanted to continue to be an Ubuntu member. I thought about it, and have decided that I don’t. The one thing I’ll miss is being able to post to Planet Ubuntu. But I have to be honest, there isn’t an Ubuntu community any more. There’s a Canonical community, an ubuntu-users gaggle and maybe an enthusiasts posse. But no community that makes decisions, builds a consensus, advocates or educates. It’s dead now, it’s been that way for a while.

Hopefully this post will make it to the planet before my membership expiry stops it. I’ll still be working and using Ubuntu, launchpad, bzr, maybe even ubuntu phone and tv. I won’t stop championing Free Software, economic involvement and good design either. Important principles for me. In fact nothing about what I do, projects I work on will change. This is just a realisation moment that Ubuntu doesn’t have a peer community to be a member of.

Jono,

You were warned plenty. It’s not your fault. You had to deliver decisions against the best interests of the Ubuntu peer community and in favour of the Canonical community. Driving so hard towards product nirvana that peer relationships were driven into the ground. I’m sure you disagree that the community is dead, but eventually those scales will fall or the fake smile will stop. I don’t know what kind of Community you want, but it sure isn’t the peer community I signed up for.

Council,

Unless you can see a way forwards to rebuild this broken dream, disband. Focus your great skills on Debian. I’m sorry we couldn’t make it work, we were overpowered.

Developers,

Keep up the great technical work. If your working on Ubuntu, don’t let the death of the community disrupt you. Let it pass like the breaking of an ulcer and carry on with your important and excellent work. The lack of a community outside of your company is not an impediment or even a problem to making great software. Keep calm and code on.

I’ll be making apps and code, most likely targeting Ubuntu. App developers need not change their behaviour, being an app developer doesn’t make you part of the old peer community. Just devs making good apps that should target all distros. Release your code, don’t get locked in, earn your bread, keep up the good work.

Everyone else: Good Luck, Code Speed.

DoctorMO

What I would do: Ubuntu Rolling Release

The idea really is that Ubuntu’s rolling release (alpha/betas) shouldn’t become a seperate product from Ubuntu’s LTS industry targets. Instead if we think about the platform as a whole, we should be able to put together both LTS and RR versions of Ubuntu into a single package. It would then be possible to do some really interesting things, like using one ubuntu install to repair or analyse the other.

I’d also like to see most applications removed from universe since it’s pretty obvious that the Debian model for packages is failing and we need to rethink how we deal with applications. The best model would be to be decisive and scrap apps from universe and move them to their own PPAs or a dedicated app-store model where FOSS apps might even be able to earn some money as they would finally be in a similar position to the propritary Canonical apps.

I understand these ideas are bold, but I wanted to give my thoughts on how best to close the loose ends. What are you solutions? colmment below.

XBMC Frodo JsonRPC Snippet

This is an example script for python’s jsonrpclib and XBMC Frodo which has an updated rpc library which is finkey about the headers and testy about usernames and passwords. Recorded here to help others in search of a solution.

If you get http errors 415 Media type not found, json decode error, or 401 Not authorised, you need this:

#!/usr/bin/python

from jsonrpclib.jsonrpc import TransportMixIn, XMLTransport
from jsonrpclib import Server

class Transport(TransportMixIn, XMLTransport):
    """Replaces the json-rpc mixin so we can specify the http headers."""
    def send_content(self, connection, request_body):
        connection.putheader("Content-Type", "application/json")
        connection.putheader("Content-Length", str(len(request_body)))
        connection.endheaders()
        if request_body:
            connection.send(request_body)

server = Server("http://username:password@localhost:8080/jsonrpc", transport=Transport())

print server.VideoLibrary.Scan()

On Ubuntu you can install jsonrpclib via pip as it’s not packaged as a deb.

Give Jono a Break, Grow the Community

From today’s Q&A with Jono Bacon. I need to use Jono to make a point, so apologies in advance. At 53:00 in the video Jono says is spending 14 hours a day working on Ubuntu. This despite having a brand new baby boy and a awesome meat smoker to contend with.

I say this isn’t fair on Jono. There is no reason why someone should be giving 175%. 14 hours a day is 70 hours a week; That’s more than the 40 hour week enshrined in the European working time directive for office workers; more than the 48 hour maximum safe working week for junior doctors; even more than the 60 hours a week that the Tory government want to change that to.

To put this into perspective, a balanced week would typically or ideally include 56 hours sleep, 40 hours work, 72 hours recreation, responsibility and relationships. But Jono does 70 hours, how can anyone be a good positive cheerleader with that sort of workload?

Responsible Indigestion

I think there is some blockage with the vast array of responsibilities that the Canonical Community Team have to do. A great deal of these responsibilities are likely only held by members of the team because we are unable to find volunteer or non-canonical business people to take them over.

Thinking about the people in the community team (who I love with all my heart), I see a ton of projects, lots of talk and quite a bit of regret at not being able to do everything. And I don’t think it’s right that they should be asked to do everything. Outside of the team, lots of aspects of the community are quiet indeed.

Not the Center

I’ve had some really good chats in the past with Jono about the nature of the community team and how it’s often perceived as being the center of the universe for quite a lot of the Ubuntu community’s activities. There is a misconception that the “Canonical” community team is the authoritative organiser and sanctifier of activities. It’s not.

The Canonical community team are employed to look after Canonical’s interests in the community. So of _course_ they’re going to spend all their time focused on their business objectives, that’s what the team is for. Of course Canonical’s objectives might be over-stretching too, but I think the team also helps out in places for the good of the community which is leading to stress.

Our true centre, if we have one at all, is the Community Council. But it has never really taken on the responsibility of being a co-ordinating power. It deals with problems and that’s what it was made for. So I guess one waits for the project to explode before taking the charred remains to the Community Council for autopsy. This isn’t good enough.

What to do

What we need is a new centre of the Ubuntu Community universe. It’s no good having a company act as the sol centre of activity; volunteers hate working for free for mega-corp big bucks and move away over time as co-ordination is often innocuously prescribed along business objectives. A community needs a strong central point, or central set of core ideas that we can all dance to without fear we’re being abused by a large player using cheat codes.

“Ubuntu for everyone” used to be enough. A rallying cry from a thousand frustrated Linux users to come together, creating a gravity1 all of their own, pulling more people in until we had such a strong and healthy community.

That isn’t enough any more. We’ve been too successful. We have an awesome Linux desktop which we can install on anyone’s computer without very many problems. You can get it for free if you ignore the skull, download an iso good for a million installs of the same fully working operating system.

What we need is a new centre of the Ubuntu Community universe. A new point of gravity. A new co-ordination body who can sanction every hair brained scheme2, listen endlessly to every kid on irc who has an exciting new idea, comment on things, and act as a great mixing bowl for people and ideas. Such a body would need a reason and a goal, something resonant that goes beyond just technical aims, or marketing PR.

I seriously propose that we found an identity for Ubuntu which lies outside of Canonical. A gravitational body of such stability and neutral authority that the massive Jovian mass of Canonical will happily find it’s lagrange point while smaller congregations will find more comfortable points in their own orbits.

I hate to say it, but Catch 22, Canonical MUST be committed to such an idea. There is NO point in a bunch of community folk wandering off into the brush to build this. We would need everyone to recognise the problem we have here and help fix it with some radical rethinking about the community. And that includes helping Jono3.

Are you onboard? What do you think? Let me know below in the comments.

1 Gravity, the reason we all come together. Each Canonical PR blunder acting like stellar wind pushing more people away.
2 Every hair-brained scheme in Ubuntu is already sanctioned, but most of the time someone with a fancy hat and an official looking title just has to listen to it and say that it’s a good idea to give the kids confidence.
3 Save the Cheerleader, save the world.