Learn more about Apple than you ever thought you could.

Posted in Ajax on November 30th, 2006 by admin

OK perhaps you won’t learn quite that much but The Apple Museum gives you a fantastic insight into the company we all know and love for the awesome iMac, MacBook and iPod.

My Favourite parts of the museum:
Codenames: Prototypes/Unreleased - Check out the top 5 spot the theme ;0)
Prototypes - Some great ideas that didn’t quite make it and a couple you would have liked to see. A Mac DigiBox! awesome.

ASP.net Control adapters V1.0

Posted in Asp.Net on November 30th, 2006 by admin

ASP.NET 2.0 has given web application developers a lot of improvements over 1.1 despite the buggy Development Environment. One of my favorites is the Control Adapter Architecture, this gives us the ability to change the way a control renders without going to the trouble of creating our own custom control to replace the control we want to tweak.

The process is actually very simple and the results can be extremely good.

One of the big applications for this is to implement a control adapter that will render markup that will be more CSS compliant or even rewrite the rendering so that instead of tables you render using UL and LI tags. In essence you get to take control of the rendered output rather than relying on what you get ‘out of the box’.

I won’t go into technical detail in this post as frankly there are better resources out there, but in order to take advantage of this technology all you need is an adapter file, simply a class that overrides the RenderContents method, this class needs to inherit the

System.Web.UI.WebControls.Adapters.WebControlAdapter

class.

Now you have part two of the two part partnership required to customize your control, part one is of course the control itself. To bring the two together we have a middleman that sits in the App_Browsers folder of your application. This .browser file contains the XML that maps the control to it’s adapter and is where a lot of the ‘magic’ happens. It’s possible, using this file, to map your control to different adapters depending on the browser ASP.NET knows to check the browser and will point the control to the correct adapter as required. The browser file contents look a bit like this:

1 <browsers>

2 <browser refID=IE6to9>

3 <controlAdapters>

4 <adapter controlType=System.Web.UI.WebControls.DropDownList

5 adapterType=AlgSoftware.Web.Controls.Adapters.DropDownListAdapter />

6 </controlAdapters>

7 </browser>

8 </browsers>

If you are interested in finding out more about this then I recommend you download the latest release from here, You may also want to read through Scott Guthrie’s latest post about the adapters, as always Scott has included loads of great info as well as all the links you’ll need to get on top of this technology and improve your applications.

Vista launch day!

Posted in Interesting and Entertaining on November 30th, 2006 by admin

Well the day has finally arrived. Microsoft’s shiny new OS is released to business users today. (Those of you with MSDN accounts have been able to download it for a couple of weeks of course). Everyone else should be able to get it in the new year.
It will be interesting to see just how the new shiny OS is taken up by businesses, I suspect that only those who skipped XP Pro and will bother as the cost of ensuring the hardware platform is up to scratch will be a major burden for some.
Is it worth saving up for vista if your a home user? Difficult to answer, personally I am going to wait. There are two motivations for this:
1. My Windows XP installation is running just fine, all my applications work, all my drivers work, and I get great performance despite the age of my processor and motherboard. (if it ain’t broke don’t fix it!)
2. I can’t afford the price tag.

Let me expand on my second point:
The license for Vista itself is apparently not going to be more than the cost of XP so expect an upgrade to cost you at least £70+. Unfortunately this is not the end of it. Vista has a nice feature built in that will either give you bragging rights amongst your peers or will force you to ensure the P.C. is tucked away in a dark corner covered by an immovable object whenever they visit. What the hell can produce this kind of response? Vista has a nice scorecard facility built in that tells you just what kind of experience you will get. This is basically a numeric value applied to each key piece of hardware, the final score is simply the lowest common denominator.
This isn’t all bad I suppose because you can at least target your upgrades so that you replace the worst piece of hardware first. But it is a constant reminder of your poor performance, if indeed your hardware isn’t quite up to it.

There are options in Vista to turn off some of the whizz bang shiny glassy stuff so you can claw back some of that performance, turning off Aero will drop the visual look and feel but will increase the responsiveness of the user interface on some systems.

My feeling is that if you are going to be looking at a new P.C. for Christmas or in the January sales then buy wisely, you’ll be getting Vista free with these new systems anyhow so they should be up to the job, but do be prepared, just because a system is Vista ready does not mean it will get you a high score on the scorecard.

It’s not all bad, Vista does look good and does have many improvements including better security… For me though, I’m holding off… For Now ;0)

How not to design a dialog box…

Posted in Ajax on November 29th, 2006 by admin

This article on the CodingHorror blog shows just what can happen when developers fail to know when enough is enough…

The result:

How Not to design a dialog box

When development goes wrong! - part 2

Posted in Interesting and Entertaining on November 28th, 2006 by admin

Since my last post turned int a rant I wantet to post the original text that I planned for y’all.

I came upon this post today by Moishe Lettvin, a former Microsoft developer now working for Google. It’s also worth reading this follow up post as well to get the whole picture.

Thanks to Frans Bauma for blogging the original post, it certainly struck a chord with me.

I also think I should make it clear that while I made no mention of specific names in my last post, it may be easy to get the impression that I left my last job hating everybody, thet’s not the case. I came away after 6 years with some very great friends who I respect and admire very much indeed and they know who they are. As for the rest? well, nuff said… :0)

When development goes wrong!

Posted in Interesting and Entertaining on November 28th, 2006 by admin

