Development work

February 14th, 2010

Just finished working on http://www.goingoutglam.com, they sell discounted premium cosmetics, top brands for cheap, pleased with the result, using the Prestashop system, a free open source package, definitely worth a look.

DDD8

January 31st, 2010

Thought I’d talk a bit about my experiences at the DDD8 conference yesterday, I had a really good time and all the talks were great, very inspired and left me with a feeling that I need to try out all these different things immediately.

One of the talks I first attended was on test driven development, a late addition tot he schedule as I had originally planned to attend real world MVC architectures, forsaking the latter I was inspired to investigate TDD and am looking to apply it to a project I am currently working on as it is still in it’s early stages, the approach to the project using TDD leaves much less room for error, and if you don’t have a fully equipped Q&A team I think it could be a great way to take the stress off and, as Richard Hopton put it, ‘trust’ your code again, no longer having to worry about whether the next part you add will make your proverbial house of cards topple.

I also attended a session on unit testing but found that, while decribed well as a concept, the speakers application and usage of unit testing needed more time than an hour to demonstrate effectively.

Jon Skeet gave an admirable talk on C#4, key notes included default parameters and named arguments, as well as a few other shiny things from the interop side of coding, will look forward to 2010 as one of my current projects would benefit a lot from default parameters and named arguments.

Attended a talk on Microsoft Surface but left feeling that as a piece of equipment, it was shiny, but several aspects of it seemed lacking, such as having only greyscale imagery from the in built cameras, and the capabilities of what it can do were sparse, you are left to create anything you need from scratch, I anticipate future versions of the SDK will provide more tools and frameworks to work with.

Finally, last but not least, I attended Mike Hadlow’s talk on IoC containers, he spent a good portion of the talk on demonstrating programming to interfaces, which I thoroughly enjoyed, as it relit a fire inside of me, to re-awaken my thirst for better coding practices and creating maintainable applications. His demonstration of the usage of Castle Windsor as an IoC framework was good, it seemed simple and effective, so look forward to finding an opportunity to try this out, though will need to wait for DevExpress to finish updating their controls to work with MVC, as IoC frameworks don’t work so well without it (Or so I’m led to believe)

So, that’s all, I had a great time and feel invigorated watching how others write their applications, it has given me a new insight and passion to develop better systems, so if any of you ever get the opportunity to attend such an event, I highly recommend it!

My thanks also to a colleague of mine, you know who you are and what you did! Hope you like the mug :P

Merry Christmas!

December 13th, 2009

Merry Christmas everyone! Hope you all have a good one!

During this month I’ve been scouring the web to find some good techie equipment sites and have come up with a couple of really nice finds:

1. www.mutr.co.uk – Sells all sorts of crazy science related things, from circuitry and electronic components up to crazy experiments you can do with your kids to teach them science, really fun just to look through all the wonders they have on a Sunday afternoon!

2. www.thehut.com – Offers free UK delivery, all sorts of different things here, the usual blurb, books, games, dvd’s, electronics, good prices and free delivery, worth a look!

3. www.okobe.co.uk – I got my iPod from here, good price and fast delivery, very good customer service, I had an issue with my ipod and they sent a replacement the day after and collected my faulty one, was very impressed.

4. www.virtualvillage.co.uk – Site that sells techie stuff and things you can play around with such as breadboards etc. I actually used this site to get some bulbs and circuitry for my car, was impressed with the range they had. Can be a tad on the pricier side though.

Hope these keep you occupied for a while, why not have a look for some ideas for interesting projects on www.instructables.com? Have fun!

OOps

October 27th, 2009

Hey everyone, wanted to talk a little about object oriented programming today, a lot of people who are new to the concept struggle, I know I did, it’s quite a difficult concept, but once you grasp the basic, it’s a quick shot to start writing good, solid OO code, complex stuff like Design Patterns can come later.

OO Programming can be bloated in comparison to linear coding, but, aside from the initial complexity and outlay involved, in the long run, and when you have a good understanding of OO, it makes the application much simpler and a lot easier to manage, as well as reducing code duplication. Object are also useful across projects, if they arn’t too tightly linked into what you are doing, you can use them in other projects, such as a Person class, or an Invoice class.

The easiest way to describe objects and instances I can think of is follows:

An example could be a television set. The actual code which describes how it will act is like me telling you about a television, it displays an image, some have remote controls, it is usually rectangular and has many channels. An actual television would be like an instance of that description, there are lots of different types of television that follow the same rules. Objects work the same way, you have a class file which describes how the object will act, and you create instances of that object, you can have several instances of the same object with different parameters.

FreE-Commerce

October 25th, 2009

Hi everyone, just thought I’d give a little review of some e-commerce applications I’ve used recently, one of which being Prestashop, I really enjoy using this package, it’s written in PHP and is the epitome of modular design, very nice to work with and no doubt I have probably made a few blasphemous code additions to customise one of my clients instances.

