Why You Want To Be A Craftsman Instead Of
A Cowboy
There has been a bit of a code war going on or at least a some what heated debate on code quality and programming principles.
I’m not going to rehash everything but I will sum up the two sides and throw my opinion into the ring. Why does my opinion matter? I’m not so sure that it does but you can be the judge of that. What I do think is different about my opinion than the opinions that I have heard/read so far is that I can’t place myself in either camp. I am not a coding cowboy that just cares that “it works” and I am not a bureaucratic standards Nazi either. I’ll talk a bit more about why I am ducking for cover in no man’s land in this battle of opinions.
The Coding Cowboys Say
Jeff Atwood and Joel Spolsky sure hit a sore spot when they suggested that learning programming principles just wasn’t worth it and just getting it done was more important.
Jeff likened principles and guidelines to the Ferengi and their 285 Rules of Acquisition saying that every situation in programming cannot be governed by a set of rules and there isn’t a one size fits all pattern to solve everything.
Joel refers to the SOLID principles as “extremely bureaucratic programming that came from the mind of somebody that has not written a lot of code.”
The Craftsmen Say
Jeff and Joel’s comments sparked a lot of rebuttals from the ALT.Net community. It is understandable since those comments attack the very foundation of TDD and DDD. I am not going to bore you with a list of everyone that chimed in but I want to highlight a post that I think sums up this position in a clear and nice way.
Justin Etheredge made a great post is response to the criticisms. I have been reading Justin’s blog for a while and I like the way he views software. He likens software development to carpentry and woodworking, both are a learned craft. You don’t get good a carpentry by throwing things together and ignoring building codes. Patterns and principles are like building codes.
My View On The Whole Thing
I was a bit surprised at first to hear Jeff and Joel’s comments because they are some smart guys that have produced some successful software. I highly doubt, regardless of how it came across, they intended to imply that you should ignore all guidelines and just string together your code. Unfortunately, the comments of their posts make it all too clear that this is exactly the way a lot of programmers took it. What’s worse is bad programmers will use this as a defense for their resistance to improving their skills.
Like I said, currently I am somewhere in no man’s land. For too long I had the mindset that would take Jeff and Joel’s comments and use them as an excuse to ignore patterns and principles. From the beginning of my education in software development, no importance was placed on “good design.” My college training only focuses on teaching the syntax and considering that “knowing” the language.
After a few years of living in denial, I had to accept that their was far more for me to learn and I began my journey out of the cowboy coding camp and started striving to develop software in a TDD manner. I still have a lot to learn but facts cannot be ignored. Since making an effort to improve my craft I have seen a significant drop in the amount of bugs found in new software I am producing and the bugs that are found are smaller and much similar to solve. So that is my take on the whole thing and I hope that this at least peaks someone’s interest to dig a little deeper in regard to becoming a craftsmen and taking pride in the code they produce.
4 Steps To Ensure You’re The Worst
Developer Ever!