Through my relatively short career in professional Software development (11 years), I’ve worked in a variety of different setups with different processes and procedures. In the previous job to my current I was kept in a perpetual state of frustration, dissapointment and anger at the ridiculous decisions and stupid secrecy that did nothing but split teams and cause resentment.

Don’t get me wrong, I know that there are times when a company needs to develop something with a very small group of people to avoid possible leaks. But when you get ego’s mixed in you get the I’m better than you comments and attitude, you get to feel less important in the whole picture as a result and your confidence bombs.

It’s not all down to management, as the ego belongs to the individual, but there is an element where project managers lose their overall sense of the big picture and they themselves can become blinkered and focused on the one small part of the great big whole. Then you get a definite divide and a very unnatural and unhelpful competitive spirit growing within the team.

The result can be a complete breakdown of communication between the waring factions and a drop in the creative input during team meetings and project discussions because those ‘untrusted’ and ‘unskilled’ people will clam up while those ‘important’ and ‘highly valued’ members of the team, with their new found confidence, will put in all their ‘awesome’ ideas. They may well be excellent ideas too, but through the lack of full integration and participation you’ll never get the ‘alternative’ views that shape ideas and eventually produce the diamond.

I write this on the anniversary of a very dark period in my career, where I was continually made to feel useless and ‘not worthy’ by some people including the project managers. So much so that I was on the brink of jacking it all in and seeking a new career, possiblyback into graphic design.

Thankfully after Christmas last year, after feeling physically sick at the thought of going back to work for the people who made me feel that way I decided not to let them win and My wife and I relocated to North staffordshire where I joined a great company with people much smarter than me but lacking the ego! My confidence is at an all time high and I’m once again enjoying development.

I didn’t intend to writ this post the way it turned out but I figured rather than delete it I’d post it as an encouragement to anyone else out there that is going through the same thing… don’t let the bastards get you down!

Coffee Update

Posted in Ajax on November 23rd, 2006 by admin

I realise I haven’t included a caffeine rating since my first post, the whole reason for calling this CaffeinCode is because like most developers I have more coffee than blood flowing through my veins and I can get through more lines of code when I have a coffee in my hand ;0)

The reason for no ratings lately is all due to a massive disaster… I ran out of beans :00 normally this would just result in a trip to the local Starbucks and/or Wittards to replenish the supplies…  But those of you that know me know I’ve just moved to North Staffordshire.  This move has been good on so many fronts but there is always a downside, and the downside here is the lack of a Starbucks and Wittards in the vicinity.  Rumor has it that a Starbucks is due to open in Knutsford where I work, this will lessen the blow slightly if and when it happens.

Well the good news is that I did manage to raid the local Wittards on a trip to Milton Keynes recently so stocks are in place at the moment.  Currently I am enjoying a fine mug of Colombian, which was the coffee of the month in the MK Wittards.  It’s a dark roast with a fine aroma and gives off a nice nutty taste with toffee lingering in the mouth afterwards.  Go on admit it you are impressed with that description ;0)

Caffeine index: 9/10 what a buzz!!!  note to self: might need to dial back the amount you put in the hopper next time! 80)

Documenting the Prototype library

Posted in Ajax on November 23rd, 2006 by admin

If you have ever tried to get to the bottom of how the prototype Javascript library actually works, you may have felt that you need a degree in JavaScript to understand what is going on.  I know I have.
It’s not as if it’s been made deliberately hard to understand, it’s just that there is so much there and it’s put together so well, and so standards compliant, that it takes you a little time to get to grips with it all.

Of course this is not helped by the lack of documentation available.
I’ve been on the lookout to try and pin down some documentation that can at least cut down the time it takes to get up and running.  My search is not complete but I already have results and I thought I’d share them here so you can get started with using some of the less obvious features of Prototype.

First up is a cool chart documenting the Objects, Methods and Properties of the Prototype JavaScript Library this comes from Jonathan snook’s site which contains a whole host of useful stuff besides this chart.

Next up is a great resource put together by Sergio Pereira.  Sergio has put together a set of Developer Notes for Prototype.  These notes currently cover version 1.4.0 so may be a little out of date if, like me, you are using the latest release.  That should in no way discourage you from bookmarking the site and using it as a reference though.  Sergio has done an awesome job of putting this together.  there’s no bells and whistles here, just the documentation.  Oh and how could I forget to mention that there is a handy ComboBox in the top right corner of the page, from which you can choose your language of choice, Hungarian, Vietnamese, Chinese, Russian, German… and loads more.

Next up is a quick guide to prototype from the folks at Particletree this will give you a brief overview of the most commonly used functions and will be more than enough to get you started.

The great news is that there is due to be a new documentation site launch sometime soon encytemedia have already begun work on it and have asked for help from the community to put it together and save re-inventing the wheel.  If you are passionate at helping people get the most out of Prototype.js and you have documentation of your own, drop them a line with a copy of the documentation and lend a hand.

PrototypeDoc.com have a nice collection of articles that you’ll find useful too, worth bookmarking for future reference.

The Daily WTF - Representative Line: Tetricosanary Logic

Posted in Interesting and Entertaining on November 23rd, 2006 by admin

The Daily WTF - Representative Line: Tetricosanary Logic - Another fine entry for funniest story of 2006!!

The Daily WTF - Lacking Knowledge Essentials

Posted in Ajax on November 23rd, 2006 by admin

The Daily WTF - Lacking Knowledge Essentials if you read just one thing today, be sure it’s this.

This site is chock full of some great stories and this is one of the best yet.

To whet your appetite:

In terms of code, Knowledge Essentials could be summed up like this:

int main(int argc, char ** args)   {   return 0;   }