Responsibility & Cost

These are some notes about a open source presentation I may make at some point in the future. It’s target is programmers and technical staff and project managers who want to understand Free and Open Source better.

Back in the old days of programming, everything you made was your responsibility. Computers were simple, programs were simple and programmers were self reliant. It was a golden age of programming innovation where programmers could explore their entire field and stake claims in the uncharted areas of the software hinterland and most of the time were able to earn decent money while doing so.

But progress meant complexity. Complexity brought with it a phase change from programs developed by single individuals to programs developed by teams, or entire large corporations. No matter how large you made the company or how much money you could push into a project, software projects just seemingly grew to fit their environment, always growing more in complexity than any company could reasonably keep up with.

And so there developed a solution to the complexity. We pay someone else to create a generic system that allows our team to create more complex software at a higher level. These generic systems always had limitations, but with competition, systems like operating systems, databases, web-servers all came into existence to solve to major problem in software: Just how much complexity can a programmer possibly write before they can’t remember it all or how complex a piece of software gets before a team can no longer coordinate effectively around it.

So we have this desire for every greater complexity, but also a growing need to reduce which bits of the complexity that we are personally responsible for.

It’s not difficult to see how paying a company for a piece of software that solves the problem is a fine way to reduce the personal responsibility. You get a piece of software that does almost everything you need and your work then only consists of learning how to use the software and how to customise it for your specific business.

The way the software was sold was very much like selling bananas off a shelf. You’d get the rights to run a single copy that you paid for and that would be that. Any copying would be as if you stole a bunch of bananas from the grocers. This thinking is required if you want to sell software like this, but it isn’t the only way software can be sold.

This is where Free Software comes in. It’s a way of licensing software that works with the realities of software instead of against them. It doesn’t pretend that code is a banana, it treats the code as if it WILL be copied. And that’s ok. What’s specifically important about Free Software is the freedom that it demands users have. No matter how much money you pay for a piece of software, the user must ALWAYS have control over their own software and must ALWAYS be free.

More to follow…

Replacement vs. Reinforcement

I came across an idea about how machines interact with people while watching some TV. They were joking about Sat-Nav devices and all the silly voices they can make when it occurred to me that Sat-Nav devices are indeed replacing our natural abilities to navigate and know where we are and how to move around in our urban areas. (Most of us have long since lost our ability to know where we are and how to get around in the wild)

This is an example of a device which replaces a natural talent so well, that we find we don’t need our mental functions any more. But of course the one great evil of this is that we no longer know how to operate without them, thus Sat-Nav will always be required by people who use Sat-Nav a lot. (forgetting of course people who couldn’t operate at all until Sat-Nav came into being)

Picture showing a set of microschips on the left, a nerve cell on the left.

So what’s the alternative to technological replacement? I think one idea is technological reinforcement; the idea that the best technology improves the human operator through it’s use. Take Wikipedia; the fear is that no one will never need to remember anything and we’ll all forget to remember everything. But using Wikipedia seems to do the opposite, reinforcing information and making us more certain about some of the billions of facts we can hold in our heads. (but maybe it hasn’t been around long enough to show it’s effect)

So this got me thinking about what I would like a Sat-Nav device to do, to help me reinforce and hone my skills navigating the streets. Partly it could help by always stating the names of the roads when you’re in a local or frequently visited place. “Turn Left” is an instruction but “Turn Left at Washington Street” is educational and reinforcing if I take that route a lot. The information is certainly being presented at the right time for me to combine it with other sensory information so I can call it back up later. Another idea is to mention the absolute direction, North, South etc so we get a feel for the absolute direction we’re traveling in.

Of course none of this might work, so to test we could see how Sat-Nav devices effect people’s ability to judge medium and long distances. Most devices mention how many yards/meters it is until a junction so it’s already going into our heads and reinforcing something in there, but maybe we can’t process it because we don’t really have a sense of speed (in a car, I do on my bike of course). Maybe the brain just throws all the information away, but I find that hard to believe since brains are really good at learning to understand all sorts of data.

What do you think?

Spreadsheet Awesome: Check Mark Totals

Here’s the problem, you want to use LibreOffice to do a simple registration for a small class, so you open it up and write a small table for the dates you want to record:

Spreadsheet showing simple registration form with several names and some checked off boxes

You use a simple X to record when someone was present and a simple dash – to record an absence. But the mood strikes you and you want to make it look a little more professional. So you load up the Character Map program and grab a tick character from the symbols available and paste it into all the marked in cells:

Character Map showing a pannel of symbols

