John has just passed me the new meme that’s doing the rounds. This one’s something to do with a literary stick. Is that a book club? (ok, ok, that was a really bad joke!)

Well, as it’s Sunday and I haven’t had any more elasticy thoughts this weekend, I suppose we better get started!

5 Random Tunes (iTunes Party Shuffle)

  1. Laura – Scissor Sistors
  2. Teethgrinder – Therapy?
  3. Stories – Therapy?
  4. Stand Inside Your Love – Smashing Pumpkins
  5. Steve Berman – Eminem

Currently Reading

I haven’t got anything lined up at the moment.

Ok, Last Book you Read?

Star Wars, Episode III: Revenge of the Sith

Last film I saw

Star Wars, Episode III: Revenge of the Sith (noticing a connection?)

The Next Victims

Next to be beaten by the stick will be:

Elastic layouts have been getting a bit of talk over the last few months. JohnRoger and Patrick have all talked about them. I use an elastic layout in the new design.

What is an Elastic Layout?

Traditionally, web designers talk about either “fluid” or “fixed” layouts. Fluid layouts change width with the size of the browser window, while fixed layouts are set to a specific width. There are arguments for and against each type. Where elastic layouts fit in, is to try and combine the best of both worlds.

The Theory.

Text sized in em units is scalable in browsers (theoretically). So what if we were to specify the widths of our page elements in ems? Our page elements should scale inline with the size of our text.

The Reality.

Using em units to size page elements does work pretty much as expected. However, there are a few things we need to do to avoid some problems.

Global Reset for Less Hair-Pulling

If you let the browser apply its default font-sizemarginpadding and line-height, you’ll be in for a very rough ride. Make things easy – apply the global reset:

*{ font-size: 100%; line-height: 1; margin: 0; padding: 0;} /* Global Reset */

This resizes the text on everything to 100% of the default size (16px by default), sets the height of a line to the size of the text, and removes any default margins or padding. By doing this, we remove a lot of the guess work. I use a percentage value because I’ve found that this makes scaling text a little less error prone in browsers. 1em is now equal to 100% or 16px.

Browsers are Crap at Maths.

All the major browsers suffer from rounding errors to some degree. I must admit that it’s been a while since I checked on this, but both Opera and Safari used to render text sized in ems and percentages wrong – 10px would render as 9px, for example. To get around this, the fix was to size text slightly larger than 100% on the top level element. 100.01% was found to be the magic number. So our global reset becomes:

*{ font-size: 100.01%; line-height: 1; margin: 0; padding: 0;} /* Global Reset */

Make the Maths Easier.

I was never very good at maths (much like the browsers), so working things out in multiples/fractions of 16px wasn’t appealing. It’s also harder to visualise how big 16px is, compared to, say, 10px. So to make things easier to work out and visualise, we reduce our base font size down to 10px (using percentages, this is 62.5%). We can apply this to the html element and it will inherit down the line:

html{ font-size: 62.5%; } /*Resize text to 10px */

1em is now equal to 10px. Much better!

Make Everything an EM.

Well, almost. I’ve found that some browsers (the Gecko ones, mostly), will not render a 0.1em thick border, when 1em = 10px. Any border you want to be equivalent to 1px by default, just make it 1px – it might not scale but it will render. Other than this small caveat, the rest should be sized in em units: margins, paddings, widths, font-sizes… Doing so will make everything proportional to the text size, stopping things looking crowded at larger sizes.

Remember – EM Sizes Compound!

By that, I mean that if you apply a font size of 1.2em to the body tag in our example, then for all elements contained in the body, 1em now equals 12px. So a 3em h1 would be 36px high, not 30px like you might have expected. It’s something you need to be on the lookout for.

A Note About Background Images

Elastic design is geared towards using repeating background images. Unless it’s something like the “Latest Little Thing” icon on the homepage, using non-repeating images will land you with holes in your design where the container is wider than the image. A great example of using repeating background images in elastic layouts is the Elastic Lawn CSS Zen Garden entry.

