"I've got something to say."
And it might even be worth listening to.| What I've Learned
Wednesday, 10 March 2010 17:12
|
| After reading Marco Tabini’s marvelous article entitled “5 meta-skills for the PHP developer,” I considered what I’ve learned after 14+ years as an independent web developer. The more I thought about it, the more I wanted to share, so indulge me for a few minutes as I reminisce. #1. AskThat mysterious moniker “web developer” can imply that you know far more than you do know. You might be expected to wax eloquent on the appropriate use of gif, jpeg, and png images, along with expertise in coding frameworks, along with familiarity with basic apache httpd config file options, along with best practices for html multipart/alternative email construction. The point is this: nobody knows it all. Web development is just too broad for any one person to have a corner on that market. So when you are inevitably asked for advice or expertise in a certain area in which you are not wholly familiar, ask somebody you know and trust. Of course, that assumes you’ve been cultivating your circle of fellow web consultants, doesn’t it? Maybe this should be a separate point, but be sure you have planned ahead so you actually have developer-friends you can IM or Skype or Facebook on short notice. You can also go to the myriad discussion boards you found when you Googled your latest problem for solutions, and sometimes you’ll strike gold there. But I’ve discovered there is no substitute for talented friends who answer your inquiries in a good-natured and timely manner. #2. Keep learningThis is actually a corollary of #1. Since there is so much to know in web development, plan and force yourself to constantly learn something new that soon might be applicable to your work. During a recent lull in my work schedule in the summer of 2009, I spent a good amount of time reviewing and expanding my knowledge of Wordpress and its many modules by re-building a family web site. Then I worked through installing the Magento ecommerce engine on a grid server and became familiar with its basic functions and operation. I also found time to pursue a brief introduction to coding frameworks by re-tooling my site using CodeIgniter. Just recently I re-constructed this site so I could learn the Joomla CMS; next I’ll be seeking some familiarity with Drupal. Sometimes this foresight reaps immediate benefits, too. Because of my work with CodeIgniter and its Model-View-Controller approach, I had a basic frame of reference when I was asked to maintain a site built with Django/Python. There is no reason to sit idle waiting for more work to come in; there’s too much to learn! #3. Take a breakYou’re under the gun, facing a deadline, and you hit a roadblock. You think you are only minutes away from finding a solution, and hours later you think you are still only minutes away Take a break. The problem isn’t going to sprout legs and walk away. Your brain needs an opportunity to relax, and probably your rising frustration level is only hindering your ability to focus and debug the problem. I’ve been astonished how many times a solution will present itself after I’ve relaxed and eaten a meal, or gone to bed for the evening. I know, when deadlines are looming it feels like you should keep plodding forward and forego the necessities of life…like food, drink, and bathroom breaks. And that’s the irony: a little refreshment makes you more capable and focused, not less. So, next time you are stuck, take a walk, eat a Snickers bar, or call a friend. Give your mind and your frayed nerves some recovery time. It’s OK; Perry gives you permission :) #4. Things changeThe first 12 years as a web developer, I could almost count on a steady 40 hours of work a week. The last two years have been much more up and down, feast or famine. There’s a reason for that change, but I won’t be any happier or more efficient at my work if I dwell on “the good old days.” A couple of years ago my wife lost her fulltime job, and since then she’s been at home collecting unemployment and filling out one job application after another. While she was still working I had our home to myself during the daytime; that’s where I conducted web business. For the last two years, not so. Her presence has presented some interesting challenges to my daytime routine, but in the end we’ve both adapted well, I think. Things change. Your longterm survival as a web developer depends upon adjusting and adapting to life, not living in yesterday. #5. Under-promise, over-deliverMaybe it’s my nature or personality, but I’ve always been very up front with my clients about what I can and can’t do within the budget and timeframe they give me. If they are not satisfied with my estimates, better they find someone else who can tell them what they want to hear. As a result, I tend to give myself a margin of safety when I estimate jobs…and then I give clients just a little bit more than they were asking for. I’ve found this keeps me sane, a more loving husband and daddy, and the client is happier with that little extra. In the long run, I’ve found it better to have fewer clients who are satisfied than more clients who are disgruntled. Probably all the points above are just common sense, but sometimes in the heat of a project, common sense takes flight and sheer panic or frustration sets in. So I wrote these down primarily to remind myself; if you can gather a helpful word or two, so much the better. So, Perry, are you listening?
|
||||
| Last Updated on Friday, 02 April 2010 12:58 | ||||


