General

PN User Group + MVP Award
2 April 2008 in General | Comments (13)

Last night was the final presentation on the MVC Framework that I have been delivering around the country and it was nice that the last place was Palmerston North – my original home town :)

The event was enjoyable, the number of attendees was about right for the space that we had available and hopefully everyone went away having discovered something new. The Palmerston North user group is well run by Katie – we had everything set up 30 minutes early and she was very friendly and helpful.

I wish the group had existed in Palmy when I used to live there! If you’re interested in finding out more about the Palmerston North user group click here. It’s free to attend, pizza and drinks are provided – what could be better?

MVP Logo

I was also delighted this morning to receive confirmation that I had been awarded MVP status for ASP/ASP.Net for 2008. I haven’t received an MVP award before so I’m very pleased to have been selected :)

– JD

Technology doesn’t matter – solving problems does
5 December 2007 in General & Mindscape | Comments (7)

Perhaps a funny thing for a geek to say but hear me out. We, geeks, surround ourselves with many other geeks and we all get our jollies discussing the latest and greatest technology. We have to build this website in Ruby on Rails! This application must be written in .NET 3.5! We must use SQL Server 2008 RC9! We need to change back end to use framework XYZ!

If geeks were to be believed, often you would think they completely couldn’t function without the latest alpha bits of technology xyz.

The thing that geeks often ignore is what is best for the end user. If you’re building a website, for example, and you elect to build it in fancy technology xyz but it delays your delivery by 3 months is that a benefit to the end user? If you elect to build it in technology xyz but, because you had no idea how it really worked beforehand, needed to stop and start all over again in the middle, is that a benefit to the end customer?

Customers just want the work done so that it works, is delivered on time and helps solve the problems it was designed to solve. That is about where their interest ends usually. Your mission to to ensure you meet those goals effectively and in a manner that won’t turn into a maintenance nightmare when it needs to be supported later.

But I am a geek!

I want to stop short of saying that technology platform NEVER matters because, to geeks, it does. And keeping geeks happy, in fact any employee, is important to moving forward efficiently. No geek wants to still be coding in VB 3 (and those that still want to code in Access… well… that’s a seperate blog post!). We do get job satisfaction from playing with cool stuff. If you were a pilot you’d probably love to fly some kick ass new fighter jet rather than than what you currently fly.

There are also additional benefits to developers from new technology – some things do become easier, some things do require less code and perform faster. However the decision to use the latest and greatest needs to be considered carefully – I know many software houses that use the latest stuff only because it is the latest stuff and this about the worst reason to move up.

WTF JD?

Some of you might be asking this question – how can I be saying this when we at Mindscape were pumping out solutions based on LINQ to SQL 9 months before it even RTMs? We all speak about upcoming changes in the new releases of SQL 2008, Windows Server 2008. Heck, Jeremy has even been training folks on how to use Windows Server 2008 a year before it comes out. So what’s the story?

I believe strongly that it is beneficial to play with these technologies before you put them into production. We are geeks, we do grab alpha bits, we do explore but that is so that we can make judgment calls about when it’s appropriate to use in products. What is LightSpeed written in and targeting? .NET 2.0. That’s it. We know a lot of our customers can’t move up to .NET 3.5 right away and, while we could have targeted 3.5, we knew it was better for our customers and therefore better for us to use .NET 2.0.

If code is performing its function correctly and is performing well then you do not have a major reason to upgrade. For example – TradeMe used to be all ASP code and it took them a while to jump on the .NET bandwagon. I’m not sure the specific reasons that dictated it was time to move up but my guess is that it’s a combination of reasons:

  • It was getting harder to find developers wanting to code in ASP
  • ASP code can be a wee bit harder to maintain due to it only providing an inline code experience
  • .NET code could be run faster than the older ASP code (that’s a guess on my behalf)

As I say, these are just a guess from my part. I’m pretty sure it wasn’t from a lot of people posting in the forums saying “ASP sucks – you should use .NET. I’m not going to use TradeMe anymore unless you move up”. Customers don’t care unless the technology starts surfacing in terms of performance slow downs etc which is often more of a design issue that being explicitly because of the technology choice.

What are your thoughts? Have you fallen victim to upgrading for the sake of it? Am I completely off the mark or have I missed something out?

John-Daniel

kick it on DotNetKicks.com

DotNetKicks.com
4 December 2007 in Blogging & General | Comments (1)

On my previous post I placed an image at the end that states “kick it”. For those of you who don’t know what this means, it allows you to effectively “digg” my post and have it appear on a .NET specific site that works in a similar manner to digg.com. I’d recommend joining the site and taking part in the community as some really interesting posts can be found on the dot net kicks site.

Check it out here: www.dotnetkicks.com

Getting kicked helps improve the profile of a post and, hopefully, help drive some new traffic to my site. I’m not asking that you kick every post, but simply making you aware what the icon means and, if you do think a post is useful, you can kick it to show your appreciation.

Note that I haven’t placed one on this post because it’s just an internal memo to you, my reader :)

And that ends this short service announcement.

– JD

On holidays
26 November 2007 in General | Comments (3)

Lena and I got back from our holiday to Rarotonga this weekend.

Needless to say, we had a kick ass time and managed to unwind as well as do some really cool things that we couldn’t do here in New Zealand.