Give it a Try

With all this talk about maths, compounds, et al, I’ve probably put you off elastic layouts. Don’t be afraid to try them. Once you get in the swing of things, it soon becomes second nature. Practice does make perfect, so all I can say is have a go!

Last night I finally went to see Star Wars, Episode III: Revenge of the Sith. The place was packed, but I managed to grab one of the few remaining seats with a decent view. It was also hot – the guy in the Wookie costume, 3 rows back must’ve been sweating his arse off. Despite the warnings that Episode 3 wasn’t suitable for younger viewers, there were a lot of young kids in the audience.

I won’t spoil the film for those that haven’t seen it yet, and I don’t really want to “review” it, as such. Maybe later.

Leaving the cinema was kinda strange. Everyone seemed kinda muted. Normally the line coming out’ve a film is loud, full of people gossiping about what they just watched. But there were only handful of people that were chatting and even they seemed aware that most people were quiet. It was one of the wierdest experiences I’ve had at the cinema.

I honestly don’t know how ROTS has left me feeling. I can’t honestly say whether I thought it was good or bad. Perhaps I need to see it again. Maybe watching the original trilogy before going to see it spoiled it. Reading the book might have thrown my hopes and expectations off. I just don’t know.

But the important thing is that the saga has been completed. The missing piece is in place. There’s closure.

At least until the DVD comes out!

We interrupt our scheduled Star Wars programming to bring you the latest meme spreading through the blogosphere. Pete passed the baton to me, and before I pass it on, here’s the skinny on my music collection:

Total volume of files on my computer is…

8.19GB, although some of it belongs to the Missus.

The last CD I bought was…

Promises/Warnings – Idlewild.

Song playing right now is….

There isn’t one, as I’m at the office. Last one played on my iPod before getting to work was Creeping Death (live) by Metallica.

Five songs I listen to a lot or mean a lot to me are…

Like others, this is just what’s been played a fair bit recently.

  1. Why Do You Love Me? – Garbage
  2. Galvanise – Chemical Brothers
  3. S.O.S.B*Movie Heroes
  4. Duel of the Fates – John Williams
  5. Bleed American – Jimmy Eat World

Five people to whom I’ll be passing the baton are…

  1. Rob Mientjes
  2. Ben Sekulowicz
  3. Andrew Hume
  4. Tom Werner
  5. Jonathan Leighton

I’ve been browsing more than a few blogs recently, to get some ideas for some projects. One thing that I noticed, which I’ve never picked up on before, is the “Recent Entries” list. More specifically, its inclusion on a site home page.

Call me crazy, but unless you only have one or two entries on your home page, isn’t it just duplicating content? You (usually) have your most recent entries as the content of the home page, so why also include a sidebar menu that lists the titles of the same recent entries?

Fair enough, having it on an archive page – it gives visitors an inkling to what else can be found on your site. But on the home page? Is it worth the screen space it takes up? Couldn’t something more useful be put in its place (says he with the near-empty sidebar)?

Or am I missing something? Is it a usability thing? An SEO trick to increase Google traffic? Or are people so used to seeing it they put it in automatically?

I’ve googled and I’ve browsed various forums and haven’t found the answer, so I’ll put my plea here. Is there an easy way to share one iPod between 2 computers? Normally, I just sync my 20GB iPod at home and leave it at that. However, the full-sized iPod started to feel a bit bulky to be carrying around all the time – so I’ve just bought myself a 1GB iPod Shuffle for the daily commute. Now I’d like to be able to sync it at home and at work.

When you plug an iPod into a machine with a different iTunes library to the one you have it set it up for, the software asks you if you want to associate the iPod with the new library. Doing so wipes out all the tracks on the iPod and if you wanted to sync with your original library, you have to repeat the process. I read somewhere that if you click “No” when it asks you to associate with the library, the iPod should work in “manual” mode – it shows in iTunes but you have to drag tracks onto it to load them in. This doesn’t seem to work for me, as the Shuffle never shows in iTunes.