Disclaimer: For those with no sense of humor at all; this is an exercise in extreme sarcasm.
There are lots of articles about improving your skills as a developer. Everyone likes to talk about how to strengthen their skills and produce really good software. But, what if you want to be the worst developer ever? Nobody seems to want to share those secrets.
In these tough economic times secure your financial future by milking your employer for as much as you can. They’re not really interested in saving money.
Don’t Write Clean Code
Just think, if you write messy code that is hard to maintain then you are creating job security for yourself. The longer it takes to debug and make changes the more money you will be making.
Writing comments in your code, making the code clear and easy to understand just opens the door for someone to steal your job. If it can’t be understood then nobody else can do you job! You might want to keep a cheatsheet or decrypting key hidden somewhere in case you can’t figure out what you were thinking.
Don’t Write Unit Tests
Here is the excuse many of you have been looking for to justify not writing unit tests. Stop whining about unit tests being too hard to write or taking too much time. I’ve got a better reason.
Writing unit tests makes your code to modular and concise. Refer to the point about not writing clean code above. Besides, unit testing will only save you time in the long run. That is not our goal. We are trying to cash in on overtime pay here!
Don’t Read Development Blogs Or Programming Books!
Who needs to learn new skills? Why on earth would you want to do that? Everyone knows that VB6 is good enough and can do anything we need to do. You don’t want to work for those cheap skates that are trying to improve development performance and cut development costs. Nobody needs to use an ORM, you make more money if it takes you longer to write all that code by hand!
Don’t Waste Time Planning Your Application
Get off my back about planning my application. You don’t need to do that, it will just look like you aren’t getting anything done. The sooner you can get a working prototype up and running the happier your client will be. Don’t worry about the future. Your client won’t need new features or find any bugs.
There You Have It
Now that you are armed with this new liberating information, go out there and be the worst developer that you can be. It’s time to put some mystery back into software development!
By reading this post you agree to the following disclaimer and free Geek Daily from any consequences this information may have on your career.
Object Oriented Programming With PHP5: A Review
I was asked by Packt Publishing to do another review. After such a positive experience reviewing Blogger: Beyond the Basics I agreed to review Object Oriented Programming with PHP5.
I chose this book because PHP is a very popular language but is easily misused and because I was hoping to find some bits that I didn’t know about OOP PHP.
I found that this book was full of very useful information even as an experienced PHP programmer. I did find some of the wording awkward and there were a few mistakes in the code samples when it came the case of some words but this did not diminish the excellent value this book provides to the reader.
I would say this book is ideal for the beginner to average PHP programmer or someone looking to start or improve their understanding of OOP in PHP.
Book Highlights
I want to take some time and touch on what I consider to be the best parts of the book and give you a small glimpse into what this book has to offer.
Chapter 2 – OOP Overview
Chapter 2 discusses what makes up an object oriented language. Essentially, this is the most important chapter in the book because if it were the only chapter you would walk away with everything you needed to begin using the OOP style of PHP. This was done very well, with lots of code examples to make the concepts easy to understand. Everything beyond this chapter builds on these concepts.
Chapter 4 – Design Patterns
This is another important chapter. Design patterns are problems that regularly present themselves and the recommended solutions for those problems. Design patterns are just guidelines on how to best handle a given situation. I really enjoyed this chapter and it really adds some extra punch to the book.
Chapter 5 – Unit Testing
I was thrilled to see that this was included in the book. Unit testing is very popular and very criticized depending on who you talk to. As the lead developer in my company it is my job to ensure the quality of our software and unit testing is a useful tool for that even when I have to constantly insist that tests get written.
Chapter 7 – MySQLi, OOP Database Access
This was an informative chapter however it is funny to note that while the chapter is supposed to be highlighting the OOP usage of MySQLi the author uses procedural methods several times throughout the chapter. He uses mysqli_connect_errno() and mysqli_connect_error() instead of $mysqli->connect_errno() and $mysqli->connect_error().
Chapter 9 – Building With MVC
MVC is all the rage these days and no book on OOP and Design Patterns would be complete without looking at MVC. MVC is a pattern used in many popular frameworks like Rails, Django, and Symfony. MVC can be done in many different ways ranging from complex to basic implementations. Frameworks like Rails have builtin utilities that generate the repetitive and structured code for you as a base to get you started quickly. I tend to roll my own implementations and keep it simple and fast depending on the scope of the project.
Conclusion
Once again, I was impressed by this book and was glad that I had picked it up. It is great for beginners or those looking to improve with OOP. Give it a read sometime. You’ll be glad you did.
What I Have Been Up To
I wanted to write a quick post updating you on where things are at in terms of upcoming posts on this blog.I did a guest post for Dev 102 this week and it was received well which is always nice. Since things went so well I have decided to do another guest post which hopefully will be for next week. We are considering making this a weekly or bi-weekly thing.I also finished reading the most recent book I am reviewing for Packt Publishing and will have that review posted next week.Also I have a new series in the works. I plan on writing a number of posts on design patterns. self storage . These posts will outline some of the most common and popular design patterns in use today and explore their purpose and what they can do for your projects.
Things coming down the pipe
Things have been pretty quite around here lately. I took 2 weeks of vacation in September and have had a lot on my plate and unfortunatly Geek Daily has suffered as I haven’t had the time to post new articles.
Things will be turning around in the near future though. I have some exciting things coming up that I think you guys will enjoy.
I have partnered with TradePub to offer free magazines and ebooks on software and other technology topics. This should be available in the very near future.
I am writing a guest post for Dev102 that I hope will be finished and published soon. I will keep you updated on this.
Finally I am reviewing a book for Packt Publishing again. This time I am reviewing a book on Object Orient Programming with PHP5. Expect to see my review in the coming weeks.
You might want to grab the RSS feed if you haven’t already. It is going to be an exciting month.
What I Liked About “Blogger: Beyond the Basics”
As you know I received a request to review a book on Google’s Blogger platform from Packt Publishing a couple of months ago. About 3 weeks ago I mentioned this to you and gave you my first impressions of the book which where completely positive. This book is very detailed on many aspects of blogging.
Who Is This Book For?
This book is perfect for someone that is just starting out blogging or has been blogging for a while but is unsure of how to take their blog to the next level with a customized theme and growing their reader base.
Getting Started
The book starts out by introducing Georgia Peach, a fanatical fruitier. We get a look at who Georgia is, what her business is, and that she has started blogging in hopes of increasing sales and creating a small community atmosphere among her customers.
Although that may sound corny, it shows the beginner blogger how to get their blog off the ground. It also shows us that there really are no barriers in blogging. You just need to be passionate about what you are writing about.
The key points of this chapter are focused on planning. That’s right. Before you even type a word you should have a clear plan in place for your blog. What do you want to accomplish? What is your target audience? What is the underlying theme of your blog? What are the goals of your blog? And ultimately, how are going to achieve those goals?
Time To Pimp Your Blog
You might assume, based on the title of this book, that it will be all about customizing and using Blogger. This simply is not the case. The book dedicates a couple of chapters to customizing Blogger and there are a few scattered looks at specific features related to various chapters but the bulk of the information in this book can be applied to any blogging platform to generate success.
With that being said, chapter 2 is all about customizing your Blogger template and making your blog you own. Having a unique blog is key to standing out from the millions of other bloggers and showing potential readers that you are worth their time to read what you have to say. Don’t make the mistake of thinking that packaging doesn’t matter because it is critical.
Chapter 5 is dedicated to looking at the widgets that are available to you to make your blog more interactive and personal.
Beyond these two chapters the rest of the book is dedicated to promoting your blog and positioning yourself for success.
Social Networking
Chapter 3 gives us an introduction to social media and how it can be used to drive traffic and build our reader base. We get a look sites like Digg, StumbleUpon, Facebook, and lots more and how they can be used to promote our content to existing and new readers.
There isn’t a whole lot I can say about this except that it is an important area and that you really should not ignore it or you may be missing out on hundreds or even thousands of potential readers.
RSS, Link Building, and SEO
An RSS feed is a great tool for your readers to stay up to date on what you are doing and saying without having to visit your blog every few hours to see if they missing anything.
Your reader will take the URL of your RSS feed and enter it into their RSS reader, like Google Reader or News Gator. This will allow them to see all the new updates you post to your blog in their reader, along with all the other feeds they are following, without having to go out to each individual site.
Offering your readers an RSS feed is very important and it should be placed prominently and made very noticeable so your readers can easily find it.
Chapter 6 covers what you need to know about RSS and some features of blogger that help you make your feed available.
Chapter 4 covers a crucial topic, link building. Your blogs failure or success hinges on backlinks. Without them you will not rank in search engine results and you will not be see by the Internet as a whole. Basicially a backlink is a link from an eternal web page to your site. This is what search engines use to determine your blog’s authority level and rankings for certain keywords.
Chapter 9 looks at SEO, search engine optimization. Link building is a form of SEO, but he core of SEO is making sure your blog is configured to perform it’s best in search results. This includes focusing your content on the keywords you want to rank for and tweaking your template’s code to make it easy for search engines to index and evaluate.
Conclusion
I want to wrap this up before it grows even longer. Sorry about that. I wanted to present a concise overview of this book but there is just so much great content in this book that it is hard to do in only a few words.
Some other areas that this book covers, that I won’t go into detail about, are making money through advertising, measuring performance with Google Analytics, and integrating your blog with your existing website.
These are all good topics but I just don’t have the time to talk about them.
Over all this book as a great spring board to get new bloggers launched and on their way to being successful with their blogs. I highly recommend this book and hope that you will take the time to pick it up and give it a read. You won’t be disappointed.
The Ubuntu Adventures Part 1
So it’s been a month since I have been running Unbuntu (Hardy) on one of my PCs at home. I just wanted to give a short overview of my experiences so far and some of the things that bug me.Getting StartedGetting Ubunutu up and running is a snap. The nice installer pretty much takes care of everything. family therapy . I only had to enter my routers DNS details and I was up and on the Internet, Firefox no less, in probably 20 minutes. Beats the pants off Windows in that respect.System UpdatesAnother thing I like about Ubuntu is the updates. They download regularly and install fine in the background. double glazing company . I’ve lost count of the number of reformats I had to due because of bad updates for Windows.A Bit Of TroubleBeyond that I am still learning. I’ve installed a few games like FreeCiv and played with my video card settings but nothing too advanced and certainly not without a step-by-step guide telling me what to do.The one major roadblock that I’ve encountered was trying to install a Jave/JSP development environment. I thought since I was free of Windows and didn’t have Call of Duty or Visual Studio to distract me that it would be a great opportunity to dive back into some Java development.I installed Java, Tomcat, and Eclipse with no troubles and played around a bit. My problems started when I tried to install Web Tools for Eclipse. I used the update tool built into Eclipse since it seem like the most fool-proof way of getting it installed. The install went fine and evrything finished but when ever I create a web project, class, anything…I get SWT error messages and Eclipse shutsdown. acne treatment . Short story, Eclipse won’t create a web project and I am a little upset.Not Done YetDespite this set back I am pushing forward and determined to become a comfortable everyday Linux user. With Vista a flop and no promise of things getting better I’ll have my XP box for a while still since I couldn’t give up Call of Duty or some of my other favorite games but that is about all it will get used for.
Cloud Computing. Why Aren’t You Using It?
It amazes me that not more businesses are adopting Cloud Computing. With things like GMail and Google Apps available for free and rivaling the expensive desktop suites like MS Office why not use them? There are many reasons why some businesses choose not to use online applications. PrivacyThis is a huge hurtle for advocates of computing in the cloud. Business just don’t trust a 3rd party to host their sensitive email and business documents. This is for good reason too. There is no way to know 100% for sure that someone is not looking thorugh private communications.That being said for non business uses cloud computing is perfect for the average internet user. You get access to your email and documents from anywhere in the world at anytime as long as you have an Internet connection.ReliabilityA debate broke out on Slashdot yesterday, as often does, in response to an article posted about recent outages of Google Apps and GMail. Comcast Deals . jewelry stores . The article speculated these outages hurting the adoption of online computing. Some commentors strongly disagreed.As the debate hit upon different arguments and angles the main discussion centered around GMail versus MS Exchange and which was better and more reliable from a business point of view. There were strong opinions on both sides which got me thinking…there is no right answer. No matter which you choose there will be trade offs. It just depends on your specific needs.Here is a nice list of pros and cons for each choose. You decide which fits your needs and budget best.GMail Pros
- FREE or just $50/user/year for premium accounts
- 24/7 access from anywhere with an Internet connection
- Solid reliability from Google’s enterprise data center
- Platform independant
- No overhead costs
GMail Cons
- Must trust Google to respect and protect your privacy
- No access if Internet is down, many fault points along the pipe
MS Exchange Pros
- No 3rd party privacy concerns
- More in control (or at least that is the illusion)
- 24/7 web access (some minor limitations)
- Access to stored emails and can send within network if Internet is down
MS Exchange Cons
- Expensive Windows and Exchange license fees
- Large overhead costs
- Network administrator(s)
- Servers and backup technology (data and power)
- Dependant on Windows (some may not care)
I am sure I have missed some points on all those list but those are the basics. You decide what you need and what you can afford to compromise on (financially and personally).
An Unexpected But Flattering Request
About a month ago I was contacted by a rep from Packt Publishing. LTL Shipping . Packt publishes a wide range of Internet and IT related books.They had discovered by blog and asked if I would consider reviewing one of their books and post the review on my blog. I was a bit surprised but flattered at the same time. It wasn’t a very hard decision. Free book (I enjoy reading technical books), great content piece for my readers, and a chance to network with members of a publishing company…well, of course I’ll do it
.So I receive my complementary copy of Blogger: Beyond the Basics over the weekend and have done a quick overview of the book and have read chapter 1 in detail so far.One of the things I wondered about while I waited for the book to arrive was what I would learn from the book. I ususally use WordPress for my blogs but have used Blogger on occasion. I was sure I would find some great gems about Blogger that I was unaware of.After my first run through the book it is clear that is packed full of great content for using Blogger but it also has very valuable information of the mechanics of running a blog from setup, creating a plan for your blog’s marketing and goals, to how to customize every square pixel of Blogger to increase your success. This is a must read for anyone starting a blog or wanting to kick their blog into high gear.I am looking forward to reading this book over the next couple of weeks, yes I read slow, and will be posting a detailed review of the book which I am sure you will enjoy.
Those Dang University Kids
Normally I don’t do reviews because I don’t really care to read them on other blogs. So, that being said if you are like me you may want to stop reading now although I think you may be happy if you do decide to read this.Before I go any further I just want to make it clear that this is NOT a paid review. I do stand to benefit from doing this review in indirect ways but I was not paid to write this and it is my honest opinion.I have been reading Jason’s blog over at The University Kid for a while now and I won’t deny the fact that I fall into his category of the passive reader. I like to read his posts because they are amusing and full of great marketing ideas but I rarely ever comment or participate in the discussion. In fact, when Jason first mentioned he was releasing details of a new marketing system and all I had to do to get free access was write a blog post and mention his blog, I thought about it but ended up not doing it. Why? Usually when it comes to marketing systems I am a critic. However, Jason put out his last call to get free access so I decided to do a review because he has proved himself many times in the past with accurate information that has produced results.That right there is pretty much my opinion of TUK. shuttle bus . He offers great information and ideas in a fun way. That makes a big difference. He is brutally honest, giving away most of his ideas for free, which is a breath of fresh air from most marketing guys that are trying to squeeze every dollar out of you that they can.If you are interested in learning some marketing tips or getting some ideas for some small projects I would highly recommend going on over to Jason’s entrepreneur blog, The University Kid.
It is more than a theory. It’s Agile!

