Articles

Technology management insights and technical deep-dives

Technology Management Paradox

October 29, 2012 at 12:00 AM
The book, The CIO Paradox, by Martha Heller identifes some common contradicitions of managing technology, grouped into four main categories:

Your Role:

  • You were hired to be strategic, but you are forced to spend most of your time on operational issues.
  • You are the steward of risk mitigation and cost containment, yet you are expected to innovate.
  • Your function is seen as that of an enabler, yet you are also expected to be a business driver.
  • IT can make or break a company, but you are not a member of the corporate board.

Your Stakeholders:

  • You run one of the most pervasive, critical functions, yet you must prove your value constantly.
  • Your many successes are invisible; your few mistakes are highly visible.
  • You are intimately involved in every facet of the business, yet you are considered separate and removed from it.
  • You are accountable for project success, but the business has ownership.

Your Organization/Team:

  • Your staff loves technology but must embrace business to advance.
  • Your team members are uncomfortable with people, but to succeed they must build relationships and influence others.
  • You develop successors, yet the CEO almost always goes outside for the next CIO.
  • You are forced to seek less expensive overseas sourcing, yet you are expected to ensure the profession.

Your Industry:

  • Technology takes a long time to implement, yet your tool set changes constantly.
  • Technology is a long-term investment, but the company thinks in quarters.
  • Your tools cost a fortune, yet have the highest defect rate of any product.
  • You sign vendors’ checks, yet they try their darndest to sell to your business peers.

I could add another category, “Your Management”. In many organizations, technology reports into finance. This was a natural fit because finance and accounting are in many cases the biggest “users” of IT and IT is seen as a cost center that needs to be reigned in. The book makes the case for the new IT paradigm which is based on visibility and accountability. Many organizations evolve slowly, however so those challenges are still real. According to a recent study by Gartner, the CMO will grow to be the biggest IT spender by 2017. Does this mean IT will eventually report to Marketing?

Read More...

Permanent Link — Posted in Technology Management

The Ten Commandments of Egoless Programming

July 31, 2012 at 12:00 AM

From The Psychology of Computer Programming by Gerald M. Weinberg, this is a great list to have posted in any dev shop.

  1. Understand and accept that you will make mistakes. The point is to find them early, before they make it into production. Fortunately, except for the few of us developing rocket guidance software at JPL, mistakes are rarely fatal in our industry, so we can, and should, learn, laugh, and move on.
  2. You are not your code. Remember that the entire point of a review is to find problems, and problems will be found. Don’t take it personally when one is uncovered.
  3. No matter how much “karate” you know, someone else will always know more. Such an individual can teach you some new moves if you ask. Seek and accept input from others, especially when you think it’s not needed.
  4. Don’t rewrite code without consultation. There’s a fine line between “fixing code” and “rewriting code.” Know the difference, and pursue stylistic changes within the framework of a code review, not as a lone enforcer.
  5. Treat people who know less than you with respect, deference, and patience. Nontechnical people who deal with developers on a regular basis almost universally hold the opinion that we are prima donnas at best and crybabies at worst. Don’t reinforce this stereotype with anger and impatience.
  6. The only constant in the world is change. Be open to it and accept it with a smile. Look at each change to your requirements, platform, or tool as a new challenge, not as some serious inconvenience to be fought.
  7. The only true authority stems from knowledge, not from position. Knowledge engenders authority, and authority engenders respect—so if you want respect in an egoless environment, cultivate knowledge.
  8. Fight for what you believe, but gracefully accept defeat. Understand that sometimes your ideas will be overruled. Even if you do turn out to be right, don’t take revenge or say, “I told you so” more than a few times at most, and don’t make your dearly departed idea a martyr or rallying cry.
  9. Don’t be “the guy in the room.” Don’t be the guy coding in the dark office emerging only to buy cola. The guy in the room is out of touch, out of sight, and out of control and has no place in an open, collaborative environment.
  10. Critique code instead of people—be kind to the coder, not to the code. As much as possible, make all of your comments positive and oriented to improving the code. Relate comments to local standards, program specs, increased performance, etc.
