16 Sep

great bargain in a cheap shop

I dropped into a charity shop on the way home today and came across a copy of Artifical Intelligence, by Elaine Rich and Kevin Knight for €2. I couldn’t resist it. I spent the rest of my walk reading the connectionist chapter. It described everything very clearly, even though my eyes rolled back in my head and I started gibbering when I came across some maths in it.

It turns out that the model of neural network that I have chosen to build for the recognition engine in my gardening robot is actually closer to a Boltzmann Machine than a Hopfield Network. The difference appears to be that Hopfield Networks give binary outputs, and are therefore kind of jerky in response, while a Boltzmann Machine gives more of an analogue output, which allows fuzzy results (instead of “Yes, that is a cat” in the former, you get “That’s probably a cat” in the latter, which would be more accurate).

Another interesting part of that chapter was its treatment on recurrent networks, which allows a neural net to do things like learn to speak, learn to walk – generally anything which has a list of actions which must be performed in sequence. This is something I have had an interest in since I started thinking about how to make my robot mobile. The first generation of my bot will run on tank treads, but once I am confident that the prototype works, I will be considering insect-like legs, which take up less room, and allow the robot to step over vegetation without damaging it too much.

Stay tuned – I hope to have the first release of my Rekog engine complete by next weekend – I’m getting the hang of KDE programming. That engine will be multi-purpose – it will be a general recognition engine, usable by other people for other purposes (facial recognition, etc); not specifically what I planned it for.

15 Sep

xmlhttprequest object for ie7

According to this post, IE7 will have a native XMLHTTPRequest object which will not require ActiveX to be enabled (after all my hard work writing a workaround for IE6 and IE5!) – this is great news for those of use who are excited about AJAX.

Other interesting fixes include a rebuilt <select> box which allows elements to be layered over it, and a web developer toolbar (probably heavily influenced by Firefox’s webdev toolbar).

14 Sep

let the flaming begin!

Microsoft have opened a new website called Microsoft Gadgets. They claim to have invented something “innovative” and “super-exciting”. Their own description of what a “gadget” is:

What are Gadgets? Gadgets are a new category of mini-application designed to provide information, useful lookup, or enhance an application or service on your Windows PC or the Web.

And – taken from The Free Dictionary:

Noun 1. gadgetry – appliances collectively; “labor-saving gadgetry”
appliance, contraption, contrivance, gadget, widget, gismo, gizmo, convenience – a device that is very useful for a particular job

“Widget”, eh? Where have I heard that word before? And, before you think Apple is the only entity Microsoft rips off, check out Super Karamba for Linux, and the huge amount of buzz around the KDE desktop’s upcoming Plasma technology

I won’t labour the point – the comments do it in abundance. At the time of writing, there are 91 comments blasting MS out of the water for their blatant rip-off “innovation”, and about 2 fanboi comments saying “we love you, Microsoft!”.

12 Sep

discussing reality with a sufist

Over the weekend, I had a visit from an old friend – Belinda McGowran, a reiki master from Dublin. She was up visiting someone in Emyvale, and decided to pay a passing visit to myself while heading back home.

She had a friend with her, a Sufist who’s name I can’t quite remember – Parva Herrity, I think it was.

We talked a lot about spiritual life, and we discovered that there are quite a few parallels between what I believe, an atheist, and what Parva believes, a Sufist.

While I think a lot of the stuff she talked about was a bit too outlandish for me, some points I agreed with completely. I won’t break them down, but instead, I’ll try to explain what we agreed.

Life is disorderly and cruel. Some people are lucky, and some people are unlucky. Sufists believe that this is all fate, that unlucky people are in that state because they need to learn from it. I think this is akin to “being in the gutter, but looking at the stars”.

Realising that there is no point to life is an important step in the growth of the self. At first, there is a mental anguish and an urge towards self-destruction, but eventually, this clears into a contented peacefulness with your own state of existance. This is true for both myself and Parva.

It is very difficult to explain an experience of “enlightenment” (or “realisation” or even “gestalt”) to someone that has not experienced it.

Here is part of the above description:

Simple techniques that strengthen our ability to concentrate are meditation, chanting (with awareness), and mentally affirming what’s happening now (“I am breathing in,” “I am tasting my food,” “I am driving my car and passing exit 89.”) Over time they help us being aware of (i.e. realizing) what’s happening in every moment.

This sounds elementary, but it’s actually quite difficult. For example, imagine your trip to work. Are you aware of everything around you? Most of the time, I find that I daydream on the way to work, and can’t describe anything that I have passed on the way. Enlightenment is a feeling of awareness, where you suddenly realise your state of being.

I won’t dwell on that, as I’m probably the wrong person to describe the feeling. For me, though, I believe I felt “enlightened” after I went through a very dark period in my life. Coming out of the other end, I realised that life, even if it is pointless, is worth living. I can’t describe the feeling – but it was a bit of a shock.

Another thing we agreed on is that the whole universe is basically a dream. Parva described us all as thoughts of God – that we think we’re real, but that we are actually just virtual versions of even more “real” versions. I described the philosophical idea of Platonic Idealism (the Cave story can explain it) to her, and she said that this was what she was trying to describe.

My own take on this is that the entire universe is just one probable configuration out of an infinite number of them. That, when taken individually, each universe is “real”, but when summed up, the total existance of these universes is null. This is kind of similar to the idea of virtual particles – that at any point in the universe, there exists a particle and its anti-particle. When taken in sum, those particles do not exist (ie: they are “virtual”), but each of the pair has the potential to exist. This is where Hawking radiation comes from – in essence, something has popped from virtually existing, to really existing. This is how I think the entire universe is – that in sum, it does not exist, but we live in one “potential” reality of it.

