January 2009 Archives

Cambridge Openmoko

| No Comments | No TrackBacks
Yesterday was the second Cambridge Openmoko users' group meeting. It was fun. It's good to meet new people - that doesn't seem to happen to me very often at the moment. The atmosphere was a lot more positive that it was at the first meeting, which I think bodes well for Openmoko as a whole.

Now it's time for a lengthy weekend geek-out with Glamo-DRI. It was very encouraging to have someone popping up on the OM-Devel mailing list having solved almost all of the current problems with 2D acceleration...!

Beyond Fear

| No Comments | No TrackBacks
I'm reading "Beyond Fear" by Bruce Schneier.  There's a paragraph right at the end of Chapter 3 which affected me quite a lot.  It's something a lot of people have been trying to tell me for a long time but I didn't listen.  It's about security, but I think it's relevant to a lot of other situations.  Perhaps I just needed to have it said to me in these terms by someone I look up to as much as I do to Schneier:

"It's pointless to hope that a wave of selfless, nonsubjective security sensibilities will suddenly sweep across society.  The agendas of, and the power relationships between, players are an inevitable part of the process; to think otherwise is to delude yourself.  Security will always be a balancing game between various players and their agendas, so if you want a level of security that matches your agenda and your ideas of risk management, you're going to have to approach it as a social problem.  Don't underestimate, or gloss over, the differences among players."

Political/Apolitical

| No Comments | No TrackBacks
This whole situation has been causing me some inner turmoil (perhaps too strong a word) recently.  I'm very wary of direct action of this kind.  If you're going to do something which forces your point of view on other people, and cause disruption for everyone including people who agree with you, you'd better make damn sure you're in the right.  And it can hardly be said that such issues are ones of simple rights and wrongs.

The trouble is, this particular situation sends my mind into a conflict between the rights and wrongs of the political situation and the consequences of disrupting other people's lives and work.  Regarding the actual situation in Gaza, I condemn all the practically mindless killing, both sides have behaved terribly and that's all there is to it.  However, I disagree with infringing on the learning of others.  Because of this, the issue of whether or not people should be allowed to stage this kind of protest is inextricably muddled with what was previously a very simple point of view.  I'm forced to try to resolve in my mind the separate consideration of whether or not I believe the University should even take an stance on political issues.  Was it the desired effect that such conflict should be created in the minds of an outside observer who might otherwise have agreed with them?  I think not.  Is it helpful to anyone at all?  Hardly.

It makes me feel like I'm a bad person because I cannot support the direct action in itself, regardless of my opinion on the core issues.  Please don't do that.

A Proper Entry

| No Comments | No TrackBacks
Right then.  Time for a proper post, I guess.

Welcome to the WizBlog.  Here you can follow my adventures as I eventually manage to leave Cambridge after my PhD and move on to new and exciting things.  Also: read about the progress of my work on 3D acceleration for the SMedia Glamo chip used in the Openmoko Neo FreeRunner phone, follow the development of Thrust3D, a silly game programming project I started last Easter, and learn about OpenMooCow, my even sillier moobox simulator for accelerometer-enabled devices.  And much more besides...

Why did I decide to use a blog?   Well, I absolutely hate doing web design.  Abnormal for your average geek, perhaps, but over a period of a few years I slowly developed a dislike of doing almost all user-interface things: faffing around with getting everything the right size, making it fit right, making sure the right things get enabled or disabled at the appropriate times.  And at the end of all that, you find you have to completely re-design it to play down to MSIE (fortunately this seems to be getting a lot better in many ways).  So, the blog lets me concentrate on the content while still having it neatly cross-referenced and (hopefully!) easy to find.

I'll try to put things in a bit of context.

Regarding my work and its potential adventures:  I'm currently a PhD student in the Electron Microscopy Group of the Department of Materials Science and Metallurgy in the University of Cambridge.  Right now, I'm approaching the end of writing up my thesis and searching for possible jobs.  In a couple of weeks, I'll be visiting this place to talk about possible post-doc options.  The work they do there, and the places it could lead in the future, are pretty incredible.  It'll be fantastic even just to visit, and to work there would be simply amazing.

In my spare time, I'm an open-source type of programming geek.  Amongst other things, I volunteered to help with 3D acceleration for the Glamo chip a few months ago.  At the time, it looked like there were lots of very keen people, but it appears to be just me and a couple of other people.  Perhaps people were scared off by the need to sign an NDA.  I know many people in the open-source world have objections to this on principle, but no-one vocalised any such thing at the time.  Maybe they were put off by the difficulty of the task.  It certainly seems true that writing graphics drivers is one of the most difficult things anyone can volunteer to do in this field: You have to handle kernel code, memory management, all the subtleties of the hardware and hook it all into a complicated program which there is little internal documentation about.  For the Linux kernel there are many books which gently teach you about the internals of the code and how to go about working on it, but for X.org there appears to be almost nothing.  Fortunately, the inhabitants of #dri-devel on Freenode appear to be very friendly and willing to put up with our basic questions at this early stage.

Well, I was looking for a bit of a challenge.

Not so long ago I wrote OpenMooCow, mostly for a bit of a laugh.  It's a little program which plays a "moo" audio sample in response to activity from accelerometers, trying to be like one of the moobox things you might have played with.  It became quite popular, and I even had patches sent in to make it work with an IBM ThinkPad's accelerometers as well as the FreeRunner for which it was originally concieved.  I haven't done much with it for a little while because, well, there's only so far you can go with a picture of a cartoon cow and four seconds of audio.

Finally, I'm going to mention Thrust3D.  This is a game I started because I wanted to play with the more advanced capabilities of OpenGL, somewhat bored with the limited use I had for it during my PhD work (visualising dots and lines in 3D) while being fascinated by what was possible. In Thrust3D (which perhaps needs a better name), you pilot a little decontamination vehicle around a post-apocalyptic nuclear power station which has undergone a meltdown.  If you played a game called "Lander" on RISC OS many years ago, you'll recognise this idea (not the demo version of Zarch which came with the computer, I'm talking about a 2D game quite similar to Jet Set Willy).  I wanted to recreate a feeling of exploration around a seemingly endless world, full of things to spark the imagination.

Now, the basic game engine is almost completely functional.  The problem is, I've realised I can't draw.  Well, I always knew I couldn't, but I can't draw in 3D either.  So, if you can, and want to contribute to this, I'm waiting to hear from you...

So, there it is.  Come for the geekery, stay for the science, and try to tolerate my occasional whinging or waffling on other subjects.  Let's see where it goes... 

Git Server

| No Comments | No TrackBacks
You might be interested in my public Git server. There you will find source code on all my exciting software projects, including OpenMooCow (the scarily popular moobox simulator), my Openmoko bits which constitute the beginnings of hardware-accelerated 3D rendering with Glamo, and Thrust3D, my silly 3D version of Jet Set Willy in a post-apocalyptic scenario.

Enjoy...

January 2010

Sun Mon Tue Wed Thu Fri Sat
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

About this Archive

This page is an archive of entries from January 2009 listed from newest to oldest.

February 2009 is the next archive.

Find recent content on the main index or look in the archives to find all content.