OK so your spreadsheet looks nice, but your reviewer wants to know how many students were in each class total. this should be easy enough and you make a new row and add in the cell SUM formulas. But woe! it doesn’t work. Using characters in a spreadsheet doesn’t count because they’re not numbers:

Spreadsheet showing the new tick symbol and a new totals column incorrectly showing 0 in each cell.

So to fix the issue you use the search and replace to replace all your nice tick symbols with the number ‘1’ and to be consistent, all of the dashes to the number ‘0’. And it works, you have your totals; but this doesn’t look nice! So you decide to use the format cell option to figure it out:

Spreadsheet showing all tick symbols replaced with 1

This brings up the number formatting window. Here you can decide what the cell should look like given a certain value. Our values are ‘1’ and ‘0’, anything else is a problem, so we use the cell formatting code: [=1]"✔";[=0]-;[RED]"Error" which shows a tick when the cell is ‘1’, a dash when the cell is ‘0’ and a red coloured Error when the cell is anything else:

LibreOffice Format Cell Window showing new custom format typed in.

Now everything is formatted wonderfully and LibreOffice Calc has saved us from having to decide between an ugly or a useless spreadsheet, we can have both beauty and functionality!

Spreadsheet showing correct registration totals and nice tick symbols.

As a bit of extra curricular, I also created one for deciding if someone loves you:

FOSSed 2011

Between July 6-8 2011 there will be another FOSSed event here in the North-east of the United States. It’s up in Maine and features a mix of educational and software types, a good solid event for anyone interested in FOSS and the education scene.

I went last year and did enjoy it quite a bit. The sessions were fun and we got to see some of the interesting ideas being experimented with in various schools around the country. There was plenty of time to just chat about all sorts of tech during the breaks and the accommodation was on site. Easier to deal with travelling.

This concludes this public service announcement. Comments welcome below.

Ask Ubuntu Review

I’ve been giving the Ubuntu Stack Exchange some attention and I wanted to do a little bit of a review. Firstly I’d like to thank Jorge Castro and other members of the community team for getting a tool in place to replace the failing launchpad answers functionality.

With that I do want to make a criticism. This site was pushed as a JFDI and as such it doesn’t really take into account the views of the larger ecosystem. What do I mean? well now we have to decide if we want to keep launchpad answers around, how projects/the ubuntu project will specify to go to askubuntu instead and how to transition existing data over, migration of data, who owns it and how access is guaranteed. This is all made harder by the proprietary and out sourced nature that the stack exchange service is being offered to us.

This is mitigated slightly by some help from Robert Cartaino of Stack Exchange who is excited to help us with our functionality and integration issues. It’s just not as ideal as I would like.1

The service it’s self is well thought out, with questions being editable, comments being useful and answers being constructive. The functional stepping stones that you go through as you get more reputation are interesting and beneficial, although missing is the functionality to have reputation per tag and have that shown in your answers to questions.

There isn’t much to the site over all, it’s clever design takes some good elements and mixes them together in just the right way to produce a clever output. It’s useful and seems to be a winner with the community. The ranking, badges and increasing reputation make the system more of a game and use the best elements of addictive research to keep people participating in the volunteer support site.

I did want to list all questions which has never gotten an answer, all I could do was list questions that had never had an answer accepted. Which is not quite the same thing. I also see there is a _lot_ of questions with answers without the answer being picked. Something we may have to do some future house keeping on.

The chat functions are a bit erroneous and should probably be integrated into irc somehow instead. But perhaps it’s just a place to do house cleaning so maybe it just needs putting in a better place than on every page.

So far the culture on AskUbuntu has been very good. I haven’t seen rudeness or condescension anywhere and people have been polite and helpful throughout even with really hard problems of hardware issues where a number of back and forths are required to sort them out.

Overall I think I’m happy with the Ask Ubuntu site. It’s too late to now back up and move to the FOSS solution so we’re stuck with what we got. But if we must be stuck using a proprietary system, at least let that system not suck. Which this one doesn’t at all.

1 Canonical tends to have a bit of a blind spot for making sure community and development tools are FOSS. Take Launchpad’s extended exile for instance. It’s all rather reminiscent of BitKeeper and the price we pay for not learning from that mistake.

Microsoft: Battle the Norm

When I ask Microsoft Windows users to try out Ubuntu should I be telling them that using Ubuntu is socially harder than using Windows? Sure Ubuntu is awesome technically, very easy to use and much better than windows, plus it’s FOSS, moral, science and all. But none of that helps the social barriers.

So I am more aware now that I’m not only pushing a technology but also perhaps a fight. Something that many users just don’t want to have to deal with. Some new users are enthused, well armed and well prepared to go into fight for their ecosystem and we welcome these new early adopters.