This is a follow up to my post on getting your clients involved in your projects. I am going to tell a quick story about customer relations gone wrong and respond to a reader comment about the whole idea being nothing more than a nice theory.
When things go very wrong
Last week my wife came to me and asked, “do you remember that article you wrote about customer’s being idiots?”
She proceeded to tell me that she had just heard that her brother had just been laid of because the company is going under.
Now my brother-in-law make kitchen cabinets for a living and he is very good at what he does. In fact, many of the kitchens he installs are worth more than my house!
Now this whole problem stems from one customer that flipped out and threw a tantrum. Now the company was installing the cabinets as the man had requested except there was an issue with the type of wood he wanted and the finish he wanted. This finsih will crack when the wood ages. So the boss went to the client to talk about the issue, explaining carefully why the customer was wrong and provided a solution.
I am not sure the reason for the blow up, maybe the client was one of those guys that can never except that they could be wrong, but a tantrum ensued and the client fired the campany and refused to pay his $40,000 bill for the work that had been completed.
So that was it, the company could afford to start any new projects because it now owed $40K for materials that were already used.
Luckily the customer consulted a designer who also told him he was wrong so he rehired my brother-in-law’s company and handed over a nice big check.
It’s more than a theory. It’s agile.
Even, though the story went bad it did turn out alright in the end. I know this is not always the case. To prove my “theory”, imagine if the client was not shown the kitchen until it was complete. He would have been far more angry to learn that different wood and finish had been used. Even though he reacted poorly initially the problem was able to be resolved early on and the customer was kept happy.
It is the same with software. You know that the client won’t give you all the details correctly, they jut won’t. So it is important to have them involved to keep the project on focus and clear up issues that are bound to arise.
Now this is not my idea to being with. It has been around for a long time and is called Agile Software Development. Agile Software Development refers to a group of software development methodologies that promotes development iterations, open collaboration, and process adaptability throughout the life-cycle of the project.
Now I am not going to convince you of this methodology’s worth. You can decide for yourself. Personally, I have been involved in enterprise level development for almost 4 years now and can tell that since switching to Agile style develoment and following the principles of Domain Driven Design that I have been more productive and produce far been software. Check it out for yourself.
Who ever said “the customer is always right” is an idiot
This type of customer mentality really drives me nuts. I worked at a fast food joint for 4 years while I worked my way through college so I have seen, first hand, the ugly side of this way of thinking. Carrera de Diseno Web . diamond ring . Treppenlift Infos finden Sie hier . This mind set gives the customer a puffed up sense of their worth. Sure it is their money that pays for salary and keeps you in business but it does not justify childish tantrums and harsh name calling or cursing because their coffee is wrong (even though you made it exactly as they ordered).Now that I am on the other side I catch myself displaying some of these tendancies from time to time. Mind you, these behaviors only play out in my head, I am a nice guy after all. I wouldn’t ruin someone’s day just because I have to wait an extra 30 seconds while they remake the coffee.Luckily for me, I have a beautiful wife to keep me inline. She worked in retail for nearly 6 years before deciding to be a stay at home mom after our son was born. She is always quick to point these things out when I start to complain to her about my bad trip to the grocery store.What does this have to do with software?Well, nothing. Also EVERYTHING! This thinking does not stop when a client walks into your office for consultation or for a scheduled development meeting. Yes, the client needs to be invlolved regularly through out the course of a project. They are the experts in their business (domain), afterall.Let me momentarily digress to say that I agree that the customer should always be treated as the the King. They should be listened to and given all the attention necessary to keep them a happy and loyal customer. Their inappropraite actions, however, should not be tolerated.Back to the point of the article that I am trying to get to. Applying to development, the client should have the final word on features and other design considerations. They are after all going to the the end user and are the ones paying for it in the first place.You mean do everything they say?Of course not! Your client doesn’t know anything about software engineering. Huh? What? How do you treat the client as if they are right and intentionally ignore their stupid ideas? Well, you don’t. I mean, you don’t ignore, seemingly, stupid ideas, you address them. Your client is the expert in their business but you are the expert in your business. You need to find a middle ground to provide what is best to help the client acheive their goals while maintaining good design for your project.You will first need to explain to the client why you think this is a bad idea. They will likely repeat why they think it is a good idea. Come prepared with a few senarios that highlight why it is a bad idea. You never know maybe you misunderstood and the client can show you why it really is a good idea and you can refactor your code to accomodate this feature in a sound way. Visual aids and narritive dialog go a long way in resolving misconceptions on either side.This is why I think it is critical that the client be involved in the various stages of a project. They will help you catch mistakes or errors in implementation or they may even think of new or improved features.Imagine if the first thing the client gets to touch is the finished project. “Why does it do this? I thought we said it has to do that” will leave both parties frustrated with the project even if you did implement it perfectly to specifications. Then you will get to experience those tantrums I am talking about.
The spyware silver bullet, does it exist?
It is no secret that Windows has security problems and that Windows machines get bombarded with viruses and spyware everyday. The problem is further compounded by users that use Internet Explorer and like to click ‘Run’ on those random popup screens asking to install some software.
Forunately there is antispyware software available to help remove the junk we get on our computers. Well, depending on how you look at it, it is unfortunate that this software is necessary, but is a fact of life with a Windows PC.
I have tried a lot of anti spyware programs in the 15 years I have been using Windows and they all provide varying results. That’s why when I heard that Spyzooka promises 100% spyware removal I was a bit skeptical. After doing a bit of reading they have a pretty strong guarantee. In fact, they are the only software promising 100% removal.
Firstly, they have a 60 day money back guarantee. Pretty standard stuff. The nice thing about their promise is that if Spyzooka doesn’t remove every single piece of spyware on the first scan you can send the scan results (there’s a button on the scan results page) to the Spyzooka team and they analize the data and send you a free update to remove the additional spyware it had missed.
With a promise like that and 60 days money back to give it a try I will be testing this out. I would love to get rid of the other 3 programs I use if Spyzooka can do it all.
Zune getting what PSP got wrong
We all love to hate Sony. In fact, I could make a full time job out of hating Sony and still work overtime. Instead of ranting about some of the reasons I think Techcult did a fine job of it here.
One of the things that really bugs me the most is how Sony crippled the PSP so it could not output to an external screen, like say your TV. So you had these PSP movies that you had to watch on a tiny screen instead of hooking up to your 46 inch flat screen. Thanks Sony. Not a good selling point.
Well, the Zune must have realized what idiots Sony were and decided to do the opposite and include TV out capabilities. You can watch your Zune content on your TV which is nice because seriously who wants to watch movies on a tiny screen especially if you want to show someone else? This may require some extra Zune accessories like a Zune AV cable but that is pretty common.
Another nice feature of the Zune is the ability to stream video and audio to your XBox. Sony could have easily done the same with the Play Station but nope, why would anybody want to do that? It amazes me that Sony is still in business.
On top of it all the Zune has a battery life up to 30 hours. This beats my old iPod by a long shot. Another nice feature of the Zune is the Zune charger. You can plug Zune into a standard powere outlet to charge and not have to plug into your computers USB ports, although that is an option if you want. This bugs me about my iPod I have to plug it into my PC and must have iTunes installed on the computer to charge the device. Not exactly convenient on the road sinceI don’t have a laptop to bring along to charge it.
The Zune seems to take some flack as a second rate player but I like the feature I have described and it easily beats the pants off PSP for any media content. Whether you’ll like if over iPod is matter of preference.
Keeping up in your career
Information Technology changes rapidly and it can be hard sometimes to keep up with the skills required to maintain your career.Programming is no exception to the above statement. Lately I have been reading books to upgrade my development skills. Programming is not all about the language you use. It goes way beyond the basic syntax to methodologies, patterns, and best practices.With our companies latest piece of software we truly jumped into the enterprise market. dog groomer tampa . I figured I better get up to speed on enterprise programming techniques as the software is growing fast and will need to be flexible and very maintainable. Consider it a bit of IT professional development.My first stop along the career training path was to start reading Foundations of Programming Ebook by Karl Seguin which walks you through everything you need to know about programming for the enterprise and writing maintainable code.This approach to continuing education applies to most trades, maybe not to the extent as IT. The long and the short of it is you never stop learning and you can’t survive in a career without learning new skills as they are presented. Consider professional development like the Natural Selection of the work force. If your skills are weak or out of date you will get pushed out by younger or more educated workers. It’s survival of the smartest working.
Running your own server is asking for trouble
As someone who has been on both sides of the hosting fence there are few times that I would recommend a client trying to run and manage their own server. Generally, it sounds like a good idea, especially when you look at the cost of managed hosting. It is important to remember that although it may appear cheap to host your own server, using Linux and other open source technologies, the costs can be deceptive and not always be directly tied to money. Most often if careful and honest assessment is done the managed services turn out to be the cheaper option in the end. What am I talking about? Lets see.Let me clarify that when I talk about running your own server I am not referring to some guy running a Linux web server on an old PC in his basement. I will be comparing both options for the same level and quality of service.Up front costsLet’s compare the up front costs for managed hosting and running your own server.A typical dedicated server will probably start around $175 per month and gives you a modest server with lots of bandwidth and unless you are running heavily used sites or applications then it will most likely be more than enough. So at $175 per month that will cost you $2100 for the year. That may sound like a lot but really it is not because you get a fully functionally server out of the box with operating system and software per installed based on the package you chose. You also get power redundancy because your server is part of a data center. Also the hosting company still owns the hardware and is responsible for replacement if any hardware fails.If you were to host your own server and you had the same $2100 budget for the first year. Well it would be impossible to build your server, install power redundancy (modest UPS at a minimum), buy the operating system (if you wanted Windows), and buy any backup and protection software. Also on top of that you are going to need a static IP address (you get that as part of the managed services) which can easily run you $100 per month from your ISP which alone eats up over half your budget.Server administrationAnother important thing to consider is server administration. Who is going to run and maintain your server? Who is going to troubleshoot your server when it goes down at 2 in the morning and you start getting panicked calls from your clients.Most hosting companies will also administer your server for you as part of your managed hosting package, well, for a bit more money of course. This means that if something goes wrong you just call up technical support and they take care of it. This also means they are on the hook for the protection of your data and making sure the backup routine is in place and functioning.Let’s consider that compared to you having to maintain your own server. brake repair shops . If you are a person that is knowledgeable about computers than chances are you could manage to run your server fairly smoothly. On the other hand consider that if you are busy keeping the server running optimally then who is running your business and generating revenue? You can’t do everything and out sourcing your server administration is one of those things you should let go.Now even if you paid your hosting company double to include server administration into your package ($350 per month or $4200 per year) this is considerably less then a salary for a fulltime IT person which will run you a minimum of $40,000 per year for someone decent and if you decided to use Linux to save money on your OS costs that salary just took a big jump.ConclusionThe long and short of this post is to say if you need dedicated hosting then go with a professional company because when you stop to consider all the costs involved whether it be money or just peace of mind running your own server will cost you way more.
How do you compare cell phones?
I am always interested in the latest toys coming from cell phone makers. Cell phones can do so much these days besides make phone calls. You can play mp3s, take pictures, make videos, or surf the Web.Cell phones have become such an integrated part of our lives it is impossible to imagine living without them. Just simple stuff like texting a friend, even if they are in the same house, yes I know you guys do that
, has become just a way of life.Apart from regular use they are critical to business and the slightest time savings when making a deal can save money or even mean the difference of getting or missing out on an opportunity. Our busy lives require cell phones.Just like the vast array of phones and features, price varies just as much. christine . So how do you know what cell phone is better than the other? How can you easily compare feature? Cell phones change so rapidly and there are so many different models out there it is difficult to make a decision especially if you are looking to save some money as well.I discovered a nice site this weekend that helps me this that very question. PhoneGladiator.com lists all of the latest models with lots of details on features for each phone as well as where to buy them.There are even consumer reviews and various photos and videos about each phone.This site can easily save you time when trying to decide to buy a cell phone or determining if it is worth while to just hold onto your current phone.
Guest post for Reencoded
Colorado Springs SEO . I did a guest post today over at Reencoded. Check it out and leave some feedback.
2 tried and true ways to frustrate and discourage your developers
I have been reading a lot about what makes a developer want to stay or leave their current jobs or clients on some development blogs as of late.There are two things that stuck out to me, probably because they hit home with me, that can really frustrate and discourage a developer.1. Poor or incomplete specifications. There is nothing worse for a developer to implement code based on wrong or poor specifications. The results are never what the manager or client wanted. This results in tention on both ends and the developer ends up recoding the task. Everyone loses in this case.It is very important for the client or project manager to lay out very precise and detailed instructions for the developer before any coding begins. This is even more important if the developer has limited or no access to the client or manager to resolve questions. The poorer the specifications the more questions and guess work the developer must do to complete the project.Being a the lead developer in my organization I have felt the pain of redoing work and have a strong appreciation for proper planning and documentation.2. Unreasonable expectations. This can come in many forms, from unreasonable deadlines to being expected to overcome limitations in technology. What ever the expectation both parties end up discouraged and disappointed when things fall apart.It is essential that the client be made aware from day one what is possible in the realm of technology and timeline. It is also crucial that the person or team that communicates with the clients and relays information to the development team be very knowledgeable in these areas as well. abingdon md . Sales reps love to say whatever will make the sale but this can lead to some messy situations if promises cannot be delivered as stated.Avoiding disasterIf managers can keep these points in mind, and take them to heart, when organizing projects they will be amazed at the amount of positive outcomes that will result from just a little diligence to make sure both sides stay happy and productive.
Want to win cool stuff?
I usually don’t participate in contests. That’s probably due to the fact that I am essentially lazy and I have the mind set that I couldn’t possibly win.
Well, I am shrugging that off after seeing Alan’s, of Affiliate Confession, sweet new MacBook Air that he won in a contest.
Alan is throwing a contest of his own with some pretty nice prizes from Market Leverage and Vat19. These prizes include a Nintendo DS iwth 2 games, a Flip Mino camera, a USB missle launcher for harassing your co-workers, and a banana bunker (a plastic shell to protect bananas).
Now it is easy to enter, which is probably why even I am doing it. You just write a blog post, kind of like this one, about the contest. Make sure you link to the contest post, Market Leverage, and Vat19 then leave a comment on the contest post with a link to your blog post about the contest. It’s that easy.
SEO and Adwords, using both to your
advantage
Search Engine Optimisation is well known in the development community. Developers may not be SEO experts but they have at least heard of it and understand it’s importance in relation to the success of a website. Now, with some big names offering SEO services the non-technical and managers are catching on and realizing it’s importance to their success.
As a quick overview of SEO it is making sure that you use the proper, semantic, markup for your webpages, writing keyword targetted content, and building links back to your pages. I know SEO is more complex than that but it is beyond the scope of this post.
Beyond SEO, there is another option that has presented itself. Google Adwords. Now Adwords doesn’t instill the same feelings of confidence in all people as SEO does. It is a mysterious beast that takes knowledge and experience to harness. You will find those out there that love Adwords and use it to drive a great deal of business to their websites. There are just as many, if not more, out there that will tell you that Adwords is a money pit and a waste of time.
As someone who has played the Adwords game I like to think I fall into the middle of both of those extremes. I know Adwords holds great potential for me but I still haven’t mastered the art yet. Having spent in excess of $600 experimenting with Adwords I found that it was fairly easy to drive lots of cheap traffic to my site. Getting that traffic to convert into something meaningful like a sale, lead, or even RSS subscription proved much harder.
Just like in SEO, the proper keywords are key (no pun intended). Even a slight variation in keyword selection can mean the different between rags and riches.
With SEO if you choose the wrong keywords you are out time and money in the form of work on your site and content. In Adwords the wrong keywords mean lost money for every single visitor to your site because you are paying for every single click.
So when it comes to either SEO or Adwords it pays to do your homework before you start rather than later. It could save you time and ultimately money.
Completely Unbelievable!
It always feels nice when you see a decision pay off in a positive way. For me this is especially nice as I seem to find things out the hard way most of the time.
In this case I am referring to a hosting provider I decided NOT to choose. That host is DreamHost. I had done a lot of research on DreamHost and was sure I would go with them when the time can except for chance stumble upon a blog post describing many performance and uptime problems the blogger had experienced with DreamHost. After some debating with myself I decided to look for a different host. That’s how I found HostGator which I am very pleased with thus far.
So on to the point. DreamHost announced via their offical blog that they are encouraging their customers to use GMail instead of the email provided by DreamHost with the customer’s hosting package. Why? According to DreamHost:
Just over HALF of all the support requests we get are about email. Everything else we offer, combined, doesn’t add up to the amount of trouble, expense, use, and effort that goes into “simple” old email.
And that’s kind of funny, because as far as I can tell, almost nobody CHOOSES a web host based on their email features.
They want to offload their customer service problems to Google and apparently nobody cares about email when choosing a host. Well, perhaps, that’s because when we choose to pay you for an advertised service we except it to just work and be rock solid. I am not going to contact your sales department and ask for email stats and uptime charts. I expect that it is the best it can possible be.
On the positive side Google probably provides a much more reliable service than DreamHost and Google does it for free. You can even use you@yourdomain.com if you use Google Apps (also free).
I am just glad I stayed clear of DreamHost. What service will they try and drop next?
As a side note I was very surprised at the tone of their blog. It is incredibly unprofessional and I would expect it was written by a nerdy high school student. Here are some quotes.
Some people might say Web Hosting is for late night orgies in the data center.
Me + Web Browser = Instant Orgy (tool tip on image of woman wearing a Firefox tank)
see you emo fags later – tom
To me this is a huge warning sign as to the way the company is run. There is no way I would ever even consider using DreamHost again.
Another lesson in having a proper backup routine
I have shared my personal troubles when working with a server that is not on a proper backup routine. I also talked about another blogger who had similar problems not too long ago. Today, however, I read a truly sad story of how things can go really wrong when you don’t take backups seriously.
It started out pleasantly enough. I was just catching up on John Chow’s trip to China. Now I don’t read John’s blog regularly but I like to scim his RSS feed for interesting headlines. Well I found one today, “Hunting Pandas At The Shanghai Zoo“. Turns out it was just a video of him and his family at the zoo but the real gold was in the link to the “true life account” of how John had a rock fight with Pandas.
That was a funny post to read. I’ll be laughing about that one for a while. What about the backup post you promised? Just hold on, I;m getting there. I promise.
I decided to check out Carl’s blog (the third guy from the Panda story). Alright, here you go. This is the point of my article. the first post I see on Carl’s blog is an explaination that the data recovery company he sent his hard drive (after a server crash) was not successful in recovering any data.
So what is the magnitude of this loss? HUGE! He says he has lost 5 years worth of data for his personal blog as well as 10 years worth of data for his Surreal-News forum. Ouch! Among other data lost was sites of friends and family. That is a tough loss to take.
What can we learn from this? Carl says it himself. “never really intended to run many important sites from my server. I really should have set up RAID regardless.” That’s how it usually goes. You don’t intend to store important data but eventually it creeps onto the server and before you know it you’ve lost important data.
I wish Carl the best of luck in the future and hope he does imlement RAID like he says. You should setup up some nightly backup (at least weekly) software onto a seperate harddrive. Doing a weekly or monthly offsite swap (take a copy off site) is always good when possible.
Do you SEO?
Well do you? SEO is such an important part of running an application or a website. If done properly it can rocket your site to success but if not done properly you can be left in a dazed heap of failure. home painters . So what is SEO?SEO stands for Seach Engine Optimization and means setting up and marketing your website in a way that maximizes your exposure on seach engines. This involves using the proper semantic HTML markup to begin with, writing your content using specific keywords you want to be found for in searches, and getting links back to your site from other popular sites to improve your seach ranking.This may sound simple enough but it is a huge task and requires a lot of insight into the SEO market. So what do you do?Take Dan Durick for example. Dan focuses on car dealer SEO. That’s right the SEO market is large enough to allow for specialization. Each market requires special knowledge and insight to promote a site to it’s full potential.It is clear from reading the articles on Dan’s blog that he knows what he is talking about when it comes to promoting a car dealership website. He demonstrates in one article how the decline in search traffic for dar dealerships is directly representative of the lagging economy. His data shows that sales are down this year and the search traffic follows a similar curve.This skill is important to an SEO. Firstly, it will help you keep your job when you can present the hard, cold facts to a disappointed manager that wants to blame him for the decline in seach traffic. It is also important for the customer so they can understand how things work and how they can adapt to the ever changing seach market.
Finding a rewarding career
I consider myself very fortunate. I didn’t have a hard time finding a good job. I was only graduated from college for a couple months when an employer came to me and offered me a job because they were referred to me by my college.Not everyone is so fortunate and it can be hard sometimes to find a good job that makes you feel valuable. Recruitment agencies can work for you much like the reference from my college did for me. Agencies have far more resources and contacts than you do and some employers only hire through agencies.There is a down side to agencies. They cost money and for someone searching for a job this might be a problem. Where can you turn then to get valuable information, that will give you a competitive edge, when job hunting that isn’t going to hurt your wallet?Enter HumanOnline. HumanOnline is a recruitment directory offering services for various parts of the United States. HumanOnline publishes articles and resources related to human resources, recruitment, and job search.For instance looking at the page for job search Arizona you see job search sites for Arizona aswell as recruitment agencies in that area. This information is broken up by city. When I looked at the listings for Phoenix it was nice to see well established resource sites listed. To be honest I was expecting a bunch of ‘fly by night’ paid listings. I was pleasantly surprised.What’s nice about HumanOnline is that they are a human editing directory. This helps keep only relevant and high quality information in the directory unlike a lot of directories that accept anyone willing to pay $10.So if your on the hunt for a rewarding career stop by HumanOnline. kia . You’ve got nothing to lose expect opportunities if you don’t visit them.
Web Hosting Update – After 7 weeks
You’ve heard me rant about my past hosting problems. It is no secret; I hold some hostility toward GoDaddy for the bad service I received, but that is in the past. I am writing to give a brief update after 7 weeks of using HostGator.
I purchased their “Baby” shared package as my requirements don’t call for anything more at this time (of course should I get to the front page of Digg I would be screwed). It was an unbelievable deal. Unlimited websites hosted with a tonne of space and bandwidth for less than $80 for the year (with a 20% off coupon).
I took a long time before committing to HostGator. Who, really, is the best web host? Especially when you are looking for the cheaper end of the scale. This time I thing I hit the jackpot. My sites have been very fast with no downtime so far and I love CPanel. What more could you ask for. I plan on doing a more detailed review after a year.
I want VoIP and I want it now
Living in rural Nova Scotia (that’s in Canada btw) can be frustrating sometimes. The big cities and regions with more population benefit from the latest technology while I wait patiently for it to become available to me…eventually. Well I am tired of waiting for VoIP to come to me.
Sure I can voice chat on MSN or Skype but I want to kiss my old analog phone goodbye.
I saw this site, called ChatLife, the other day and it made me more aware of just what I was missing. I am missing out on cheap internet calls while my telco charges insane rates even to towns 25Km down the road. On top of that I pay for each jack in my house and each phone number while ChatLife is giving away a free UK phone number.
So while I am stuck with my overpriced and seperate services ChatLife offers VoIP, IM, Chat, and Proxy service, for “the cheapeat price on the Internet”. ChatLife services are free except calls made outside the network. You can see the great rates here.
Are you paying too much for printer ink?
Choosing a printer isn’t as simple as a person might think. If you are not careful you could have just bought yourself an expensive paper weight. What do I mean? Well the snazy new printer you just got, for an amzing deal of $60, probably will cost you your left arm to replace the ink.Many stores that sell printers sell them with rebates or special offers that reduce their price well below what replacement ink cartridges cost. I have friends and family who have taken the practice of actually throwing out the printer and buying a new one when they run out of ink. Denver Web Design . That is very bad for the environment.Some simple research before buying a printer can do wonders and if you shop online you can find amazing deals on printer ink cartridges. When I bought my printer I bought one that was moer expensive but had cheaper ink cartridges. I recently found an online ink supplier that reduces the cost even more. That’s with the shipping included!Another thing to look for is what type of color cartridges the printer takes. Is the color all one or does it have three seperate cartridges like most Epson ink cartridges? You see, if each color is a seperate cartridge then you only replace the color that ran out instead of replacing them (in an all-in-onetank) even when the other two are mostly full (if you use a lot of one color).There are lots of things to look for when buying a printer and ink. Hopefully this will help you in your search.
Free hosting and why it is important to developers
For pretty much every developer there is a point in your life when free hosting is a big issue. I know it was for me. When I was starting out I didn’t feel confident enough to pay out money, even if it was a small amount, for hosting services. public self storage . For me most eveything I was doing early on was personal to build my experience and confidence.I would spend endless hours looking for and comparing free hosts. Who was offering the most space and bandwidth along with the most features? Who was the most reliable and actually delivered on their promises? Who forced annoying ads and popups on my pages? The usual things that everybody considers.Things have come along way since I started out in this business. It seems you can find information much more easily now then you could then. moving service . It seems there are communities springing up to fill every niche need and then some. If I could have found such a community then like a free host forum I would have been able to save a lot of time and worry about the safety of my work.If you are still relying on free hosting be sure to find yourself a development community to get involved in. You will be able to get advice and information from others who have already done the research and experienced the road blocks.
Two tips to make you more productive
Being productive can be hard sometimes, especially when you have stress from deadlines and loads of work. It is ironic that, generally, the more I stress and obsess over what I have to get done, I get less done. The opposite is true. When I am calm and enjoying working on a project I have few problems being productive and meeting the deadline.So how can we have more of the stress-free, productive time and less obessing? I have discovered two things that work well for me.
The proper environment
First, place yourself in an environment that you feel comfortable in and can focus on the task at hand. Chances are if you work from home and have a family it can be hard to do this. You need a dedicated office space where you can close the door and focus on your work. Or perhaps sitting on a bench in the park or at a table at your favorite cafe, but find a spot that works for you. This is very important.For me I am tied to my office at work. I don’t have a laptop and I suspect I would get a less than favorable response if I told my boss I was heading down to TIm Horton’s to work for the rest of the day
. apartments in nashville tn . So if you are tied to a spot how can you make it better for working? Well, I bring my iPod everyday and put on the head phones and this helps me focus. The hall outside my office can get pretty busy with techs running back and forth to the server room and workshop so at these times I have to close my door even while wearing the head phones.
Small goals
This second, and final tip, has had the biggest impact on my productivity. I keep a list of tasks that I want to complete for the day. I may or may not complete everything on the list but crossing items off gives me a confidence boost and motivation to keep going.If you don’t like to litter your desk with paper you can try some alternatives like Basecamp. You can sign up for a free account and track your progress online. phoenix auto repair . This has some advantages. I can’t remember how many times I’ve gotten home and forgotten a list and wished I had been tracking it online instead.
Conclusion
In short, get out there and find yourself a space that can make you more productive and happy in your work. Also start keeping track of your goals and progress. You’ll be surprised by just how much it helps.
So long GoDaddy, I won’t miss you
After nearly a year, with GoDaddy’s shared Linux hosting, I am moving on. I couldn’t be more relieved.
I have blogged about some issues I have had with GoDaddy in the past and some I have kept to myself. Now, it is payback time. I am doing this review in hopes that you won’t have to endure the ill treatment that I have experienced.
I haven’t posted at all yet this week. That is because I have been busy moving all my sites over to my new host, HostGator. HostGator be warned in about a year you also will be getting a review. Don’t worry, if the last week is any indication you will be getting a glowing review. It has been great thus far.
I’ve been holding off writing this review because I didn’t want any trouble from GoDaddy until after I was completely off their servers. Call me paranoid but I have heard horror stories.
Other than the fact that their shared servers are absolute crap, it started, and ended, with GoDaddy trying to block search bots with hidden robots.txt files. Note that I did not create this file and it was there from day one. This was the first issue and it never got resolved. I tried many things to get Google to index my site but even replacing the hidden file with a file giving wide-open access wasn’t even enough. All the while, GoDaddy denied that the hidden file existed even though you could browse to it but it didn’t show up in any FTP client.
I have avoided contacting GoDaddy customer support, there’s an oximoron for the ages, because frankly they don’t seem to know what they are talking about. The one time I contacted them was about problems with trailing slashes on rewritten URLs. I ended up getting far more help from other slighted GoDaddy users in various forums around the web. Their support people blamed me and said my code must be wrong. Again this was never resolved.
These two cases are mild compared to what some have endured. Needless to say, I am not going to wait around to find out if it’ll get worse. I have moved to a new host and am very happy. I can sleep at night again without worrying if my site will get suspended for having an opinion or if my visitors are being thwarted by poor performance.
So long GoDaddy. I won’t be back!
Home automation – just in the movies?
Home automation is a topic that occasionally peaks my interest. It kind of seems like an idea from a Sci Fi movie but it is available to day for those willing and able to pay for it.
Wikipedia defines it as:
Home automation (also called domotics) is a field within building automation, specializing in the specific automation requirements of private homes and in the application of automation techniques for the comfort and security of its residents. Although many techniques used in building automation (such as light and climate control, control of doors and window shutters, security and surveillance systems, etc.) are also used in home automation, additional functions in home automation can include the control of multi-media home entertainment systems, automatic plant watering and pet feeding, automatic scenes for dinners and parties, and a more user-friendly control interface.
That reminds me of an article I saw a little while ago about your plants sending you messages on Twitter when they need to be watered.
Home automation systems are still a ways off, at least in the mainstream, but I like thinking about it.
Some lessons are painful to learn
Ever get the feeling that the universe is against you, or at least your computer hates you? Do you know where I am coming from? We have all had those days. I know I sure have but today I want to focus on the misfortune of a fellow blogger, not to kick him while he is down, but to offer some advice and encouragment for the future.I enjoy reading the posts by Jim over at Blogging Startup. He posts about the ups and downs of blogging and new startups. Today I saw his post and immediately felt his pain. He has had a rough week finished off with a hard drive crash with only a two week old backup. Talk about a final kick to the teeth. What’s worse his latest work project, that was due today, was completely wiped out in the crash.Now I hear some of muttering to yourself, “why didn’t he have a more current backup?” Well that is easier said than done and Jim even vows now to do daily backups. I left a comment for Jim pointing out the flaw in his noble intentions. That flaw being himself. We, as human beings, eventually get lazy or we just forget and the universe sees these slip ups and sees fit to punish us at that exact moment.I too have been in this same boat. I used to run my own web server that hosted my blog, an old one, not this one, as well as my current projects on the go. I enjoyed running my server and learn a lot from setting it up but failed in one area, backups.I tried to tell myself I would make daily backups but the truth of the matter is I didn’t and wouldn’t you know my hard drive crashed and took my backup drive along with it. So unlike Jim I had nothing, not even a two week old backup, nothing!I scrambled for the next couple weeks re-doing a project for a client that was nearly done and ended up a week late which didn’t impress them much. Build Local Sites . Oddly, they have never called me to do another project <sarcasm/>. You see, they identified the flaw in the situation, me! I had failed to take proper care in handling my data, and theirs. I should have had more fail safes in place.Today I do not do my own hosting altough I am perfectly capable. I just don’t have any interest in spending the money and time in implementing proper backup that hosting requires.Now back to Jim. I suggested he buy himself an extra hard drive and get some mirroring software to protect himself from repeating this same mistake in the future. Upon writing this post I pin pointed a flaw in my advice. What if the backup drive fails like it did for me? I want to add to that advice and say go one more step further. Buy a third drive and an external enclosure (USB external hard drive) and have the backup routine included semi regular backups to the external drive as well. The chances of three drives frying on you at the same time are slim.So Jim, you have my sympathy, but now you are on the hook to protect yourself for next time. Really there is no excuse from us not to learn from the mistake the first time around. Unless you enjoy these type of things
.
Unexpected side effect of blogging
In the online, for lack of a better term, world of programming you occassionally encounter bugs or side effects in your code that you did not anticipate. For some of us this happens more often than for others but it is something everyone experiences from time to time. In the context of this online world these side effects are considered negative. You want, and need, for your programs behavior to be 100% predictable every single time it is run or else eventually you’d be out of a job.
This article is, however, not based in the online world but about a real life situation. For those of you that have been chained to your desk for so long, trying to meet a deadline, that perhaps have forgot what that is take a moment to google it.
Just as this is a contrast between the online world and real life this side effect is a positive thing as apposed to negative.
What are you talking about?
Life can deal you some tough blows but every once and a while it passes you that proverbal ace in the hole, usually unexpectedly.
Over the last year or so that I have been blogging I have discovered one of these positive side effects. My writing has improved. What? You made me read all that just to say your writing has improved? Well, yeah. Just like most posts on this blog, this is something that I deem important so here it is in your face for you to read or disregard.
Those that have know me for any length of time know that my grammer and spelling leave much to be desired and I would credit my improvements to services like dictionary.com and thesaurus.com. I am in no way saying that it is perfect yet but it has given me a desire to write.
I get frustrated with my blog sometimes. Sometimes it is because of the slow growth that it has experienced. Sometimes it is at myself for not updating regularly. However, for the most part I find running this blog rewarding. Even though it barely covers it’s own costs I enjoy seeing, and responding to, the comments that it gets. I find nothing more fulfilling than finding out I have helped a fellow coder with a problem. After all developing is all about collaboration and community, or at least it should be.
Some things I enjoy at work
There are some things that I get to enjoy each day at work that I would otherwise not likely be able to afford if I were working as a freelancer. There are some things that I would have to get just to be able to work from day to day like Visual Studio and other development tools.The company I work for does work for clients across the continent and in some cases don’t ever speak to the customer face to face. A recent case for this was when we deployed a remote server for a customer to host some of their various applications for the multiple locations. This solution allowed them to connect remotely from anywhere and access their server.The main tool that allowed us interact with this customer without ever getting on a plane and flying the 1000 miles was video conferencing. Solar Training . Now video conferencing systems have come a long way in the last few years. They have improved greatly from the days when they were little better than speaker phone and a web cam quality sound and video.These modern systems can do many things like split the screen into many sessions if you have multiple people to connect remotely.This is one of many things I benefit from at my job that lets me interact with customers that I wouldn’t otherwise have access to.
I am suffering from too much GUI
I was thinking about some of my skills sets today and this lead me to a realization.I consider myself to be good with relational databases. I may not be an expert guru, but I have designed and implemented some pretty complex systems, very well IMO.The realization was that I rely to much on GUI interfaces. Yes, they are great and help get things done faster but in the instant the GUI was not available would I be able to function? True, I could always jump onto Google but my productivity would be greatly reduced because I would have to look up a lot of things.I also realized that I tended to be more disciplined when a GUI was available. For example, when working with MSSQL I used plenty of Sotred Procedures and was extremely careful to make sure all contraints and relationships were in place. However, when using MySQL, usually phpMyAdmin, I rarely used an SP or setup relationships. self storage facilities . So why is that? Because for MSSQL there are nice GUI interfaces to let me quickly and easily add all those good things but in phpMyAdmin there is noway to add them except through queries.Conclusion, I am lazy. I am working on this but it is true. hare . car dealers . This is by no means a good excuse to ignore good practices.So here’s to using a little less GUI and brushing up on some advanced SQL techniques in the near future.
I still don’t need another credit card!
After posting about telemarketers and credit cards yesterday I had a few more thoughts that I would like to share with you.I never fails to amaze me how randomly telemarketers seem to select their victims..er…potential clients. I mean, as I mentioned I live in rural Atlantic Canada, there are very few places here, that I am aware of, that except American Express (pretty much anything other than Visa or MasterCard) but a lot of the credit card calls I get are offering me an American Express card.Telemarketer: We are pleased to offer you a no fee, $50,000 limit, American Express Centurion card, I just need you to confirm some information….[insert some sort of dialog that I don't hear as I try to stop the rambling fool and tell them I don't want it]…But seriously though do these companies not do any sort of research on the regions they are soliciting? Why would I want a card that I probably can’t use at most places I shop? Why would they want to waste their time and employee salary on soliciting a region that has no need of what they are tryign to sell? If I ever figure out that answer I’ll be sure to let you know.In the mean time I keep screening my calls hoping to avoid repeat that same conversation again. ftd .
Video game programming and other dark arts
For the time I played my first game of Commander Keene and Monster Bash I have been hooked on video games. I have owned many consoles in my time from Atari up the last console I bought, and the last I will ever buy, the Sega Saturn. Consoles are great but I have made the decision to stick with PC gaming. I mean, it only makes sense, I have to have a PC for work (and pleasure) so why not just spend I little extra cash to keep it current with the video games I like?Anyways, on with things. From the first time I played a game I have been fascinated by the idea of video games programming. At first I assumed it was something of a dark art, much like JavaScript and PERL were when I first set out to design websites. jcpenney coupon . Those days are gone though, mind you have not produced anything great in way of a video game. The best I could boast is a half baked attempt at Pacman, that failed miserably when it came to AI, but I have learned some things and am not as itimidated by the idea of programming a game.There are, IMO, different levels of difficulty in games programming which mostly depends on what type of game you want to produce. Whether it is a First Person Shooter, online casino games like Texas Hold’em (like my fav at Full Tilt Poker), or a RPG like Zelda, there are different things you need to know about each genre.If you were expecting some great words of wisdom, some advice, or a rockin’ programming tutorial, I am afraid to tell you that you will be sorely disappointed with this post. oh law firm . On the other hand perhaps you should be greatful. Believe me, you don’t want to learn video games programming from me, at least not yet anyways! Cheers
A few reasons I love Canada
If you didn’t know that I was a Canuck Coder then you do now. I like living in Canada, no really! I live in a rural town in Atlantic Canada. florida homes . You may be wondering what there is to love about that. Well first off I like being able to look out my livingroom window, of the house I can afford to own, and see trees, a pond, and the town’s pet ducks swimming on that pond. Yes you heard right, our town has ducks that they keep at the pond and feed regularly
.One thing that is great is that in a rural town the waits at the hospital are not that long compared to large cities. Medicare is something that I take for granted a lot of the time living in Canada. I don’t have to pay everytime I go to my doctor or have to go to the emergency room. The bill we got when my wife had our son 8 months ago was a whooping $330 and that was only because we upgraded to a more private room. That’s right it would have cost $0 to have a baby, and a 3 day hospital stay, if we had taken the standard room. baltimore storage . Really the only medical expenses I have are perscription drugs and thanks to my wonderful medical coverage at work ($250 a month which my boss pays half of) I only have to pay $5 per perscription. For example my wife had a $300 perscription a few months ago that we only had to pay $5 for.I have to admit I haven’t travelled outside of Canada but I can’t imagine wanting to live anywhere else, except maybe last week when it was -20C
.
No I don’t need another credit card
I have decided that I will post about off topic stuff that has more of a personal aspect to it from time to time. I will also be doing a bit of shuffling of the blog layout to incorporate some more personal information in an attempt to give a bit more context to where my posts come from and how they are largely based on my personal life. Enough of that, on with the post.We all hate getting calls from telemarketers. I am no exception to that rule, however, I have noticed lately that I am only getting solicited calls from companies that I do business with. What is with that? It seems that the random telemarketers have desided to respect my request to be removed from their call lists while companies I do business with on a fairly regular based seem to think it is fine to keep harassing me.Strangley enough 90% of those calls are to inform me that I have been pre-approved for the next great credit card. cheap cars . Now I have three credit cards but only use one regularly. This must be a booming business since even my bank, which I have my regularly used card with, continues to try and “upgrade” my existing card to what they feel will make them more money…er..I mean…be better for me. Why would I want to trade in my 1% moneyback, no fees card for a card with fees and AirMiles. Lead Paint Regulations . No thanks.Needless to say I am about to cancel one of my cards in hopes the company gets the hint and stops harassing me. Heres to hoping!
RSS ?