Permanent Link — Posted in Technology Management

Find IP Addresses with awk

June 27, 2012 at 12:00 AM

I needed to find an IP address amidst a bunch of random text. I googled and didn’t find anything that worked for me the way I needed, so I made my own with awk. I thought I’d put it up here in case someone else could use it:

awk '{match($0,/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/); ip = substr($0,RSTART,RLENGTH); print ip}'

So you can pipe anything through this and it will grab the IP (V4) address(es).

Read More...

Permanent Link — Posted in Geek Tactics


Adjusting IT for Cloud Computing

June 19, 2012 at 12:00 AM

Cloud Computing is not just a paradigm shift for infrastructure. IT operations, accounting and even staffing structure need to be updated to effectively harness the benefits.

In a previous article I illustrated deploying a multi-terrabyte RAID array in the cloud. That takes just a few minutes these days but it used to take most organizations over a month to provision that much storage through their IT channel. Moving to cloud will allow organizations to reduce and potentially eliminate IT staffing around procurement.

Read More...

Permanent Link — Posted in Cloud Computing , Technology Management

Increase Amazon EC2 Reliability and Performance with RAID

May 25, 2012 at 12:00 AM

While I haven’t *knock on wood* had any EBS failures in Amazon’s cloud myself, I have heard the horror stories and that makes me uneasy. Another issue with disks in cloud that I do run into a lot is latency. The disk io in many cases is slower to begin with, and random bouts of latency tend to crop up.

I have addressed both of these problems by deploying RAID 10 on my Amazon EC2 instances. It sounds techie but you don’t have to be a rocket scientist to do this. If you are managing an EC2 instance you can do it and I have published a script that will get you there in a few steps.

Read More...

Permanent Link — Posted in Geek Tactics , Cloud Computing , Amazon Web Services

Update Amazon Route53 via python and boto

April 18, 2012 at 12:00 AM

I wrote a python script to update DNS on Amazon Route53. You can use it on dynamic hosts by putting it into cron, or on boot for cloud instances with inconsistent IP addresses.

It uses the boto Amazon Web Services python interface for the heavy lifting. You’ll need that installed. (Arch Linux has a python-boto package)

You need to edit the script to place your AWS credentials in the two variables near the top of the script (awskeyid, awskeysecret). Then it’s ready to go.

Read More...

Permanent Link — Posted in Geek Tactics , Cloud Computing , Amazon Web Services

Nokia After the Burning Platform

April 6, 2012 at 12:00 AM

Read Write Web’s Dan Rowinski has penned a great article with some background on Nokia’s decision to partner with Microsoft and offers some opinion on how they are faring.

I disagree that Android was not a viable choice for Nokia. What got Nokia into the quagmire they were stuck in was a relentless pursuit of perfection - not just in the hardware, but the UX of the device.

Read More...

Permanent Link — Posted in Mobile

The Flat Site

March 6, 2012 at 12:00 AM

This site is now completely flat and being served directly off of Amazon S3. No PHP or Wordpress.

I did this mainly as an experiment to see how hard it is to pull a dynamic site back out of a CMS like Wordpress. Not needing a server makes this ridiculously cheap to host and being distributed in Amazon’s S3 infrastucture it’s fast.

There are several site “compilers” out there, but I settled on Blogofile. It’s python. It adheres to my core concept of separating code, content and design; and the templating language (mako) was very simple to pick up.

Read More...

Permanent Link — Posted in Uncategorized

Mobile Sites vs. Apps: The Coming Strategy Shift

February 13, 2012 at 12:00 AM

Great info here: Mobile Sites vs. Apps: The Coming Strategy Shift from Jakob Nielsen’s Alertbox - especially about responsive design as a tool but not the solution.

I hear a lot of talk about a single web site using responsive design being able to effectively service computer, tablet and mobile visitors. Maybe for simple sites this approach would work, but I don’t think it can be as effective as a dedicated design for mobile or even a mobile “app”.

Read More...

Permanent Link — Posted in Mobile