Again, that’s a hard concept to devour, but I think Parva understood what I was trying to say.

I enjoyed the talk. It was fun. I’d like to do it again at some point, after we have both had time to digest what the other was saying.

09 Sep

freenx rules!

I use VNC quite heavily. In the office here, I work on a WinXP machine (not my choice…), and always have at least one VNC session open to the local server, ls1 (“Linux Server 1” – not imaginative, I know 😉 ). I sometimes connect to a local MacOSX box as well, when I’m trying to get something to work in Safari.

The biggest problem I have, though, is when I access my home machine, Monolith. The screen refreshes take about 10 seconds to complete through VNC!

There is an improved server/client protocal out there, though – the NX protocol. It is incredible how much improvement there is, when I connect to my home machine with it!

To try it out yourself, either grab a copy of the FreeNX package and build it yourself, or if you’re using Fedora, follow this list of instructions (which, handily, you can just paste into a tmp file and run as a script).

08 Sep

stupid losers

Just got this guestbook entry in my girlfriend’s website.

Name: Anonymous
Email: anonymous
if u made ur freaking font size smaller, people will actually be able to read the information you hav on the website. take my advice and fix it up

Well, Anonymous, a big fuck u to you. If you don’t want the font to be so fucking large, then open up your Internet Explorer (I know you’re using it), and click “View -> Text Size“, and change it from “Larger” to “Medium”.

Some people are so fucking stupid! That’s like complaining that an artist has fucked up the colour in a picture, when all you have to do is take off your stupid fucking tinted glasses and look at it like any normal person does.

Hey, loser, there is nothing wrong with the font size on that website – it is set to use whatever your browser has chosen as the default.

08 Sep

mental problems suck ass

As some people know, I suffer from depression. I take 75mg of Effexor for it every day. This usually makes the feeling dissipate, so I can get on with my life and get some work done.

Unfortunately, this doesn’t seem to working for me now – the last few days, I’ve felt bloody awful.

So, why am I writing about this, when I usually write about techie crap? I guess I just want to describe the feelings, so that people out there in blogland with the same symptoms might realise they should also be looking for help (yes, there is a light at the end of this tunnel, and it’s not a train).

The most obvious symptom I have at the moment is a huge amount of nervous energy, which I can’t seem to channel into anything useful. I have this awful feeling that I need to do something (like the beginning of a yawn, where you just have to finish it), but nothing I do will get rid of it.

There is also a lack of attention – I find myself struggling to stay on topic with anything, and cannot focus on my work.

Also, there is a nervous tick – right now, for example, my legs are jumping up and down, and I find myself cracking my knuckles and some other joints quite a lot.

Basically, I feel like a tightly wound spring locked up in a box and buried – the energy is there, but there’s no way to get at it.

An interesting thing, I think, is that in my mind, I am screaming, but the only physical signs of my stress (or distress) are my ticks, the fact that I keep going on short walks to try get rid of this, and the forcefulness with which I’m attacking teh keyboard.

My usual doctor is off on annual leave, and I was due to see him next on Sep 19 (which is both my birthday, and talk like a pirate day (funny thing: I viewed that page, saw the rounded borders, read the source code to see how it was done, and thought “IE7 supports border-radius now?”, then realised I was actually reading it in Firefox – this is probably a stupid point actually – stop reading it.) ), but I’ve managed to get an appointment for later today, which is handy, as I’ve been blowing my top for the last few days, and I’d prefer to not have killed someone by the time of my next appointment.

Oh alright – a bit of techie crap: in the HTML of this article, I’ve used <i> elements instead of <em> or <strong>. The reason I chose that particular element is that contextually, it was not necessary for the contents to be highlighted in any particular way – the italicising was just an aesthetic choice. This is similar, I guess, to having an <img> which is just there to relieve the boredom of a plain page, and really should not have an alt parameter attached to it, no matter what the accessibility gurus say.


07 Sep

quick php efficiency tip

Rewrote some code today. It was a bit long-winded.

It was:


Rewrote to:

 foreach(array('name','id','start','action') as $v)$$v=getVar($v);

This method can be used to really help clean up longwinded variable initialisations.

06 Sep

proper order of ingredients in coffee

I was just thinking about this while making my coffee.

If you use a spoon to put in your granules, then use that same spoon to put in sugar, then you will get coffee granules in the sugar bowl, which could irritate the tea-drinkers. It’s safer to do it the other way around, as generally, coffee drinkers like a bit of sugar in their mug.

If you put the milk in after the water, then the milk will get scalded. Think of it a drop at a time. One drop of milk falls down and hits a load of hot water drops, so the milk drop heats up very quickly and possibly curdles. Compare that to the opposite – you pour hot water into cold milk. The first drop of hot water hits a load of cold milk drops; the milk will heat up slightly, and the water will cool quickly. It is best to pour in the water last, in my opinion – unless you like your coffee creamy, instead of milky.

The only real question, then, is whether to pour the milk in before the coffee and sugar. I do notice, though, that when you pour granules into liquid, it takes longer to saturate them, than if you pour liquid into granules (the pouring tends to act chaotically on the granules, allowing the saturation to complete much quicker). My opinion is that the milk should be poured in after the granules.

So, the order in which a proper cup of granulated coffee should be made:

  1. Sugar granules
  2. Coffee granules
  3. Milk
  4. Water

Now that I’ve taken the time to write about it, I feel justified in drinking this well-considered cup of coffee.