But Microsoft windows is normal and using anything else isn’t normal. We have a long way to go before Ubuntu is more recognised as a good technology, well made and not just used by social misfits and people who want to use obscure products to look cool.

Even if you just think about the technical aspects there is just a barrier from service providers, shops and the media.

One of the really nice things about Ubuntu is that it’s managed to improve (slightly) this by replacing the Linux brand in a lot of people’s minds1. More people seem to know about Ubuntu and FOSS by extension because of the work we do to be welcoming and accommodating to new users. But are we doing enough? What more could we do to reduce some of the social stigma of using none Microsoft products?

Thoughts?

1 I’ve come to see Linux as an ingredient, like flour. You can’t sell flour to a person wanting to buy cakes.

FOSSed Notes

The FOSSed conference was certainly very interesting and although the heat was almost unbearable, the sleeping and presentation rooms un-air-conditioned at least the event fed us well (a little too well as I note by budda belly this morning) and we got to talk with some very interesting people with a different take on Ubuntu and FOSS.

First of all there are plenty of people using Ubuntu, both strait up and as a basis for educational distributions. But almost everyone at this conference was using an Apple Mac, it’s something a lot of schools have invested in. I maintain that the bastards are going to be Apple in this and upper-middle class residential markets.

One sys-admin was explaining to me how their school is ditching Ubuntu in favour of Apple Macs because he (as a sysadmin) is not paid enough to do his job properly and just doesn’t want any more work to deal with. Of course far be it from me to suggest that doing a job at all is worth doing right, but I can’t imagine how a fleet of rented Apple Macs could be easier to manage even on a larger scale. I chalk this one up to professional folly and lack of imagination.

There were plenty of positive thinkers too, lots of people really wanted to learn some of the available programs in depth so they could go off and teach other people. this is great and it’s certainly something we should be doing more of. I know Inkscape has really good how-tos and guides available to download in manual format.

In the end though we got to talk a lot about all the challenges, politics, dumb decisions and rotten thinking that goes on in education. There was certainly a lot to complain about, most of the time it didn’t seem like it was malicious, just that old problem of pushing incompetent people further up stack into management instead of firing them. Of course I also remember being told: “No one likes being their own boss, because suddenly it’s hard to tell yourself just what a dumb boss you really are to yourself”

Your thoughts?

Open 1:1 Educational Ubuntu

Here at FOSSed one of the great project on show is the Open 1:1 project which is an Ubuntu based distribution specially designed for large middle and high school deployments of netbooks for students. It’s currently deployed in a number of large schools and is on it’s second year of refinement.

It’s currently got the netbook interface and a set of education software specially picked for inclusion based on the needs of American schools much like Edubuntu for a specific region. The system is fast and responsive even on older ASUS netbooks and the install is very easy.

They’re currently moving from 9.10 to 10.04. The current plan is to create a new version once per year based on the spring release. This should allow for Open 1:1 to base it’s distro on the LTS releases and one STS release in the general Ubuntu cadence and it means that the people involved in the project are focused on delivering the distro in the summer in time for deployment for the next school year in the USA.

Right now the distro is being deployed and configured using a file-imaging system which installs by wiping out the machine and installing the distro on it. There is a plan to move to something more manageable with packages and a desire to be involved further with the Ubuntu community to make sure tweaks are in sync and going upstream and educational software is available ready to use.

Artists: Read Licenses!

There is a set of icons that just got posted to deviantArt and it got me thinking about the problems with artists understanding licenses:

The icons are great and these works are awesome and I love that artists are playing with the creative works that are shared in the greater commons available from the Ubuntu community. The problem of course is that ubuntu-mono is licensed as CC-BY-SA, in ubuntu-mono/debian/copyright:

(c) Canonical Ltd 2004- 2009

Unless otherwise indicated, artwork is available under the Creative Commons Attribution Share-alike license v3.0 or any later version.

The artist has published his work under a CC-BY-SA-NC license, it turns out that the work is inspired by but not a derivative work, bit if this new work had been based on the original ubuntu-mono icons, then they should be licensed CC-BY-SA as the share-alike terms specify.

Most of the time it’s just confusion and ignorance about the rights and requirements of various licenses and the need to check the licenses when creating derivative works. See the comments below for examples of confusion over the creative commons website text and what issues it can come up with.

This is actually quite hard to manage on the desktop since we don’t express license terms per file in any way on the desktop, it’d be on my wishlist to have some kind of indication on files when they have license terms marked in their meta-data. For SVG files this is quite easy as the terms are normally in the meta headers.

What are your thoughts? Do we do enough to help artists understanding licenses?