andylockran’s blog
A man who knows when enough is enough will always have enough — Liao Tsu
12th
JUN
David Davis - The Digital Debate
Posted by Andy under BBC, Chaos, Conspiracy Theory, Control, Debian, Digital Freedom, Freedom, Linux, Marketing, Political, Python, SBLUG Planet, Tech Geek, Ubuntu
Too many D’s for my liking… but a fantastic marketing point.
After David Davis resigned from the Commons today, the speech he gave focused on where technology and policy collide.
We will have, shortly, the most intrusive identity card system in the world, a CCTV camera for every 14 citizens, a DNA database bigger than any dictator should have with thousands of innocent children and millions of innocent citizens on it.
We witness and assault on jury trial - that bulwark against bad law and its arbitrary abuse by the state, short cuts to our justice system will make our system neither firm nor fair and the creation of a database state opening up our private lives to the prying eyes of official snoopers and exposing our personal data to careless civil servants and criminal hackers.
It’s definately time for the debate to happen. Just because we can do things with technology doesn’t mean we should.
16th
MAY
OLPC - Is advocacy a profitable business model?
Posted by Andy under Africa, BBC, BECTA, Conspiracy Theory, Debian, Digital Freedom, Freedom, Linux, Marketing, Microsoft, Personal, Political, Projects, Python, SBLUG Planet, Software, Tech Geek, Ubuntu
Having just read Rory Cellan-Jones article on the BBC News Website about the OLPC choosing to use the Windows XP operating system, I felt it sensible to put forward the reasons why I think it may/may not be a bad thing, and who’s going to benefit from the deal.
Education versus Training
Unfortunately, I think the UK IT Education System passed under this bridge so far up river, that it would require getting out of the river, and a hard trek upstream to ever get back to fixing the problem. Since 1997 (the year I started secondary school, and the year the Labour government came into power), there has been a worrying trend toward using the education system as a training system. I enjoyed my first couple of years IT lessons - we played with things like Logo - and used some very simple database software (key-plus?) to understand the power of databases. We also used MS Excel to enter data into spreadsheets, and learn some basic formulae - as well as being told how to write the same formulae on the Lotus 1-2-3 spreadsheet software I had at home.
The difference that occurred in Year 9 (when RM ‘upgraded’ the IT suite at school) - was that we were now using MS Office. Sure, we’d had Word and Excel on the PCs before, and I guess the financial costs of upgrading to Office rather than having the two separately are minimal, especially once you take into account the “educational discount” that schools are entitled to from Microsoft.
This meant that everything we did was MS based. The simple database has gone, we were using MS Access. In essence, IT lessons involved being trained in how to use basic productivity tools for our future office careers; which, in my opinion, is not something that the Education System should pay for. I’d prefer to see people have an understanding of the difference between the ‘web’ and ‘email’; the difference between what a Spreadsheet can accomplish in comparison with a Database; and hopefully a way for people to be taught on looking after their data, online and offline.
Advocacy as a Business Model
I recently watched a lecture given by Nicolas Negroponte in 1984. In it he discussed his ideas for the future of Computer Interfaces. It was an interesting talk, as he spoke about experiments he was doing in some African Countries on UI design. However, he also noted that he’d done a dry-run of these experiments in New York previous to heading out to the African Continent.
In the school in New York, there was a child of around 14. He didn’t know how to read and was seen as needing Special Needs treatment. However, he was simply left to fend for himself in the IT rooms. One of the days, a local council worker came to visit the school, and happened to notice this child in the library, so asked him what he was doing. He showed him what he’d created on the screen using the ‘LOGO’ program. The council visitor was suitably impressed, and asked him if he could do a little variation on his work. Rather than simply say ‘no - I don’t know how,’ the child reached for the manual, worked out how to do it - and did it - clearly pleasing the visitor.
The visitor then went to the Principle’s Office (his reason for attending the school in the first place) and happened to mention the child. The principle was certain that the visitor was the victim of some kind of ’set-up,’ therefore took the visitor down himself to see the child demo his abilities. Lo and behold the child was able to do a further variation on his work by looking through the manual.
When asked why the child could read the manual, yet could not read the books provided to him in class, his answer was akin to the following: “What the teachers give me in class is boring, and I don’t get anything out of it. However, when I’m on the computer and working, I can see the results of my efforts straight away and get rewarded for them.”
OLPC - Sugar UI
The Sugar UI for the OLPC project, for me, was a symbol of the ‘LOGO’ program for this child. Someone that the teachers has written off as a massive underachiever had been able to produce ingenuity and learning independently - given the resources to do it. Encouragement wasn’t necessary, as the learning process is something organic to the human mind.
The Sugar UI isn’t about being Free and Open Source (thus cheap) - it’s about so much more than that. However, it’s also not the be-all and end-all of the OLPC project. There are thousands of Open Source applications that can run on top of Windows XP that the OLPC users will be able to access. It will also open up their opportunities for developing for FLOSS software on Windows Desktops - and thus be able to access the Windows Market in developed countries.
Why did OLPC do the deal?
For those of you that have been following OLPC, you’ll know that the ‘Intel Classmate’ has played some underhand tactics in order to get their processor on the OLPC - and then pulled out once they’d hijacked the relationships that OLPC had with important African leaders. There’s so much corruption in Africa, that XP was probably an (unofficial/off the record) requirement. Sometimes you’ve got to get in bed with the bad guys to help the small guys.
Where does this leave OLPC in the future?
OLPC ‘Ltd.’ will always be the pioneers to the concept of OLPC. The aim is a noble one, yet in what is essentially a commercial market - pure advocacy fell to the power of multi-national marketing. However, it has opened up a new market in the developed countries too - of Ultra Mobile Personal Computers - many of which run Free / Open Source Software. This can only be a good thing in the long run, with more and more people using FLOSS and seeing the benefits. Coupled with the coming-of-age of Ubuntu, and the fantastic marketing effort that’s coming with that, Nicolas Negroponte can be confident that where his company may have compromised - his idea is still being pushed by those supporting him.
18th
APR
Who reads blogs?
Posted by Andy under BBC, Birmingham, CentOS, Chaos, Control, Debian, Digital Freedom, Freedom, Gentoo, Linux, Marketing, PCI DSS, Personal, Political, Projects, Python, SBLUG Planet, Software, Stupid, Tech Geek, Ubuntu, openLDAP
I was having a discussion with a few mates in the pub this evening about my blogging ‘antics.’ They’ve berated me for blogging before, but as it’s becoming more and more widespread I can see them getting more interested in my motivations for ‘blogging.’
One of the friends commented that it was purely the fact that he knew me that made the blog interesting. For someone that didn’t know me, the blog would be pretty dull and of no consequence. At this point, another chipped in saying - “Only bloggers read blogs.” Is this true? I don’t know, but I don’t think so.
My motivation for starting the blog was that it was a place where I could share my technical insights. Not profound insights such as the advent of structural-object-abstract programming methods that I’ve just decided are going to be the Web 3.0 - but short howto’s and the like, and to publish a few ‘Gotchas’ - problems that have few symptoms and a nice easy solution - but take hours of work to solve. I blog advice - There’s nothing quite comparable experience.
(un)Fortunately, which ever way you personally look at it - my blogging has branched out to cover all sorts of things. From the time when some guy smashed the window of my car, to re-living and walking through my car accident in 1999, to a short article on why to avoid Red Hat’s bundled openLDAP implementation because it’s crap.
I think it’s an interesting concept, for non-bloggers and bloggers alike. Who reads blogs? If you have a regular commentator on your blog, do you add him to your blogroll as a thanks for lifting your self-esteem by having him visit your blog? Do you think you have a regular readership, or just random visitors popping in and out after being directed from Google?
I don’t think it’s a negative thing that bloggers read blogs. It’s great. From the attendance at the spontaneous meet-up last Friday, it’s clear to me that there’s a nice little community of bloggers in Birmingham. However, this is a meeting of a cross-section of the readership who it’s worth meeting face-to-face in order to better your own blog.
Is blogging journalism? Is it art? Is it a cry for help from some pathetic moron wanting to share his story with the world? Is it ‘new media’? Does it matter?
I blog tech because I think some people read it and it helps them - and also as an easy reference for me. I blog ‘about me’ as a way to vent some thoughts and get some feedback from an audience who I think would be interested. This audience is dynamic, therefore I categorise my posts different to respect that.
When doing my Psychology degree, one of the things we covered was ‘online personalities and freedom of information.’ This blog is in the public domain. If it were a diary, having it leaked would immediately bring headlines of ’scandal and gossip.’ My blog is sort of a base for my online identity. ‘andylockran’ lives here. I happen to pop up on a mailing list or a forum or IRC and you want to know more about me. Much of it is here. It’s a bit like ‘CV 2.0.’ The web is my field - if I don’t market myself well on the web, how the hell can I expect anyone to be able to trust me to market their products on the web?
The best thing about it for me is the feedback, both positive and negative. Setting up a blog exposes you to both - and it gives you the opportunity to have a voice.
21st
JAN
Music Mirror
Posted by Andy under Digital Freedom, Gentoo, Linux, Music, Projects, Python, Software, Stupid, Tech Geek
I have a nice Music Library of all my CDs encoded in the *.flac format. I like it, so I don’t want to get rid of it.
However, Mr. iPod doesn’t like it - so I want to keep a mirror of my Music Library in the *.mp3 file format.
I’m not much cop at bash scripting.. but here’s a shell of what I’ve got so far. (music-convertor.sh)
#!/bin/sh
##Andy Loughran
##Mirror .flac library to mp3for i in ~/Music/*/*.flac;
do lame -b 192 “$i”;
mkdir ~/mp3Music/”$(pwd)”/;
mv *.mp3 ~/mp3Music/”$(pwd)”;
done
It doesn’t work yet - but that’s my immediate comprehension of the sort of thing I’d like.
I would quite like it to rsync the library - so only encode the new files.. I guess this could be done by getting a list of all the files in each directory and just diffing the two to get the new files.. but there’s bound to be a better way.
Therefore some questions -
Should I be using bash-scripting to do this.. is it an efficient use of resources, and if so can anyone provide me with a way that works..?
Is there a utility that already does this?
8th
DEC
Django.. my first experience of a web framework.
Posted by Andy under Linux, Projects, Python, Tech Geek, django
Coming from a completely non-technical background into the open source world has proven to have both positive and negative aspects. The main thing that I find incredibly annoying is when I lack a basic understanding of simple things. It’s not that the things are too complicated for me to know - but some things just don’t crop up.
One of the ways I have been getting around any problems is to throw myself completely into them. It’s quite a brave/stupid strategy, depending on where you want to draw the line, but so far I’ve managed ok. The one thing that I keep stalling on though is programming.
When I took my current job after graduation, one of the things I’d planned was to write one small application a week. I was going to vary my languages, and learn as much about the different benefits as possible. Now 6 months on from then, I tend to do a little bit of php and python.. and can also write a small bit of C. It’s not been my greatest 6 months from that angle. However, the main reason for this has been a very busy workload - and my general Linux sysadmin skills I would say have improved massively, and I’m starting to get to grip with some of the software I regularly use, like exim, dovecot, postfix, openldap and apache.
I therefore made a decision about two months back to learn a python web framework. My logic behind this is that if I can get some functional web applications working that I know from the bottom up - and tweak them.. I will probably learn more that just doing simple stuff over and over and over again. So now I’ve set myself a target.
Blog software (in general) doesn’t have to be that complicated. I imagine that for my own use, it could be much simpler than this current setup. Therefore I’m going to start to write a nice simple little bit of blogging software. It’s not the most adventurous project - but hopefully once it’s up and breathing, (if not yet fully grown,) regular readers will not only get to read about the latest development, but actually view the latest development by visiting the blog.
I completed the official django tutorial this evening - and I’m pretty pleased with how it went. Django itself looks great.. but there are a few pythony things that are going over my head. The first one is:
class Poll(models.Model):
welcome = models.CharField(max_length=200)
comment = models.CharField(max_length=200)
I really need a lay-mans explanation of __init__.. self and class. I’m learning stuff through reverse engineering the code in my head - but a basic and brief overview I should imagine would help me out massively. If anyone can point me to a good resource, please let me know. I’ve read through alot of the documentation - but the *eureka* moment escapes me.
I look forward to starting out on my python web framework journey. If anyone feels that I’m walking down the wrong yellow brick road - please shout out now - I’m willing to listen to the voice of experience.
6th
DEC
The Power of Python
Posted by Andy under Python, Software
Recently (and for quite some time) Zeth has been writing about the power of python. I’m still very much learning the ropes - but it really interests me how powerful python can be, given it has so many bindings. I should imagine it would be a brilliant language to use for systems integration.
Anyhow - my brother sent me a link on facebook to quite a funny cartoon comic @ xkcd.com - and I found this particular comic rather amusing.