My home library is on my iBook and my work machine is running XP, if that makes a difference.

I would prefer to stick to using iTunes, if possible, but if there’s a good bit of cross-platform software that will do what I want, I’d be willing to give it a try. So… anyone got any ideas?

Since rolling out Windows XP SP2 around the office network, I’ve come across curious differences in the way Internet Explorer handles file form inputs (input type="file"...), before and after SP2 is applied. At least I think I have…

Some Context.

Pre-SP2, it seemed possible to just type in a value to the input (rather than use the Browse button). For example, a user could type in ”/home/chris/my_file.txt”. In the context of our intranet, “not applicable” was a valid value that the user could enter.

The Issue.

Once SP2 was applied, this no longer worked. In our Intranet system, typing in a value produced an error in our server-side validation script – the script thought that the input had been left blank. Curiously, the page returned by the server had a javascript error warning (“Object Not Found”), despite there being no client-side scripting done on this particular page.

If the input was given a value by clicking on the browse button and selecting a file, everything would work fine.

This issue has caused us a few problems, as a few of our intranet apps suddenly “broke” with no immediate or obvious explanation.

Over to You

Has anyone else come across this little quirk? Could someone else confirm or debunk this?

I must admit to not testing this in any great depth, but I have come across this problem on a number of different pages (not all on our intranet), using a couple of different machines. I did a quick google search and nothing related came up.

Or is it all me fault? Actually, don’t answer that…

Some pure geekery ahead – and possibly a lot of misinformed rambling. You have been warned! This is as much for me as it is for you guys… I had a load of this stuff going around in my head so much today that it was getting distracting.

One thing anyone who really knows me will tell you, is I’m very interested in the whole media centre PC thing (also known as HTPCs). I really like the idea of storing/accessing all my media content (music, TV, film and photo) through one networked device which connects to my TV/speaker system and has a nice, friendly, interface. Heck, to be honest, I’ve been eying up having a decent home cinema system in any shape or form for some time – the HTPC route is just the most appealing of late. At the moment, I have a fairly cheap DVD player, my Gamecube, and a Sky digi-box – not exactly the most cutting edge setup!

The HTPC has been begging to be built for some time. In fact, I’ve got all the bits except the case. I did make one previous, aborted attempt, using a VIA Mini-ITX board and Linux – but hardware compatibility issues killed that one off. This time, I have a 3.2GHz P4 monster just waiting to find a new body. I’ve got my eyes on a DiGN HV5 case, but it’s expensive enough to make my wallet whimper in fear.

The biggest problem, however, is when the time comes to connect everything together.

Here in the UK (I don’t know about anywhere else), most AV connections are done through SCART sockets and leads. It provides good quality audio and video connections using just one cable. The Sky Digibox produces best results when connected via SCART. My lovely widescreen TV has only two SCART connectors and an RF connector (it also has an S-video and RCA connections, but these are on the side of the TV – not practical when you have a toddler). The HTPC doesn’t do SCART. Doh.

What the HTPC does do, is S-Video and SP-DIF audio in and out. It also does good old RF in. This is where a new box of tricks is introduced: the A/V Receiver. A good A/V Receiver will take all your audio and video inputs and let you switch between them. It will output your sound to your speaker systems (after running the sound through an internal Dolby/DTS decoder and amp/preamp) and will give you a variety of ways to output the video signal. So in my case, the inputs would be my HTPCs S-Video and SP-DIF, and my Gamecube. The output goes to by TV by way of a component to SCART converter.

You may have noticed something missing from the above – the Sky digi-box. This is where I’m not sure where to go. The digibox really, really, really wants to be plugged into a SCART socket. Unfortunately, I want to run it through my HTPC so I can record TV and do all that other cool DVR stuff. The simple thing to do would be to run it into the RF socket of the TV tuner card, but I’m not too sure how much the picture/sound quality would suffer… Does anyone know by any chance?

While I’m canvassing opinion, I will add that if anyone has any suggestions for my setup, please give them. I’ll point out that I’m on an extremely tight budget, but I’ll hear any and all advice!

