Posts

So where are the Google gadgets

Oliver Brown
— This upcoming video may not be available to view yet.

If you use Google personalised homepage, you can add Google gadgets to them. A Google gadget is just an XML file (or more usually the XML output of some dynamic page) that is displayed. There is a well developed API and you can do quite a lot of nifty stuff with them. But they don’t seem to be that popular (searching for Google gadgets, with Google gets very few relevant results).

There are quite a few in their gadget directory but very little mention of them outside Google…

OrbWars

— This upcoming video may not be available to view yet.

OrbWars, my online game which I closed last year due to money and time concerns, will be returning soon! By soon of course, I actually mean I’m not sure when exactly, but that it will be in the near future - probably a month or two. The old website is back, nothing much on there at the moment, just a teaser image, but I’ll put updates on there as I get things finalised! Link: http://www.orbwars.co.uk

Some Stargate stuff

Oliver Brown
— This upcoming video may not be available to view yet.

I’ve started a new page listing some of the story arcs from Stargate.

That is, it lists all the relevant episodes for the story arcs (useful if like me you own most of them and want tory and make sense of them without other stuff in between).

I wrote a bash script

Oliver Brown
— This upcoming video may not be available to view yet.

You may possibly have noticed the intermittent availability of the site during the last hour. Well I’ve been fiddling around trying to get my clever “restart Apache and MySQL if they crash” script working.

To that end, I did something unexpected: I wrote a shell script in bash. Not something I ever came close to trying before but it was surprisingly straightforward. The implicit availability of regular expressions everywhere definitely made things easier.

Have a look at this bash scripting guide for more info…

A safe language on a safe OS

Oliver Brown
— This upcoming video may not be available to view yet.

Have you heard of “managed” code? Generally it refers to code that has no direct access to memory and instead has to access everything through a protected interface of sorts. The main advantages are that a program can’t go poking memory that it shouldn’t and useful rules can be enforced like type safety.

The most prevalent example of managed code is nearly everything running under .NET/Mono. Admittedly you can mark parts as “unsafe” letting you use pointers and stopping the garbage collector arbitrarily moving your data around but most of the usefulness comes from avoiding this where possible.

The problem is, you can’t always avoid it. The main reason for this is you have to access existing non managed systems. Rewriting everything in managed code is not feasible and although you can lessen any problems by writing wrappers so there is only one point of contact between managed and unmanaged code, problems can still occur - the sort of problems the managed code was supposed to prevent.

Microsoft are investigating a solution. After reading that last paragraph, the form of the solution should be obvious but for the most part it’s unworkable in the real world - eliminate all unmanaged code.

A lot of people claim managed code, or specifically .NET is slow and inefficient. Well it is. But it can be made faster. Most inefficiency is caused by a lot of run time checks to make sure everything is as it should be. If the code lives in an entirely managed world however most of these checks can be removed since (barring random hardware failure) the program can be guaranteed to satisfy the run time checks at compile time.

For more details about Singularity, Microsoft’s research operating system written in C#, check out this article by James Larus, Galen Hunt, and David Tarditi over at MSDN.

Multiple forms in ASP.NET

Oliver Brown
— This upcoming video may not be available to view yet.

I previously ranted that being unable to have two ASP controlled forms in a single ASP.NET page is a serious flaw. They may be a way round it though. I would assume that ASP.NET can’t output two “smart” forms (the ones with runat="server") on the same page but I’m pretty sure that there is nothing stopping a HTML page itself actually holding two of them. Of course that could be wrong.

Essentially all you have to do is load the extra forms using AJAX and I think everything will work.

(I’m working a on a page (not in ASP.NET) that has a table of data with a status column. Each column needed to have a drop down box letting you change the status. Since the number of statuses is large I decided to have a link that AJAXly changed into the dropdown box and a button when you clicked it. Of course you could click all the links and not submit any of the forms leaving you with a page that actually has a bout 30 forms on it.)

No computer - no internet

Oliver Brown
— This upcoming video may not be available to view yet.

Not having a computer also means that I don’t have internet access outside of work.

I say this just to make it look like I’m still updating the blog.

Explaining the Matrix

Oliver Brown
— This upcoming video may not be available to view yet.

The Matrix was quite a good series of films. But without any extra interpretation left most viewers reasonably underwhelmed.

Well see what you think of this theory.

It’s specifically about the second movie, The Matrix Reloaded (there is a link to one about Revolutions too) but I think the second is where the most understanding is required.

It also has a prediction about what could happen in the third movie (it was written before it was released) and I think I like it more…

Money for Picasa

Oliver Brown
— This upcoming video may not be available to view yet.

Google are now offering $1 for anyone you get to install Picasa (their clever photo organisation software thing) as part of their AdSense referral program.

So first, go install Picasa and then come back and go join AdSense so you can benefit yourself. And if you haven’t already, get Firefox: You can get AdWords if you want but I doubt you’ll spend enough to get me anything.