That one’s for Zeth.
26th
OCT
My First Facebook Application
Posted by Andy under Projects, Python
Well I thought it’d be interesting to have a look at Facebook for developing an application - give that it’s already got a huge userbase.
I won’t go into details about the project that I’m wanting to set up eventually - as today was just about having a little gander at the API and working out what could be done.
The facebook stuff is rather complex - and I’m not really a programmer - so most of that went over my head. I did find a good site which explained how to create a facebook application in 5 minutes. Well, whilst not strictly a facebook application (as all it does is run inside facebook rather than using the API) I had it set up quite fast, and can be viewed (and added) at http://apps.facebook.com/chaostheory/.
It doesn’t do much, and I doubt it’ll ever do more - but it was a nice test for the purposes.
Now it’s on to actually looking at the API and starting to do something that actually uses it ![]()
4th
OCT
Cobalt Qube, and other micro-intranet servers.
Posted by Andy under Linux, Python, Software
Being a relative newcomer to the wonderful world of extreme computing there are a number of developments/historical ‘facts’ that have not been made aware of. I should probably read up a bit more on RMS (That’s Richard Stallman for those who are uninitiated) and Gnu, as well as learning a bit more about the old programming. This new career path is certainly going to be far from boring!
One of the nicer surprises I had was when I recently went round to one of my colleague’s offices in Manchester. His office is a rather dynamic sort of place - in that nothing appears organised to the stranger, but once you’ve been there a while there is certainly a method to the madness (I think the same is true of many open source projects, and the logic of the documentation team). One of the things I noticed were a bunch of these boxes sitting around that looked like UPSs (Uninterrupted Power Supplies) but were in fact small ’shuttle-like’ servers. Not only that, but they were bundled linux servers. I decided to ask to borrow one, and one should be on its way to me within the next few days.
It’s things like this that were children of their time that people really need to look upon and be made aware of. In the Open Source world, very few companies can sell a ‘brand’. I can’t create a product and brand it to sell it - it’s just too expensive. Some companies can (such as Zimbra), but for the majority of FLOSS geeks, we spend our time creating mash-ups of other peoples stuff, or provide ‘enabling processes’ which ‘add value’ rather than cost lots of money. The Qube, as I am told it’s called, is a bit of both.
There are some really neat ubuntu projects going on which are aimed at easy to manage servers. Oly is running USM https://launchpad.net/usm which I’m literally just checking out now to take a look at. I know there’s webmin - but in my opinion it does lots of things to a mediocre level - and there’s not much room for creativity in terms of the interface. It’d be nice to have some really clean interface for the user management - however, it can only go so clean before the complexities need to be taken into account. I’ll be looking at USM with interest over the next few days. Especially as it’s written in python, and I’m told contains a stripped out plugin so I can attempt writing my own ![]()
It’s no longer a case of building a brand and selling it in a box with the ubuntu system, that’s not really environmentally friendly - and where can be done - older computers can be retired to a nice life of being a home server. Make a couple of adjustments to the Power Supply Unit (such as getting a low power one) and the costs can be minimal.
They’re an interesting pair of approaches - I’m really interesting in seeing just how good this Qube is - and whether it was a child of its time or a bad egg.
Fantastic.
20th
SEP
From Dead Parrott to Holy Grail…
Posted by Andy under Linux, Python, Software, Ubuntu
Well tonight was another first for me. I decided to bite the bullet and get really stuck into a project that I’ve been trying to do for ages - Learning to Program.
The only programming experience I have thus far was 35 hours sat at a computer in my final year of Uni to create an online Cognitive Psychology Experiment. I’ve not touched it since then - and the code is now up on launchpad (search andylockran) or you can bzr it directly from http://dev.zrmt.com/psych.
The thingy I’ve created tonight is a simple Decorator’s Calculator in Python. I have a ‘dictionary’ of paints (with their cost per metre squared, consistency and number of coats required). I then simply ask for the number of rooms, and their dimensions.. and then calculate how much it will cost. It’s not exactly rocket science.
However, I’ve probably gone about it in a very roundabout way, so the only way for me to improve is to get down what I think, and then see that it’s wrong. I’ve never done this before so don’t expect it to be right first time.. but this is starting to work for me at least. Hopefully some nice people will take a look at the code and tell me I need to start again. I hope so. Looking at Zeth’s zetact.py - there are lots of things I obviously don’t know as his code looks so much cleaner than mine - but I’m sure that’ll come with time.
It’s amazing how much my limited experience with php and C has actually helped.. I sat down to learn python and actually knew some things already. There was also fantastic help from gord and Daviey on #ubuntu-uk and the guys at #python. I hope it won’t be too long before I too can help guide lost n00bs.
I’m also really impressed with bzr.. though I don’t know why. I haven’t used it really at all for what it’s meant to.. I just versioned by programming as I progressed this evening. It could be quite fun to look back if the current code develops into something a bit nicer. I wouldn’t mind some suggestions for a web-interface.. or maybe a suggestion that I should just stick with launchpad and my commandline & nano (I like the simplicity & do have syntax highlighting implemented).
Anyway.. it’s not a fantastically exciting post.. but check me out on launchpad.net to see what other projects I am hosting (some stuff is abandoned).
Hopefully I can get to a standard whereby I too can joining the quest for the grail.. if not then I’ll just have to start revising the airspeed velocity of the world’s different species of swallow.
Categories
- Accident
- Adobe
- Africa
- Apple
- AVFC
- BBC
- BCS
- BECTA
- Birmingham
- blu-ray
- BOINC
- Boxing
- Cat
- CentOS
- Chaos
- Conspiracy Theory
- Control
- Debian
- Digital Freedom
- django
- Embryo
- enterprisemission
- Fish
- Football
- France
- Freedom
- Funny
- Gentoo
- Gnome
- Hypothesising
- Ingots
- Insurance
- iPlayer
- James May
- Language
- Linux
- LNMF
- Ltd.
- Madeleine
- Marketing
- Microsoft
- Music
- MySQL
- NHS
- Nuclear
- openLDAP
- openmoko
- PCI DSS
- Personal
- Personal
- Photography
- Political
- Projects
- Psychology
- Python
- Richard c. Hoagland
- Rugby
- SBLUG Planet
- Skiing
- Software
- Space
- Stupid
- Sun
- Tech Geek
- Terminal Velocity
- Three Peaks
- Ubuntu
- Uncategorized
- University
- Update
- Virgin Media
- VirtualBox
- wii
- XDA Stellar
- XMPP
- Yahoo!
- Zimbra