Pixel Meadow has been online since September 2004. In that time, I’ve written (fairly) regularly and hopefully haven’t been too boring!

Prior to opening Pixel Meadow, I had another site. This site had an almost schizophrenic nature. One month it was an out and out blog. The next month it was a developer site. The next, it was both, then a portfolio/CV site… and so on, etc. With no clear focus, it’s a surprise it lasted as long as it did. I grew bored with it often, neglecting it for months on end. Pixel Meadow was me moving forward, getting focused.

However, ChrisMcLeod.Net was my first real website. Before that, I’d just mucked around with homepage builders on various free hosts such as Lycos Tripod. So there was an attachment there that meant that I couldn’t just shut it down and forget it.

Over the last few days, I’ve been working on the archives of my old site; cleaning and recategorising them. Today, I have added them to the archives of Pixel Meadow.

These additions represent everything that was left of ChrisMcLeod.Net. Over the course of its life many changes occured and data was lost – so these additions don’t represent everything that I’ve written there over the years.

It’s been an interesting process looking over old entries. I can see a definite improvement in my writing. I’m a bit more focussed and less “ranty” then I used to be. No matter the quality of the writing, I’d like to think that adding these old entries will add depth to Pixel Meadow as a reflection of self.

I’ve been fascinated by the Transformers – the “Robots in Disguise” – since I was a young’un. There’s just something about giant robots that transform into everyday vehicles and objects that is plain cool!

As is the way, most of my original toy collection was thrown out long ago. However, during the later stages of my stint at University, I happened across the (then) latest toy line. That was it – they’d pulled me back in. A couple of years later and I had a fairly substantial collection again, covering toys, DVDs and comics. For a while, I even ran a (now defunct) community site for fellow collectors.

I still have my collection, but it’s packed away in the loft, for the most part as there’s just no room for it in our home. It’s a bit of a shame, really, but it needs to be done. I think that I’ll probably sell it on ebay one day. After all, I think it’s maybe better in the hands of someone that can appreciate it properly.

I’ve had my iBook for about 48 hours now, and I’m beginning to find my way. OS X (or is it OSX?) is a completely new experience to me, but I think I’m taking to it rather well. I’m still getting used to the difference between shutting an application and quitting an application, but that’ll come in time! For what it’s worth, I wanted to jot down my initial experiences and reactions with the switch. I won’t go into too much detail just yet – I’ll save that for later articles.

  • File browsing is more intuitive, especially after I switched to column view in Finder.
  • A lot more emphasis is placed on using keyboard commands than in Windows…
  • …Which is just as well, as the trackpad is a bit pants.
  • Software installation is a breeze. It’s so simple and logical. Drop the application into the applications folder and away you go!
  • I’m still not sold on the Dock, but I haven’t done any tweaking yet (other than the size of it)
  • Everything just looks better. From the icons to the text to the GUI widgets… it’s just better!

So far, I haven’t done anything to set up the machine for local development/testing. I plan to do this later this week, after I’ve done a bit more reading – I want to set up SVN and Ruby/Rails, both of which I’ve never set up before (or even used before, in the case of Ruby/Rails!). Another thing that I haven’t done yet, is transferred any old files onto the iBook. That’s tonight’s job.

Ok, so it’s official, I’m switching to Mac. The iBook is all but fully ordered – I’m just waiting on my next pay cheque to come in. It’s sitting there smugly in my saved basket on the Apple Store UK. I can virtually hear it saying “I knew you couldn’t resist!”

Barring any last-minute changes of heart on just how much I’m going to spend, here’s what I’ve gone for:

  • 12-inch iBook G4 with 1.2GHz processor
  • 14-inch iBook G4 with 1.33GHz processor
  • 60GB HDD
  • Bluetooth module
  • Additional 512MB RAM from Crucial

I’m lead to believe that installing the additional RAM will be a piece of cake. Far easier than spending the extra £140 for the same amount of RAM from Apple…