I have always been the sort of guy that doesn’t take many holidays, this year I had taken 1 day off prior to this holiday and when I left Intergen I had about a month of solid leave owing to me. What I noticed at the end of this holiday was that by unwinding and having a very relaxing time I was feeling hungry to hit the ground with more vigor upon my return.

I’m finally realising the value of a good holiday: de-stress + come back re-engerised. Certainly will be looking to have proper holidays more frequently in the future (more often than once every three years anyway!).

– JD

P.S. Only 12,000 spam comments blocked by Akismet while away! :-)

Modern relationships
30 August 2007 in General | Comments (5)

Talking with a friend tonight and I asked her how she was getting on with the guy she was seeing.

“we have consolidated our relationship (i.e. it is now on facebook!)”

I remember the old days when you just told each of your friends as you ran into them that you were in a relationship. These days you announce it to your facebook network. Certainly more efficient but I think I prefer the old way :)

What’s next? Getting your marriage proposal to the homepage of Digg?

– JD

Evolution of a developer
30 July 2007 in General | Comments (6)

Lately I’ve been thinking a bit about how developers progress and evolve into better developers, partly inspired by recent pod casts from folks like Scott Hanselman about how to become a better developer in six months.

Before I go further, I don’t believe any endeavour has a point of perfection, even the best in a field is striving to do even better. Nobody is immune from needing to increase their skill level and if you think you are or can’t be bothered then change fields – you’re likely just holding others back by being a stick in the mud.

How do I try to become a better developer?

  • Work with the best. I have the fortunate situation of working with a couple of the best developers I’ve ever met. Working on solutions with them, nutting out how to tackle a problem and general knowledge sharing has enabled me to learn a considerable amount from them.
  • Reading blogs isn’t enough. I used to believe that simply consuming huge volumes of information from blogs and software development related sites would make me a better developer. I’ve since come to realise it only helps in making me aware of the possibilities but doesn’t help me practically. Now when I spot a blog post about something that takes my interest I’ll try and pull down some code or implement what is being shown. Actually doing things is far better than just reading about them.
  • Subscribe to mailing lists. Blogs and various sites are good to keep track of but it’s quite a learning experience to track mailing lists for projects that you’re interested in. Even tracking mailing lists in areas that you won’t be using day-to-day are great for providing perspective on what other developers are up to, for example, I watch the Moonlight mailing list about the Silverlight port to run on mono / linux. Mailing lists provide the nitty gritty detail about what is going on behind those blog posts that just trumpet new versions.
  • Actually write code. This one seems like a no-brainer and relates closely to point two – if you’re thinking about how something could be done then just write it up. I have a ‘research’ folder in my dev directory so where I spike up silly little bits of code just to see how something might work. Writing, combined with the reading I’m already doing, provides a complete learning experience.
  • Participate in discussion. Too many people are happy to be wallflowers and just watch others discuss and debate topics that relate directly to them. Why wouldn’t you share your thoughts if it affects you or is directly related to you? Usually fear of being cast as wrong about something or looking stupid. I try to take the approach of always sharing my thoughts no matter how stupid I may look – either I’ll be corrected and learn from it or I’ll look like I’m super clever. Ideally over time you’ll tend towards the latter. Never be ashamed or afraid of engaging in conversations and debates.

As you can see, much of my view about becoming a better developer is tied to a “use it or lose it” attitude being augmented with giving yourself new ideas seeded from other people. One thing to remember is that the evolution happens gradually over a long period of time, applying rules like this doesn’t mean on Monday I’m going to suddenly be a developer God.

I’m happy to hear if anyone else has habits that have helped them evolve as a developer.

– JD

EGovernment Web Guidelines updated
23 March 2007 in General | Comments (0)

John Lewis pointed out on my previous post that the new version of the E-Government Web Guidelines are now available. They’ve been renamed slightly to “E-Government Web Standards” and because of this have been given a version number of 1.0.

Great to see some evolution here.

Check out the press release here.

Go an download the Web Guidelines here.

A key message of my presentations recently has been that you should read these standards even if you’re not developing for the a Government agency. They provide some solid and useful information for your check your site against to ensure maximum accessibility for your site today and tomorrow.

Thanks John,

- JD

Web based operating systems?
27 February 2007 in General | Comments (5)

Recently with all the Web 2.0 hub-bub that’s been going on there is increasing talk about how rich we can make applications in the browser. This has drawn some to start saying that perhaps maybe, just maybe, soon all you’ll need is your web browser and that will be your operating system.

What baloney!

I can only assume people who make these sort of statements are misguided in their understanding of what an operating system actually does. An operating system is NOT the applications you’re working with, it’s what actually governs how the machine and the software interact. No matter how elite a person considers them-self at manipulating the DOM with AJAX I somewhat doubt they’re capable of marshaling interrupts and altering the state of special registers on the chip. A web browser has to run on an operating system.

Applications will always sit on top of an operating system. The richer the applications become in the browser the less likely you are to directly interact with the applications that ship with the operating system however these applications are simply value add and not the actual operating system.

Why am I posting this? It’s been a personal annoyance of mine lately at how much people are buying into the Web 2.0 so heavily that they draw irrational conclusions. Sure there are great opportunities but I wouldn’t disregard rich smart client applications that are simply consumers of core services (composite applications). I’m sure most of you already know all of this but I just wanted to vent some frustration at the whole topic of web based operating systems :)

- JD