Tuesday, December 28, 2004
Developers Dilemma – Rewrite vs. rework part 2
Within the first hour of adding some extra tests I found a couple of bugs that had not been reported. I suspect that these bugs have never been seen because the driver is never used the way it is in the tests I have written.
Is there any point in writing these tests then?
I think so. Firstly there is nothing stopping another developer from writing another component that uses this driver that way. That developer will get somewhat annoyed when they find out the driver is misbehaving. Secondly, based on my current understanding of the expected new functionality to be added later in the project, that other developer will quite likely be me.
After fixing the broken tests I continued adding a few more tests, finding bugs and fixing tests. That has been my day. I am happy because the driver (while not finished) is now a lot closer to ‘zero defect’ than it was when the day started.
I have a suspicion that tomorrow might be a similar day, I’ll let you know…
Monday, December 27, 2004
Developers Dilemma – Rewrite vs. rework
This suite of components was written in a short time frame over a year ago and it works perfectly for the job that was required then. In fact it has been in use by (so I am told) several thousand users around the world for the last year. Of course there have been a few issues reported but no show stoppers. In many ways I have to say "good job" to the original development team.
The issue now is that the suite of components needs to extend its functionality further to cater for some technology changes and to open up new opportunities.
So the classic dilemma; do I rewrite the parts that need changing (in a test driven manner of course) OR do I rework the existing components and add tests as I go?
I don’t want to rewrite code that is working and has been field tested. I also don’t feel comfortable adding to code that doesn’t have unit tests. Without unit tests for the existing code I won’t know if I’ve broken any of the current functionality through the changes I am making.
To be continued …
Friday, December 24, 2004
New MSN Messenger Beta
Tuesday, December 21, 2004
Monday, December 20, 2004
The Brits are getting worried and rightly so
Friday, December 17, 2004
Be part of the solution!
|
Thursday, December 16, 2004
.NET Developer's Journal
I wonder what will arrive in the mail tomorrow?
Wednesday, December 15, 2004
eXtreme .NET is here!
I love Skype
Now here is the thing, I am in Sydney and he is just outside Boston, MA on the other side of the world and the call was very high quality and free! In fact because it was free I think the quality was higher ;) Of course we both have high speed internet connections, but we have already paid for those and would do so even if we couldn't call on Skype.
Portable .NET
Tuesday, December 14, 2004
A cool Tablet PC app by Companion Systems
Singapore .NET User Group presentation
Thanks guys.
Strong Bad teaches you about being a radio show host
Sunday, December 12, 2004
I'm Test Driven
Are you Test Driven yet?
Back in Aus - again!
Saturday, December 04, 2004
My MSN Space
Tuesday, November 30, 2004
Where have I been?
create your own visited countries map
Dr. Neil's Phone Map saves the day
For the local Sydney Microsoft team I wrote a small mapping application for their Windows Mobile devices.
Today I had this IM conversation with one of the team, Lawrence Crumpton:
Lawrence says: yo Dr. Neil... I'm on my smartphone... I have to send through a testimonial on how your PPC mapping application saved my life. literally.
Dr. Neil [Sydney] says: wow - how?
Lawrence says:was with a group-we got lost with no map and found our way into a not so nice neighborhood. I remember having the app pulled it out, took the address off the building across the street and got a map to the city! it was very impressive. great job.
Dr. Neil [Sydney] says:cool!
How long will it be before we can all have maps on our phones? Apart from being able to talk to people I still believe this is the killer application for mobile devices.
Monday, November 29, 2004
Timeout!
So off to the beach...
Wednesday, November 24, 2004
Lunch and REST
The recurring theme was "It's funny how sometimes we get so bogged down in the technology we forget what we are actually trying to achieve".
Tuesday, November 16, 2004
Finding your way with MapPoint
You'd think I might be told when it was published!
I hope you enjoy reading it and get started with some MapPoint development, maps are cool!
Thursday, November 11, 2004
Podcast crazy
PodCasts are a form of Audio Blog, to find out more have a look at iPodder.org
I am using iPodder to download the Podcasts.
Some of my favourite PodCasts are:
Daily Source Code
Evil Genius Chronicles
IT Conversations
Dot Net Rocks
Podcasting from SoftwareLand
Monday, November 01, 2004
iSIM Saga - case closed
Sunday, October 31, 2004
The iSIM saga - Don't sign up with iSIM
On the 13th of October I found a new online prepaid mobile phone deal called iSIM. The rates looked good and they provide GPRS access on their prepaid plan.
You can find out all about them here http://www.isim.com.au/Prepaid/Home.aspx
BUT WHATEVER YOU DO DON’T SIGN UP WITH THEM.
FIRST READ THIS….
So I signed up and paid $19.95 on my credit card
I promptly got this reply (personal details removed):
iSIM - Powered by Optus Welcome - Invoice
Dear Dr Roodyn,
Thank you for choosing iSIM. You can now enjoy the great competitive rates, which include:
• 39c a Minute (per second billing)
• No flag fall on calls within Australia
• 15c per SMS (up to 160 characters)
• 19c voicemail retrieval.
You also have the convenience of recharging your account 24 hours per day, 7 days a week online or via SMS.
iSIM would like to confirm your user name and password are correct when you signed up with iSIM:
User Name:
Password:
If the above details are incorrect, please email us on:
mailto:help@isim.com.au
We hope you enjoy your service with iSIM. For further information, please visit www.isim.com.au today. If you require help related to your account or services, please read our FAQs at:
Frequently Asked Questions
Please find attached your Tax Invoice for future reference.
Once again, thank you for choosing iSIM!
Kind regards,
The iSIM Team
So I thought that’s great – and expected to get my SIM card in the mail.
A couple of days later I decide to go to the iSIM website and check the status of my order – I wonder if my SIM card has been sent to me yet.
I discover that the order has been cancelled so I wrote iSIM the following email:
Hi,
My user name is NRoodyn.
On October 13th I used the web site to order an iSim card for my phone.
There were a few issues with getting the website to accept my details – maybe because I am not an Australian resident?
Anyway eventually it seemed to be accepted and I was notified that my transaction was complete,
Now when I look on the web site it states that “Your iSIM order has been cancelled.”
Please can you contact me so that I can use your services?
regards
Dr. Neil Roodyn
Increase the value of your Software Business
Neil@Roodyn.com
To which I received this prompt response:
Dear iSIM customer,
Thank you for your enquiry.
This is what we have been informed by the credit department as below.
CANCELLED BY CREDIT DEPARTMENT. CANCELLATION: SIMplus may immediately cancel the Service in a variety of circumstances, including: if, there are reasonable grounds to suspect that you provided incorrect information to activate the Service; there has been fraud or misuse by you in relation to the Service; you transfer your SIM to another party without obtaining SIMplus' consent to do so; or you breach the terms of the SFOA. You may cancel the Service if SIMplus breaches the terms of the SFOA. Upon cancellation, you must promptly return the SIM to SIMplus.We hope you enjoy our service with iSIM. For further information, please visit www.isim.com.au today.
Kind regards,
To which I replied thus:
Ok, so how can resolve this?
I would like to order a SIM card for use in my phone.
Is there a way you can call me and get this happening?
My phone number is:
regards
Dr. Neil Roodyn
Increase the value of your Software Business
And their response was:
Dear iSIM customer,
Thank you for your enquiry.
Unfortunatly there is nothing that we are able to do now, credit have cancelled the order, we are unable to change this. if you have been charged for this transacion a credit will be reaised with in 72 hours to your credit card.
We hope you enjoy our service with iSIM. For further information, please visit www.isim.com.au today.
Kind regards,
iSIM Team
To which I responded with:
I understand that this order has been cancelled and there is nothing you can do about this particular order.
The question I am asking is how do I go about placing another order for an iSIM card when the web site doesn't accept my details?
regards
Dr. Neil Roodyn
Increase the value of your Software Business
And they came back to me with this:
Dear iSIM customer,
Thank you for your enquiry.
Unfortunatly if you have had a order cancelled you wont be able to sign up for a service with isim. We suggest that you do seek a mobile service with a different service provider.
We hope you enjoy our service with iSIM. For further information, please visit www.isim.com.au today.
Kind regards,
iSIM Team
One thing I was interested in was how I was supposed to ‘enjoy our service with iSIM’ when they refused to do business with me.
At this point I thought, ok fair enough I’ll get my money back and stay with Vodafone.
So when 5 days later my $19.95 had still not been refunded I thought I should contact them again:
Hi,
I have been told that my account has been cancelled. I am not sure why this is. It appeared at first to be an issue with my credit card, but I now see from my credit card statement that you have taken the money from my credit card.
The money was taken on 13th October. It is now 20th October and neither has the money been refunded or my iSim card arrived.
I would like to receive an iSim card. If this is not possible then I would like to know why my money has not been refunded.
I would appreciate it if someone could call me to work this out on
regards
Dr. Neil Roodyn
Increase the value of your Software Business
Of course they did not phone me but they did get back via email again:
Dear iSIM customer,
Thank you for your enquiry.
Your refund was raised on the 15th October and approved by my Manager on the 18th October. so your refund will be processed in the next few days.
We hope you enjoy our service with iSIM. For further information, please visit www.isim.com.au today.
Kind regards,
Marlene
iSIM Team
Great so I should my money back in a few days, but I wanted to clarify this os I wrote them another email:
Hello,
Just to be clear, I want to make sure this is correct.
The payment was made on 13th October, on the 15th October I am told that for credit reasons the account cannot be opened, and yet iSIM still deducts the money from my account. It then takes 3 days to get the 'refund' approved and then from today (20th October) it takes another 'few days' for me to get my money.
Is this correct?
How does this equate to the 72 hours I was told previously it would take to refund my account?
regards
Dr. Neil Roodyn
Increase the value of your Software Business
To which they responded:
Dear iSIM customer,
Thank you for your enquiry.
The funds are deducted at the point of sign up, it is only after this that you did not meet the criteria for credit.
Unfortunatly we need to follow procedures, this refund has been processed and sent to the banks, it can take the bank a few days to process this request.
We hope you enjoy our service with iSIM. For further information, please visit www.isim.com.au today.
Kind regards,
iSIM Team
Another 6 days go past and no sign of my money so I figure it is time to write to them again:
Last week I was told I would receive my refund for the iSIM account that could not be activated for credit reasons. I still have not received the refund.
Will you please advise as to when this is likely to happen?
regards
Dr. Neil Roodyn
Increase the value of your Software Business
To which they responded:
Dear iSIM customer,
Thank you for your enquiry.
You should recieve the refund with in the next working week. I will look into the credit today to make sure this has been done for youWe hope you enjoy our service with iSIM. For further information, please visit www.isim.com.au today.
Kind regards,
iSIM Team
Well I have still not received the refund and right now I don’t really expect to see that money again. So I am posting this here in the hope that some other folks read this and don’t sign up with iSIM.
Friday, October 29, 2004
Share Keyboard and Mouse between Desktop and Tablet PC
Of course I could use a remote PC connection but then I basically give up the Tablet PC screen and might as well have the Tablet PC sitting on a shelf!
A friend suggested I try MaxiVista which looks good and would allow me to use my Tablet PC as a second screen on my desktop PC. Trouble is I just couldn't get MaxiVista to work. So they don't get my $50!
I have downloaded the Tablet PC Utility: ShareKMC this looks pretty good but it seems to work quite slowly. There is obvious delay in the mouse movement. I might try it some more.
My latest download is Synergy this looks really promising and the source is avaiable too! If it doesn't do exactly what I want I can make it do what I want :)
If I remember I'll keep you posted on progress and let you know what I end up using.
What's Dr. Neil doing?
This week I finished reviewing what I hope is the final maniscript for my book eXtreme .NET
I've also been working with some clients on new features for Dr. Neil's Smartphone Toolkit.
Of course I've also been providing support to existing customers of the SmartSMS Dev Kit.
Aside from this I've been listening to a bunch of PodCasts using iPodder.NET. A .NET Framework implementation of iPodder proposed by Adam Curry.
I've been trawling through some old IT Conversations. Interesting stuff.
Saturday, October 23, 2004
My new Tablet PC stand
I wanted a solution that would let me stick the Tablet on my desk and use it, then be able to pick it up and go.
I also wanted access to the ports at the side so I can plug cables in and out etc... Of course the dock would solve the cable problem but not the case problem.
Today I have found a solution that might just work.
I bought a plastic plate stand from a homeware store. It wasn't a perfect fit but with the help of a file I removed some of the stand and shaped it to hold the Tablet.
Here it is:
My New Tablet Stand in action
This is it!
The best thing is the price!
$2.50 + about two hours with a file and some sandpaper :)
Saturday morning bike ride
This morning I did a slightly longer ride north along the coast. The sun is out, the sky is a crystal blue and the sea is a beautiful blue/green.
Life is very good today.
Monday, October 11, 2004
Thought for the morning
Back home in the shower (the place I tend to get most inspiration) I was thinking through some of the things I've done in my life. Lots of success but also some failure. I thought how I have learnt more from failure than success, yet we tend measure people from their record of success rather than the lessons they've learnt from failure. Strange huh?
I think:
"The past is a history to learn from not repeat"
Sunday, October 10, 2004
No more wires
I'm also now signed up with Engin a VOIP provider. This means I don't have a phone line coming in to the apartment at all and yet I have a broadband connection and very cheap phone calls.
Goodbye to those nasty old telecommunications companies.
Monday, September 27, 2004
Too busy to blog
When I'm doing lots of things that would probably be interesting to put in my blog I am too busy doing those things to write in my blog!
This leads me to wonder if blogging is a way of creating something interesting when there is nothing else interesting going on :)
I know when I was writing my book my blog became a good distraction.
Now that my book is pretty much done. I'm back out on the road working with companies and visiting interesting places. Some of what I am doing I cannot put in blog as I have signed many NDAs in the last few months. The rest of it I could bring you up to date on.
I am now in San Francisco. The sun us shining and life is good.
I flew in the other day from Seattle where I have been for the past two weeks.
In Seattle I was doing some work with Microsoft. Everything I am doing revolves around the mobility space. This includes Tablet PCs, Windows Mobile and MapPoint.
MapPoint has really got me excited now that it is possible to have maps on mobile devices. Watch out for some articles and code samples soon.
Friday, September 10, 2004
eXtreme .NET
A few folks have been asking about the book I've been working on. As you can see it's now listed on Amazon. I'm in the final stages of the copy edit and it is on schedule for release this November. I'm looking forward to getting this project completed now! |
European tour
This book was a little harder going than I remember other Bill Bryson books. Still it is jammed full of interesting facts. I give this book 6 out of 10. | |
Moore is funny and serious at the same time. The contents of this book are horrific and yet somehow manaaged to get me to laugh most of the way through it. this book gets 8 out of 10. | |
After reading The Da Vinci Code I wanted to read some more by Dan Brown. I don't think this was as gripping as The De Vinci Code but I still wanted to get to the end and see what happened. It's a good thriller. 7 out of 10. |
Sunday, August 22, 2004
What I've been reading on the plane
I thought it was time to provide an update.
An interesting read, it is hard to rate a book like this. Paul Graham has brought together a collection of essays. The main points in the book could probably be put into 2 chapters. I liked the style of the writing and although I don't agree with everything the author states, there are lessons to be learnt from this book. I give it 7 out of 10. |
|
This book is much more technical. Aimed at the computer programmer. A number of topics are covered that help coders become better developers. The idea being that to develop and ship software requires more than just the abilty to write code. I agree with this. Each chapter could be read on its own and covers one topic.
|
|
A bit of light reading. I liked this book a lot. A good read, interesting characters and a story full of puzzles to solve. Recommended reading, but don't take it too seriously! It appears that there are now a collection of books exposing the 'truth' behind this book. It's fiction! Get with the program and enjoy the story. |
Still moving
I've not really stopped moving in the last few weeks.
After TechEd in Canberra, I was in Melbourne for a few days presenting MapPoint technoliges at GITA
I then spent a few days in Singapore.
From singapore I flew to London, which is where I am now.
Tomorrow I leave for Greece.
Looking forward to getting back to some warm weather as the summer in England is over now.
Monday, August 09, 2004
City To Surf - Sydney
I walked the distance with Brian Randell and Adam Cogan along with family members.
Travelling with Adam's two year old and a Brian's little baby meant we were close to the back of the pack.
It took us about 3 hours to do the walk.
Maybe next year I'll run it if I'm around.
Tuesday, August 03, 2004
Back in Aus
It is cold here. Really cold. It looked like snow earlier today, brrrr....
I am presenting some MapPoint technologies tomorrow. The maps for Australia are being launched here.
Thursday, July 29, 2004
Icing on the top
Sunday, July 25, 2004
A truly American experience
It seems the main reason most people go is to have somewhere they can drink and eat for a solid three hour stretch. I have to say most of them didn't look like they should be quite so hungry.
I had a vege-dog, after all I couldn't miss out on the full experience.
All I can say is it's certainly not cricket :)
Friday, July 23, 2004
Top turnout for Tablets
I've spent the last three days with a great group of people exploring Tablet PCs and other mobile technologies. We examined what's avaiable now and discussed what is likely to be coming over the next few years. In the group we had Billy Hollis, Charles Petzold, Jon Box, Julia Lerman, Jeffrey Richter and John Robbins from Wintellect, Marcus Egger and Paul Yao.
It was a lot of fun and we got to talk to some of the people at Microsoft making decisions now that may change the way mobile devices are produced.
Monday, July 19, 2004
I, Robot
Whichever way I look at it this movie gets better than a seven out of ten.
It has good humor (of course with Will Smith), the special effects are good. Some of the gadgets are very cool. The story is told well.
In order to get a ten the robots would have had more realism. In my mind the animated robots still don't get it quite right. C3PO and R2D2 still have more believable qualities than the NS5 robots in the movie.
There are a few other things that would bump up the score, but I will refrain from spoiling the movie for you.
Test Driven Development in Microsoft .NET
This week I finished reading Test Driven Development in Microsoft .NET
By James Newkirk and Alexei Vorontsov I give this book seven out of ten What I liked about it: It is easily to read. The topics are well presented and clearly defined. The book introduces the concepts behind TDD (Test Driven Development) Some of the less trivial aspects of TDD are discussed, like testing web services or using transactions. Refactoring is introduced very well in chapter three. The concepts of FIT are well explained and demonstrated. In order to get a ten: The book needs to decide who the target audience is. The material seemed too hard for a first introduction book and too simple for advanced developers. As the book is about TDD it should have spent more time examining the benefits of developing software using this approach. I would have liked to have seen more real world (hard to solve) problems tackled. |
Friday, July 16, 2004
New portfolio case for Tablet PC
I just bought a leather portfolio case for my new Tablet PC. I give it 7/10.
What I like about it:
It protects my Tablet from scratches.
It protects my hands and arms from the heat produced from the Tablet.
It looks good.
It secures the Tablet in place with some well placed elastic straps.
In order to get a ten it would:
Support my Tablet running the other way around in portrait mode.
Come in a variety of colors. Dark blue or tan would be nice.
Have pockets to store SD cards.
Thursday, July 15, 2004
BOOMSHAKALAK !!!!!
Nice work!
Can I have a WAV file version so I can use it as a ring tone for my phone?
Wednesday, July 14, 2004
VS.NET 2005 Team System Testing
Monday, July 12, 2004
Complex solutions sometimes rock too!
mobile wireless file server. Now that is cool!
I love simple solutions
Tritium Flatenna is essentially a curved piece of foil backed cardboard that you put on the antenna of an existing WiFi adaptor. Nice work guys.
Sunday, July 11, 2004
Software for Your Head
I am looking forward to reading about some of the projects they are working on.
Welcome to the world of blogging.
Thursday, July 08, 2004
276304 - Error Message: Your Password Must Be at Least 18770 Characters and Cannot Repeat Any of Your Previous 30689 Passwords
276304 - Error Message: Your Password Must Be at Least 18770 Characters and Cannot Repeat Any of Your Previous 30689 Passwords: "Your password must be at least 18770 characters and cannot repeat any of your previous 30689 passwords. Please type a different password. Type a password that meets these requirements in both text boxes. "
Now that is a secure password. I have trouble remembering my password when it is longer than 15 characters!
Tuesday, July 06, 2004
Joe on Cruise Control
Nice work Joe.
Coding Slave
| I have just finished reading Coding Slave by Bob Reselman.
I give it a seven out of ten. What I like about it: It's an easy read, flows nicely and has some nice ideas. The seperate threads of the tale pull together to weave the web that is the whole story. The characters really get me, I kept thinking I know someone like that. The style is very informal and easy to read. The book is short and sweet. Nice work Bob. In order to get a ten: There would have been more of it. I felt like the story ended earlier than I would have liked. More could have happened but didn't. I was disappointed by the ending, but maybe that was the point? The book itself could be better presented, there are a few gramatical errors. While the story puts a blunt reality into perspective I believe it could do so much more. It is quoted as 'the novel the software industry does not want you to read!' I am not convinced but I think it has all the potential to be the the novel the software industry has banned employees from reading! |
No more outdoor office for a while :(
Remember the other day when I showed you my 'outdoor office'? Well the deck was falling apart and finally the guys came to start work on it last Friday. No more working out here for a while :(
Monday, July 05, 2004
July 4th - Let's blow something up!
The fireworks reflected in the lake
More fireworks
Two shows in one - the air and the water
Jim and his magic light
Saturday, July 03, 2004
Spiderman, Spiderman, spins a web just like a spider can!
I went to see Spider-Man 2 today. It is a great movie. Worth seeing if you like comic book heros. Some people have said it is the best super hero movie ever. I would disagree but it is worth seeing and a lot of fun. Go see it, tell me what you think.
MSN Search
Some things I'd like to see:
Tracking the things I'm looking for as a user to help improve the results of searches I do.
Use of color (or graphics) to categorize results
Location aware searches, the search engine would take into account your location when doing the search, so if I search for "I want to see the Spiderman movie, where is it on?" it shows me where it is playing locally.
Better English language translation on the search request as in the previous example.
Friday, July 02, 2004
Music to my ears
Commodore PET or Vic 20GB?
Thursday, July 01, 2004
Chris Garty's talking agile
When will they invent the teleporting machine so I can get around the world fast enough to be where I want to be when I want to be there?
Wednesday, June 30, 2004
Coder to Developer
| This book arrived in the post for me today.
It looks interesting. I will (of course) post a review when I have finished reading it. I have a lot of reading to do and also much writing now. That will keep me out of trouble for a while. |
Toshiba M200 Tablet PC - Toshiba
I got a new toy, sorry business productivity tool, today! I am now the proud owner of a Toshiba M200 Tablet PC. It rocks! Theres a few extra things I want to get for it like Bluetooth, some more memory and a spare battery for those long plane flights. It will take some time to set it up just how I like but I am certainly a very happy person this evening.
Steve Jobs shows Tiger
Another cool looking Windows Mobile Device
T-Mobile unveils Wi-Fi PDA-phone | The Register Personally I'll be sticking with the Smartphone as I prefer something smaller.
Tuesday, June 29, 2004
I've been noticed
Thanks Marcie, looks like a few people have picked up on your blog and followed on Will and LazyCoder have also noticed my entry to this little club.
TechEd Europe
Chandu is there talking about all things MapPoint related. Jim Newkirk will be presenting the testing tools in Team System. I know James Pratt is there somewhere getting ready to impress the mobile developers.
I expect it will be a great event. Amsterdam is a good place to be this time of year.
Just like a real phone but smaller
Monday, June 28, 2004
Another perfect sunset
Smoke and Mirrors
| I just finished reading this collection of short stories by Neil Gaiman.
I would give it a nine out of ten. What I liked about it: Neil Gaiman is a terrific author. The stories were mostly crisp and kept me interested. I enjoyed the change of pace between the tales. The different ideas and possible universes presented were great. In order to get a ten: A couple of the stories should have been left out. They were not the same caliber as the others in the book. |
My other office
Yesterday I discussed the set up I have for writing. I forgot to mention then when the weather permits my other office is outside.
In the last ten days the weather has been good so I've been enjoying the freedom of wireless networking.
I do have to sit in the shade though because otherwise I can't see the screen. I am waiting for the transflective screens to become more widely available.
Updating Tablet Site
Sunday, June 27, 2004
Experiments in music
Two guys with something to say
The interview is well worth reading, as is the book.
Using my Tablet for writing
Picture of writing setup
I wonder if we will see the demise of the mouse if digitizer screens get cheaper and become more avaiable? I know a lot of new users still have trouble coordinating the mouse. I would have thought pointing at the screen with a pen is far more intuitive.
Saturday, June 26, 2004
Good ideas won't go away
How Microsoft develops its Software
The McCarthy's have gone on to do much more work on helping teams deliver great products on time and Software For Your Head documents many of their findings. This is a recomended read for anyone trying to work in a team.
Trying to blog again
I've not got into blogging in the past as I seem to get involved in all sorts of other projects and never seem to blog enough to make it seem worth while.
So lets see how this goes.
Why Refactor
I often get asked why we (developers) need to refactor. Here are some reasons.
The ability to refactor your code takes the pressure off the design phase of software development. Refactoring gives you the ability to change the design of the code at a later stage. This means that you don’t have to get the design absolutely right before you write any code. You can get a rough design worked out, code it up and then if (when) you spot a better design you can refactor your code towards the better design. This allows you to get started on the coding earlier than you may have done otherwise and therefore get feedback on the progress from other coders and even customers at an earlier time. This is valuable because this feedback may also force you to rethink the original design and the earlier you can do this the higher your chances are of getting the final result that the customer wants.
It is very rare for any piece of software to be developed ‘right the first time’. I should qualify that by adding that every programmer I have ever spoken to has said they if given a second opportunity to code a solution they would do it differently from the way they did it the first time. I have met a few arrogant individuals who claim they are so smart they always code the correct solution first time. Personally I don’t believe they can always be right and even if they are, they are in a very small minority. Most of us (programmers) need to use all the help we can get to ensure we get a good piece of software written. Refactoring is some of that help; it allows us to admit that we are less than perfect and provides us with a tool to enable us to work towards perfection over time.
The changes are made to the code in order to improve the design, with the aim of making the code easier to read, simpler to understand and cheaper to change.