I’m counting the days already.

So… anybody want to buy a 18 month old Centrino laptop?

Update 15/01/05 Ok, so I finally managed to find somewhere local that had iBooks in stock for me to give one a test drive. The 12” screen was a little too small for me, so I’ve upped my spec to the 14” model. To offset some of that extra cost, I’ve dropped the bluetooth module. So basically, I can just buy one off the shelf at the store and do the RAM upgrade later. As a bonus, the store guarantees everything for 2 years – so no paying for extended AppleCare!

I witnessed something quite bizarre on the way home from work today. I’d popped into our nearest PC World store on the way, to pick up a USB hub for my parents (2x USB Ports + 8 USB devices = cable nightmare). While I was browsing around, edging closer to the Mac section as I usually do, I overheard another customer talking to a member of staff about antivirus/security software.

Unfortunately, it’s a habit of mine that when a store sales person is talking about anything computer related I listen in to see how clued up – or not – they are. With PC World, normally the staff aren’t particularly good. This staff member seemed reasonably knowledgable about spyware/virii, how they get on your machine and cause havoc and how to avoid them. Slightly better than average I’d say. He was recommending an overpriced, not-so-good bit of software though…

Anyway, conversation finishes and customer leaves contented. It was only then that I realised who they had been speaking to – the store security guard! I was amazed, simply because he seemed more clued in about computers than most of the other staff I’ve had dealings with in PC World (or most big chain-stores for that matter). I hope they pay him extra for being a decent salesperson as well as keeping the store secure!

When I implemented dated URLs for the blog, I mentioned that I had a particular idea that I wanted to implement. This idea is simple enough – an easy, convenient way for a reader to find entries in the archives. The basics of the idea are explained, in Michael’s discussion on his recent redesign. He calls it a “Digging archive system”, for lack of a better term. Think of it as a “lite” version of Apple’s Finder, but for you weblog archives.

Since Michael explained what he was looking, I’ve been thinking about the problem a lot. It’s an incredibly cool/good idea. The trick is implementing it. The page shouldn’t reload as you dig through the archives, which excludes a purely server-side solution. That leaves XMLHttpRequest (ala Livesearch) or preloading all the data on the page when it loads.

As cool as XMLHttpRequest is, I can’t think of an efficient, graceful method of achieving the desired look ‘n’ feel (if anyone wants to show me a way, feel free!). Instead, I’ve been leaning towards a mixture of CSS and DOM to provide a solution

By using nested lists, we can build up a semantic structure of the archives. In my example it is structured by date, but I can also imagine things working for the standard section/category structure of a standard Textpattern site. Consider this (very) basic structure:

[image lost]

Obviously this would be far larger depending on the size of the archives. The classes are there to allow you to style the lists in case javascript is turned off. If javascript is available, we add a second class to the <ul> elements, otherwise they are left alone. Graceful degredation is good. In the same vein, the idea is to not have to use onclick="..." attributes in our XHTML, but to use DOM to add the event listeners. Gotta keep the code clean!

I can imagine the system working like this:

  • The latest year/month/posts are displayed by default
  • Only years/months that have posts are listed.
  • When a reader clicks on a month, the relevant posts are displayed and previously displayed posts are hidden
  • When a reader clicks on a year, all the previously displayed months are hidden and the relevant months are displayed
  • Clicking on a post title takes the reader to the entry.

Toggling the visibility of a list is handled by setting its display property to either “none” or “block”. All other layout is controlled by the stylesheet. So we could end up with something that looks like the following (top is what it looks like with javascript enabled, bottom is how it would display otherwise, if CSS is still enabled) –

[image lost]

That’s the theory, anyway. The problem is that I haven’t got that much in the way of DOM/Javascript “m4d sk1llz”. Is there anyone out there that might be able to point me in the right direction or otherwise help out?

[Editors Note] This was the first post on my Pixel Meadow blog, but obviously not my first ever blog entry.