Of of the things I like is that it works out the box, it’s easy and it just works, not many e-commerce applications I tried did that, surprisingly. Even ones that said they would, Prestashop immediately empowered myself and the client, within a day they were uploading products and taking test payments. I’ve tried a few, zen-cart, virtuemart, oscommerce, magento.

Magento wouldn’t install, I read a few articles pertaining to adjusting the permissions, of which I am no stranger to anyway, but to no avail, it simply wouldn’t work for me, plenty of users suggest it’s easy, but for me it was a no go, it wasn’t as intuitive as prestashop, but the demo was very polished and presentable.

As for oscommerce, of which I am sure many a solid e-shop has been built, I found it to be bloated, slow and too difficult to get up and running, it wasn’t as streamlined a process.

There are a few negative points for prestashop though that can hinder you.

1. There are bugs: A few little bits and pieces are quirky still, I had issues with the contact form and with the cart display module, the ajax side of it was a little ropey as soon as I started making design changes.

2. There are a lot of files: As of writing, the upload takes around 30 minutes on a good broadband connection to your server, there are around 3000 files to install, this makes remote backups and restore somewhat time consuming compared to other installations.

When is code no longer code?

October 11th, 2009

Recently I have been studying and investigating the benefits of refactoring, and to the (probable) annoyance of my colleagues, I have been preaching the practice.

I highly recommend looking into it, there are numerable benefits, particularly with medium sized projects. I mean really, the smaller projects tend to get released once, and never really change after that, so they are easy to maintain, and the larger projects require a lot more time to brew before you can do anything really serious.

So, what benefits? I’ve noticed quite a few myself, I never thought I would notice that much but, since refactoring some of my old code, I have noticed quite a few inefficiencies in it, and the architecture, by revisiting areas in more detail I have picked out quite a few minor bugs. There is also a certain satisfaction no doubt many developers get in creating OO code that is clean.

Looking to start some refactoring? I implore you to read around on http://sourcemaking.com/.

I’m not kidding you know, my attitude toward refactoring really changed, it’s hard to make time for it, but it’ll save you time later on, when instead of writing another 300 lines of code to parse a file, you have a library of objects all ready to go.

Our greatest glory…

August 27th, 2009

“Our greatest glory is not in never falling, but in rising every time we fall”

- Goldsmith

When I remember this little quote it really helps me to carry on when development is getting difficult, and this is something I think every developer should try and remember, because I believe that if you lose sight of your passion to keep trying out new things when they are difficult, you can become stuck in your ways, unwilling to change, even when a great opportunity is staring in your face, don’t settle for hacked code and easy tools just because it makes life simpler for you.

To put this into perspective, every day I read about different tools and technologies, many of which are useful but not of any use to me. Every now and again however, there is something which shines a little brighter, I give it a shot, because the end result could be the next big thing in my development belt, saving me time and making my work that much better.

I wanted to talk about the devexpress suite today but I think you can visit their site to see the potential, some of their tools are a little tricky at first, I normally work in source view and don’t often find myself in designer, but with these tools it would be very unwise to try and use the source view initially as they have some quite complex architecture at times, use the designer to lay out and autoformat your controls first before you leap into the markup…

So, not going into any detail, I will leave you with a thought for the quote from Goldsmith, not all things are supposed to be easy, and the most rewarding things are usually the most difficult, but keep trying, and use all the resources at your disposal, and you will get there, don’t just dismiss something because it doesn’t jump out of the box and start dancing for you.

Hello world! Goodbye TableAdapters!

August 18th, 2009

Hello everyone, welcome to the new site design, it’s been a while but now I am finally back, I’ve mused over how I should approach the design and function of this site, and decided that since everyone and their grandma is now blogging, why not join them?

So, what will you be seeing here over the course of times passing? Hopefully now that I am really getting into ASP.NET development and shying away from php (Sorry guys, I know some of you might be sad), you will see some articles on my trials and tribulations of developing under a Microsoft hat.

There have been many foibles in my learning to develop within ASP.NET and microsfot products, things that I hope I can tell everyone about so they don’t make those mistakes in future.

Let’s start with TableAdapters and DataSets. Look folks, they are good, fast, and dirty, and they work, and don’t get me wrong, I really was very reluctant to stop using them, but I discovered EntitySpaces and now feel that TableAdapters should only really be used in the following instances:

1) You are doing a project that is small and needs to be done quickly.
2) You are a tool.

So, ever if you can’t afford to spend money on licensing, don’t spend so long looking at TableAdapters, because maintaining them is difficult, the designer is likely to corrupt, and the error messages and lack of ‘re-generating’ designs make them very hard to debug, at the very least try looking at SubSonic, a very good open source alternative to Entity Spaces.