Writing your first line is hard. From English classes to blogs, everyone has struggled to write the opening sentence. This short entry recognises that fact and pays tribute; looking back at how others have started before me.

Writing the first line is the hardest part of the writing process. Remember back in school? You could sit for hours trying to come up with the opening sentence for the essay your English teacher wanted in the following morning. The rest of the essay was always easy by comparison.

It was the same with that love letter you wrote to your sweetheart; the first line in your million-dollar film script; the first post in your blog and every post after.

I was curious to what other writers had put in the first posts on their blogs.Dan@SimpleBits alludes to an older version of his blog and how this one will be different. So does David@MezzoblueJon Hicks welcomes you to his lab.Dunstan wrote about Paris. “First Post!” is all Michael had to say. Othershumbly welcome you to their blog and explain why they’ve started writing. I nearly joined them. Some write to share information, others write to get better at writing.

This entry is a tribute. At least, I’d like to think so. A tribute to the first line; the opening sentence; the first post. I’d like you to think back to where you started from. That mountain of effort that started your blog. Share what it was like.

Welcome to my first post.

Malarkey has just posted a fine summery of the pitfall of the various “badges” that currently litter a lot of “standards compliant” websites. You know the ones – they point to the various validators.

A few pitfalls are identified –

  1. They’re pointless if your site doesn’t quite validate for whatever reason (which is subjective with the accessibility validators anyway)
  2. They offer the Average Joe absolutely no explanation as to what they’re about. Instead, they just plonk them in a highly confusing, jargon-filled site.

He then offers a far better solution – link to an internal page that explains what the buttons mean. That way, you can still claim your site validates while actually informing people what it means.

It’s a solution I agree with – expect to see it in use here shortly.

Ever since I joined Technorati and “claimed ownership” of this blog (and Gentooist), my Technorati Profile has always read “No Verified Blogs”. What exactly do I have to do to change this? I thought the instructions were something along the line of:

  1. Signup to Technorati
  2. Add a Blog
  3. Embed Technorati profile link in pages
  4. Setup MovableType to ping Technorati when posting an entry
  5. Write

Am I missing a magical step? I’ve done all that, written several entries since joining and yet there’s been no change. The mind boggles!

Hopefully a more enlightened user will hear my call and be able to shed some light..?

Just came by this massive list of great web standards articles by way ofSimplebits (where you can also find this list).

I think, out’ve the 450+ links, I’ve read around about 30 or 40 of them…
Time to get reading!

For posterity, I’ve duplicated the full list below.

Mahoosive List O’ Links

I just discovered this wonderful series from Asterisk*.

Being as I have worked with bands before (while I was still a young wasterstudent), and still have a bit of interest in the local music scene, I’ve struggled along trying to create a website that promotes a band image, is useful to the users and is basically… something to be proud of. I must admit, looking back, I failed everytime.

Looking at someone else’s design methodology is always refreshing and inspiring, especially if you can identify with the subject.

Hmmm. I (almost) fancy doing just one more band website…

If – like me – you do a lot of “tinkering” with your Gentoo installation, you’ll invariably end up typing a lot of commands over and over again.

Aliases save you from having to remember/repeatedly type in these commands. Aliases, in case you are new to them, are command line shortcuts. As such, they can save you a fair bit of time when working in the terminal.

To set up an alias, you use the alias command:
alias aliasname='command'

There are a couple of Gentoo specific aliases that I have set up:

  • unstablemerge—a shortcut to ACCEPT_KEYWORDS="~x86" emerge
  • retrymerge—saves typing in emerge --resume
  • rc-add—instead of rc-update add
  • rc-del—instead of rc-update delete

Got any more? Leave ‘em in the comments!

From The Register

Computerised lamp posts look like being the basis of the biggest data network ever, as the world’s traffic monitors set about controlling cars with wireless. And the result could be an absolute windfall for a startup company which, it seems, owns all the relevant patents.

The whole article reads like some sci-fi nut’s dream… but it could become very, very real. If an entire city or town or even a simple road was a big, internet connected wireless hotspot, you could pretty much access information anywhere. How cool/scary is that?

Microsoft’s Internet Explorer is the dominant web browser out there. There’s no denying it. However, it would appear that its grip on the top spot is slowly – but surely – loosening.

Reviewing the site stats over the last two months (well, 43 days to be exact), there has been a fairly substantial increase in the number of unique visitors using Mozilla. In the first few weeks of the stats, Mozilla (and Firebird – the stats don’t differentiate) accounted for around about 12% of all site visitors. IE6 had approximately 78%, with the rest mostly going to IE5.x/Win, IE5.x/Mac and various minor versions of Opera 7.x.

However, looking at the stats tonight shows the Mozilla browsers at 18.67% – a 6% increase! IE6 is down to 71.89%. A surprise new entry is Netcaptor, which grabbed 3rd place with 2.36% of visitors using it. The rest of the top ten is still IE5.x and Opera 7.x fighting it out.

Just goes to show that IE isn’t the only browser you should consider, when you design web sites. There’s a significant number of users out there that have started using (the far better) alternatives. After all, if my stats are any indication of the web at large, that would mean that an IE only site cuts out a potential 30% of visitors. How can anyone justify a number like that..?

I’ve finally taken my first steps with ASP.NET. I’ve only done some basic research and examples and all I can say, is that it’s one f*cking powerful choice for developing web applications… It’s so far ahead of vanilla ASP that it’s terrifying. It’s great being able to use another computationally complete language. ASP.NET is so much faster as well.

Shame that it costs a lot to actually roll out anywhere. Your average Windows Server license doesn’t come cheap and IIS is pretty much the only way web server that works. Neither are most of the tools cheap. Naturally, the ideal way to develop with .NET is with Visual .NET Studio (megabucks) and use SQL Server (again, megabucks) as the backend.

However, there is an alternative. Actually, there’s 2 – but I can’t get Dreamweaver MX to connect to any databases when coding .NET pages, so I’m discounting that. Besides, the code it generates looks a bit bloated. So ignoring DW MX, the alternative is The Web Matrix Project.

Web Matrix is free. Despite this, it comes from Microsoft. Despite coming from Microsoft, it’s actually a well thought out and rather good program. It’s sorta like FrontPage for .NET (don’t let that put you off!!). It features WYSIWYG design view – which I must say that I’ve never used – that allows you to drag and drop server controls into your page. It also offers code views so you can type everything in directly. What’s really nifty, is that it has 2 code views – one for coding the (X)HTML and the other that displays only the server side code. It also comes with a compact personal web server so that you can test stuff locally without shelling out for a Win Server. All in all, it’s a dream for those of us that are cheapskates!

So that’s the coding environment sorted out, but what about the backend? Well, you could use XML, which is treated exactly like any other database. However, I dunno anything about using XML with .NET at the moment, so I’ll skip that. So what’s left? Well, Access is the one that most will tell you to use. But I hate using Access. It comes from having to use it at work. So I went down a route that some said was impossible, and others said was difficult. I say pfft to them, cos it was a piece of pish. So what am I using for my .NET backend? MySQL over OLEDB.

Putting a Microsoft programming technology alongside an open source database solution doesn’t quite sit right in the brain. But it works, and works really well I might add. What’s more, because of the nature of OLEDB in .NET, I can pretty much use any database by only changing the connection string.

So now that I have my development environment, I guess it’s time to actually delve deeper into the murky depths… I guess that’s my project for the holidays sorted then.

Internet Explorer is not known for it’s strict adherence to web standards. However, recently it’s been acting even stranger than normal.

For example, font keywords are completely screwed up. IE6 should act the same as Firebird in this area. However, no matter what I try, IE on my machine will not adhere to anything other than font-size: small or larger.

The box model is even more broken than normal as well. Weird margins keep cropping up all over the place, which is a nightmare when trying to write new e107 themes!

It’s only just started recently, so I’ll maybe spend some time investigating whether it’s the latest IE security patch that’s caused it…