Recently in Information Technology Category

A few days ago I came across this Infoworld article entitled "The painful truth about age discrimination in tech" via Slashdot and have been wanting to comment on it ever since. While I have had no reason to cry foul on any company I've ever interviewed for, I have to say most of the issues certainly ring true to me.

One of the frustrations I feel a lot of tech works have is how to communicate experience. Way too often I fell I've talked to recruiters or HR personnel who are either looking for an exact word-for-word match between the resume and the job opening or, on the opposite end of the spectrum, are looking for just one keyword to hit.

Alas, it seems all too true that "hiring managers are unable to map how 10 years of experience in one programming language can inform or enhance a programmer's months of experience with a newer technology."

Which of course doesn't help when, in the world of technology, the field is evolving at such a rapid pace, with a huge focus on "The Next Big Thing".

True, writing CGI scripts in Perl yesterday doesn't automatically translate to writing custom modules in Joomla. But there is a road that gets a developer from first writing a CGI script in Perl to learning Object-Orientated programming to understanding design patterns such as Model-View-Controller that does provide one with the basis for working with Joomla.

Luckily this is an issue that can be taken care of with a little education.

More troubling for an experienced developer is that "only 19 percent of computer science graduates are still working in programming once they're in their early 40s."

Granted the source of that statistic is a government study that's at least a decade old. But still, the high turn-over I've experienced working in the tech industry - my average is about 2 years at any given company - I can see many individuals would take the break as motivation to look for something "better". Heck, I've even felt it myself, having gone back to school for a Masters in Business Administration at one point.

Invariably when talking about business, a sports analogy tends to make an entrance. Sure enough, Inforworld's article compares the IT industry to that of professional sports, "at some point in those career arcs, the assets that made workers such hot properties -- youth, the ability to devote lots of time to their vocation, comparative inexperience -- diminish. And the marginal utility of what's left -- experience -- is not as strongly valued."

Yet that of course is not true, well at least it isn't true in professional sports. All you have to do is think of all those managers, coaches and scouts, most of whom at one time or another played the sport itself. Perhaps they never made it to the "bigs" or they did, but found out that their talent wasn't above average. Yet found a way to contribute, to use their experience as a way to give back to the sport that gave them a job, as the saying goes.

Which begs the question, where are those jobs, the managing, coaching or scouting positions in IT?


First published: 10th of December 2009 for Technorati

In 2000 with a staggering market capitalization, AOL purchased Time Warner for $164 billion, with an eye towards delivering Time Warner's unique content to the AOL masses.

AOL Market Value Chart
AOL Market Value Chart by Jay Yarow at The Business Insider

Today most agree that idea never had a chance of becoming reality. AOL is now on its own and after its first full day of independence, Wall Street has let it be known that it views AOL's chances of redemption as slim. AOL stock is down (-0.34%) while Time Warner stock is up (+4.18%).

AOL's idea wasn't half bad. In fact for companies such as Yahoo, the idea itself worked fairly well: build partnerships with content and service providers in order to bridge the gap between users and publishers and make money in the process.

AOL's business model was always about being a destination for digital content. In its dial-up days, AOL was a rich online community that focused on user-generated content in its message boards and chat rooms. Looking to move beyond user-generated content, AOL set its sights on Time Warner and their rich library of print, music,and video content.

It was that monetization that AOL misfired on. Where Yahoo and Google make money on content with advertising, AOL looked to make money with subscriber fees, only to watch as users abandoned AOL's notoriously unreliable dial-up service for cheaper, more dependable service providers with access to all content on the Internet, not just the Time Warner content prominently featured on AOL.

Now consider, since AOL purchased Time Warner, Google has come to dominate aggregating and indexing media. YouTube (also part of Google these days) and Hulu have leadership roles in video. iTunes is the king of Pop with a eye on video (with iPod/iPhone and Apple TV) as well as "print" (rumored tablet). Add in up-and-coming Facebook and Twitter have redefined areas AOL once lead: chat, messaging and sharing of content with friends. It is little wonder AOL's prospects look dim.

Yet while AOL may have lost the #1 spot to Google and is losing momentum to Facebook, AOL can still quickly regroup. Wall Street might be looking down on AOL, but current CEO and former Google executive Tim Armstrong still has a sizable market capitalization north of $2 billion to work with. Plus, AOL is still a top internet destination in the US.

AOL still has a shot or two from behind the eight-ball to make.

In many ways an employee in a business with any significant headcount has to deal with the same social constructs as any student in high school. Social groups, pressures and mores impact decisions and actions just as much as the organizational chart. Alas this also means that stereotypes and group labels can quickly impact how various teams and business organizations perceive themselves and others.


For IT Professionals this of course means retaining the label of "geek, nerd, dork and dweeb" along with an equivalent high school social hierarchy, low man on the totem-pole. Which means IT Professionals can end up in a lose-lose situation where an executive or manager might perceive an IT geek as antisocial, bullheaded and business-challenged.

But in an opinion piece last week for Computerworld Jeff Ello, an IT manager for the Krannert School of Management at Purdue University, feels that at the heart of the matter, IT Professionals are simply just misunderstood.


That is, IT Professionals are analytical individuals that can empower those around them and that their behaviors and intentions are simply misread. What might look to one manager as an individual that can't accept the manager's decision on how something is to be done is really an individual who is fighting for something to be done in a logical and effective manner. "It's not about being right for the sake of being right but being right for the sake of saving a lot of time, effort, money and credibility."


His opinion puts one in mind of Mike Judge's movie Office Space in which programmers Peter, Michael and Samir1 are terrorized by Initech's demanding and perplexing management team, personified by the company's Vice President, Bill Lumbergh. But the appeal of a movie such as Office Space is that one doesn't have to be a programmer to have ever felt terrorized by an impersonal business executive. A customer service representative can feel equally marginalized.


Yes, of course Executives should look at IT department as they would any revenue generating organization in general and not as some group of misbehaving malcontents. Each organization and individual, taken at face value, is an important asset to the business, with specific skills that can benefit a company. For IT this means bringing strong creative and analytical abilities to the table, skills that can be brought to bear on just about any business problem.


In noting that within the analytical skill set, "at the most fundamental level" of IT's job is "to build, maintain and improve frameworks" Jeff Ello reminds us of what IT can do best, bring about significant strategic advantage for the business.


However, for whatever reason Jeff Ello seems interested more in trying to justify the specific social group and mores of IT Professionals than he seems in communicating how those misunderstood stereotypes can be overcome. For whatever grievance or special treatment he might wish to argue to the world's collection of Executives on behalf of IT Professionals, it should be noted that in the end, we all want the same thing, for whatever enterprise we find ourselves engaged in to succeed. For that is what differentiates business from high school.


In any case, it works both ways. If IT Professionals are going to gain the respect of those Executives and Managers in endeavors great and small, technical and non-technical alike, it also means that IT Professionals need to understand the rules of the game governing Executives and business. It is time for both groups to shed past stereotypes and move on to bigger and better things.



1 And of course Milton, can't forget about him. He can set fire to this place, you know?

Social Matchbox

| 0 Comments | 0 TrackBacks | 

For every famous success story such as Amazon.com or failure like Pets.com there are hundreds of unknowns; companies that find success, or failure, anonymously. Yet each of those companies have interesting stories to tell, as do those within the company, individuals discovering what it takes to bring about a compelling idea to the world.

I hate the "Dot Com Bubble" and "Bust" labels that have become mainstream media's shorthand for "stupid business people who should have know better" because it limits the story to companies like eToys.com as "obvious" failures. Having lived in San Francisco during that period of time, having been part of an anonymous "success"1 story with C2Net Software, having met many interesting individuals I know from firsthand experience the "reality" of that "bubble" and "bust", "stupid business people" is not the first thing that comes to my mind2. I am still friends with a few individuals from "back then", follow and keep in touch with many more online and have, alas lost complete contact with many others. Each and everyone of them carries with them an interesting perspective and insight from moving in a similar network of people and ideas at a similar place and time.

While I know organizations and companies like those exists in many places I have yet to find a loose confederation of those individuals, organizations and companies similar to what I experienced in the Bay Area here in Chicago where I currently reside. I have however found such a network in Washington, DC and it is known as Social Matchbox.

As I experienced back in San Francisco with Webzine, I'm sure to many in the DC Metropolitan Area, Social Matchbox means different things to different people. To some it is a guiding principle of similar ideas, to others an event and still to others a social network of people and organizations. I can't speak to the network of people as a whole, since being in Chicago leaves me with a tenuous connection at best. I can however speak to the idea and, at least to one, event.

According to their website "Social Matchbox is where East Coast entrepreneurs and startup professionals congregate, launch, stay informed, announce job openings, and connect."

Quite an ambitious idea.

In practice, at least as I saw it put to practice last Thursday night, the group focuses on technology startups in the DC area. Now, one might think that DC startups, even technology focused ones, are geared toward one idea; winning big, fat Federal government contracts. While that might be the case for some, the startups selected to give their 5 minute sales pitch for Social Matchbox were anything but. In fact, it seemed quite the opposite, of the dozen or so presenters, about half of them had a social consciousness element to their concept. Take for example the winner of the evening's "group funding", Earth Aid.

AudienceEarth Aid is an online tool designed to assist in managing the household utilities by providing one place for viewing electric, natural gas, and water usage information. But that's hardly the only aspect. Earth Aid also highlights rebates, tax incentives and discounts to help reduced household expenses. The social consciousness element comes into play with the users ability to earn rewards for reducing utility usage, reducing in turn one's impact on the local environment.

Other groups focused on the social engagement front included:


  • Apps for Democracy: An online competition designed to foster innovative and useful usage of local government data online

  • Sunlight Foundation: Similar to Apps for Democracy, only focusing on federal information via Data.gov

  • Grasshopr: Designed to be a single online source for civic engagement on issues at the federal, state and local level


As for those "traditional" tech startups, two of my favorites:


  • TapMetrics: An analytics tool for iPhone Developers for tracking information about their Apps

  • Unblab: An API to a machine intelligence that can be used to label important messages (email, blog posts, tweets) for the user, automatically filtering out "important" information from other "non-important" messages


Will all these ideas take? Maybe. Will any strike it rich? Doubtful. But if these individuals are anything similar to the West Coast counterparts I know, the "rich and famous" part isn't what drives them. What does drive them? Well as Steve Jobs famously put it to John Sculley, "do you want to spend the rest of your life selling sugared water to children, or do you want a chance to change the world?"




1 For some, success or failure is a hard label to place. I, like many others, walked away with shares in Red Hat, which acquired C2Net in 2000, that actually had value. But it was a difficult transition that left a bitter after-taste for many. All, in all it was probably a draw.

2 Don't get be wrong, there was some stupidity going on, but hardly everyone was a speculator, rotten to the core.

The project is a go. The decision has been made. Because of the strategic nature, a significant investment will be made to optimize and support a critical business function with the development of new software.


For many a key question requires answering, does the organization develop this new software in-house or outsource it to a specialized development firm? Quite an array of factors can go into deciding this question. In other cases, the question might be simple to answer.


Increasingly however an additional question comes into play when deciding how to move on the question of software development, go with an open source solution or a closed, proprietary solution? Open and closed systems, like anything else, have advantages and disadvantages.


For example if software development is done in-house proprietary software can provide legal protections for any intellectual property built into the functionality of the software that the organization considers critical to its great business success.


On the other-hand. an in-house system that either is developed internally and then opened or built initially on an open source codebase can reduce development costs and overhead.


These days, for many, the virtues of openness has an strong appeal. Consider the example of a little project I undertook a few years ago to connect an Apple //c to a Mac mini. At the heart of the hardware connection is the bridge between the old-school RS-232 standard to the currently ubiquitous USB standard. To many the success of the project is seen in the very open nature of the two standards. While I was able to purchase all the parts I needed, "off-the-shelf", many, not doubt would note that, if the key product didn't exist, I could have taken to building my own cabling, by looking up the published documentation on the two standards.


But a standard, just like software, doesn't have to be open to be well documented. Now a days the use of Microsoft Word or Excel goes without much forethought. If considerations are made it is with the eye toward wide support, compatibility and availability. Thus, while every organization, software or individual might not be highly compatible with latest version of Microsoft's productivity software, the high adoption rate means at least a high rate of basic support and compatibility for the software and its document formats.


In fact, opened or closed, standard or software, the importance for many is not about the technical or legal risk. From a business perceptive, more than anything else, the question ends up being about support and compatibility. If one invests a large amount of money into software to manage a critical business function the concerns and ideals of open or close take on a lot less importance . What does take on importance are questions about return on investment or on-going cost to support, manage or improve upon the solution, in the short and/or long term.


This is why people talk about communities, development networks, ecosystems and adoption rates. Because these pieces of information present a larger picture about market conditions. For if software and the standards the software adopts are largely adopted then chances are good for the long term viability of the software.


Market position and investment costs, also explain why, more times than not, market leaders such as Twitter, will favor closed systems over open ones whereas disruptive challengers, such as Oracle back in the day, will champion openness over close-knit systems.1 For if the "micro-blogging" format becomes an open standard then Twitter loses out on their investment scaling up their infrastructure. Whereas Oracle, with the open SQL standard, provided a challenge to the proprietary hardware/software lock-in of IBM, the success of their challenge directly dependent upon their investment in get SQL standardized with high adoption.


In other words the division between opened and closed software is hardly as cut and dry as many try to make it out to be.



1 It also explains why some companies, such as the Oracle example, might change their position over time, while others, like Microsoft, might have conflicting positions depending on the goals of a specific department/product.

Strategic Software Development

| 0 Comments | 2 TrackBacks | 

I've been thinking a lot about software development and strategic business strategies recently, in part because of some business work I've been doing recently and in part because the reason why the software program exists has a strong relation with how the system is designed.


'We Are All Software Companies Now' is a post I read last week suggesting that all businesses are software businesses these days, even HP, Tesla, Rackspace and Apple. Well that's not quite right, as I've noted before about Apple all one has to do is look at their financial statements to know that Apple is a hardware company, selling iPhones, iPods and Macs. Apple is no more a software company than it is a technology retail chain outlet.


But of course Apple does both because it has determined that having retail stores and software engineers are critical functions that allow themselves to effectively preform in bringing the best personal computing experience to consumers around the world.1


That is in many cases a business might determine that their own development of software for a key business activity will enable the organization to achieve its long-term objectives.


To determine if a business function might be of strategic importance, let's consider two different types of businesses and how they relate to a specific type of business software.


Spacely Sprockets is specialized widget maker, but unlike Apple, only sells its sprockets wholesale to retailers who then sell a range of individualized widgets from various manufacturers to public consumers. ACME is just such as retailer.


Both Spacely Sprockets and ACME have warehouses. Both companies have shipping requirements. Both companies are using a software solution to manage and track products from origin to destination, from creation to final sale. Spacely uses an "boxed" enterprise resource planning (ERP) solution from a highly regarded business software vendor. ACME, on the other-hand, uses a customized, self-developed and managed ERP solution.


What exactly are these two ERP systems doing for these companies? In general ERP systems are about removing barriers to data that can become trapped in department specific solutions. That is ERP systems are about eliminating standalone computer systems in finance, marketing and manufacturing, and integrating them into a single unified system.


For Spacely Sprockets this means a solution that tracks wholesale sales and overall market penetration, production volume, warehouse inventory and shipping costs. The software vendor Spacely has contracted sells a solution built on software modules for each department; marketing and sales, production and shipping. Each department can choose from a set of predefined workflows optimized for their need. At the same time the modules share a common communication infrastructure enabling access to any required piece of data for the company's Operations department.


Thus Spacely can focus on their business, building the best widget for their market. At the same time reducing the overall cost of their operation and leveraging the expertise of other similar business models via their software vendor's solution. The reduction of operating costs can either be passed on to the consumer in lower product cost or to Spacely's shareholders in higher profit margins.


For ACME their business also involves sourcing products, procurement and logistics management. They too are in need of integrating resource management solution within their company.


However, their decision to build their own ERP stems from the fact that their continued success in business is built on their ability to properly managing the procurement and logistics of numinous products, including Spacely's widgets. AMCE has years of in-house knowledge and expertise that just cannot be replicated in any "off-the-self" ERP solution.


ACME's strategic business objective is to continue applying and refining their hard-won supply-chain knowledge to their operation. In doing so they too can reduce their operating costs in relation to their competition and can either pass on the savings to their customers or to their shareholders in higher profit margins.


Of course in the abstract, this seems extremely straight-forward. In reality, business conditions change all the time. One day the hard-won knowledge your business has fought for is gold, the next it might become a liability.


And just because a business elects one option over the other doesn't mean the software concerns end there. Nope, besides deciding to build a custom solution or not, a business has to consider; do they go with a close-source solution or an open source solution? If they do decide to develop a custom solution, do they try to develop the software knowledge and solution in-house or outsource?




1 I couldn't find an up-to-date reference for Apple's current "mission statement." The best reference Google could come up with is a few years old. None-the-less, even if Apple doesn't have a stated mission, this statement isn't that far of the mark of how the company is currently operating.

Mission Critical

| 0 Comments | 1 TrackBack | 

Over the past week plenty of commentary has been made, including my own, in relation to the 40th anniversary of the historic flight of Apollo 11. One comment on Twitter by alexr however caught my specific attention, "SW engineers should take this moment to consider if they'd trust their code to have gotten the LM onto the lunar surface safely."

Indeed a sobering thought at first glance. In this day and age it is quite common to run into a program written by one or more software engineers that seems unstable or error-prone. What if all those engineers had to deal with the rigors of getting their code "flight ready" where billions of dollars and at least 2 men's lives at risk?

But on second thought I think this comment does more harm than good. It seems to imply that either; the challenges of writing critically important, life-and-death software only occurs once in a blue moon1 or that the good-old-days of elite superman programmers who wrote error-free programs are long since gone, replaced by thousands of mediocre programmers writing millions of bug-infested computer code.

Instances of life-or-death situations being directed by computers (hardware and software) might not be an everyday occurrence for a programmer, or even a once in a career occurrence. But it does still occur. I recall the Professor who taught my Assembly Language class in college mentioning his work on a project for Motorola on a car fuel-injection system. The engine had habit of shutting down when entering the presence of electrical interference.

Just imagine driving down a highway at 55 mph only to have your car shutdown while passing by some high-tension power lines..... Now consider the added complexity of today's hybrid engines.

And while not every programming challenge is "life-and-death", plenty of software code in today's world is "mission critical" with millions, if not billions, of dollars at stake.2

In any case the coding of the Lunar Module's software was hardly error-free. In fact in regards to the Apollo 11 moon landing two specific instances occurred with the Eagle's Guidance Computer during the critical decent to the moon's surface.

At 102:38:30 Neil Armstrong calls out a program alarm, "1202". Ten seconds later, Armstrong is asking for feedback from Houston on the error code.3 Houston gives the astronauts a "go" to continue their decent. But less than 5 minutes later, with 2000 feet separating the LM from the surface the ship's computer issues a "1201".



102:42:13 Armstrong: (on-board): Okay. 3000 at 70. 


102:42:17 Aldrin: Roger. Understand. Go for landing. 3000 feet.


102:42:19 Duke: Copy.


102:42:19 Aldrin: Program Alarm. (Pause) 1201


102:42:24 Armstrong: 1201. (Pause) (On-board) Okay, 2000 at 50.


102:42:25 Duke: Roger. 1201 alarm. (Pause) We're Go. Same type. We're Go.


Second round of system issues.


What was a 1201 and 1202 type error? Only that the Apollo Guidance Computer was indicating that it was overloaded with data inputs, couldn't keep up and was resetting itself.

Yeap, that's right, the guidance computer for the LM rebooted, at least twice, during one of the most critical phases of the mission because it ran out of memory.

The problem? An error in one of the crew's check lists had them turn on the rendezvous radar during the landing phase. Of course the LM crew was hardly trying to rendezvous with the Command Module during their decent, but the repeated calls to the computer to process imaginary rendezvous radar data filled up the limited writable computer memory4 the on-board system had, causing the system to repeatedly restart.

Now I suppose somebody will argue that the computer was hardly to blame. It was a user-generated error turning on the rendezvous radar (or a documentation error) not a computer programmer error. Moreover the program was designed to reset itself if it got overloaded on purpose.5

But, that's just it. No programmer, not matter how good, can take into account every possible error or misuse, whether created by the programmer or the user.6 Would you have considered at first that an over-head power line might scramble your car's fuel injection system?

This is where the programming concept of fault-tolerant programming comes into play. The idea is pretty basic; enable the system to continue operating properly in the event of an error. Just as the Apollo spacecraft (and Saturn V launcher) had mechanical backups to keep the physical system running in case of failure the guidance program (and properly designed programs of today) manage the error and keep it from causing catastrophic results.

Thus the statement should not be, engineers consider if you'd trust your code to get the LM to and from the moon safely. Instead it is, do you consider your software fault-tolerant enough to get one to the moon and back safely?



Interesting side note there is a community programming effort that has created a software emulator of the Apollo hardware and software, Virtual AGC and AGS.
  


1 Pardon the pun.

2 And by indirect implication the lives of the employees, customers, stockholders, et al.


3 Sounds eerily familiar for any modern day computer user; the computer reports some cryptic error code and the next step is to go searching for additional information on what's gone wrong.

4 Now a days we classify memory as Read-Only Memory (ROM) or Random Access Memory (RAM) and talk about Gigabytes (109) of RAM for a laptop (or even a smartphone). The Apollo Guidance Computer? About 64 Kilobytes (103) of ROM and only 2 Kilobytes of writable RAM.

5 The idea was to clear the fault and reestablish import tasks, i.e. clear out the waiting calls for calculating unnecessary rendezvous telemetry and reestablish jobs for processing landing telemetry.

6 And just in case you wish to insist that the programmers of yesteryear were superman, well turns out one uncorrected bug could have crashed the LM by trying to flying the craft first "under" the surface then back "over" the surface and then "onto" the surface for a safe landing.

Ghosts in the Machine

| 2 Comments | 0 TrackBacks | 

Over the past couple of years I have become quite a fan of virtualization. While full virtualization has been around for quite awhile, it has only come into its own on the Intel x86 architecture with the addition of extensions added to the x86-based CPUs from Intel and AMD in the last four years or so. Since then the options available for taking advantage of running virtual machines has expanded and matured. Even Apple and its line of Macs have gotten into the mix, since the migration from PowerPC to Intel x86 in Apple's computing products.

In fact my first successful use of virtualization came on a Mac running Parallels. Back at Zoomshare, my main workstation was a Mac running OS X. Which in and of itself is fine for me as I could do just about anything I needed development-wise, write code using TextWrangler, mange code using Subversion, even do some quick prototyping by running Apache, Perl and Postgress all on one system.

Great, except that well over half of the visitors that visit Zoomshare hosted sites are doing so using some version of Internet Explorer and IE has quite a few well know issues. Plus, part of my tenure at Zoomshare covered the release of IE 7 which required the ability to test against two different version despite the fact that one could only run IE 6 or IE 7, not both.

Enter Parallels for the Mac and virtualization. With virtualization, I was able to run several instances of Windows XP, concurrently if needed, to test against both version of IE. This despite the fact that I was using a Mac Mini with meager Intel Solo CPU [1].

But wait you say, Macs have been able to run version of Windows for years. What about Virtual PC or even OrangePC? Well both options provided for the ability to run Windows, but in the non-Intel Mac world of PowerPC CPUs. Moreover, both Virtual PC and Orange PC provided technically different solutions. Virtual PC provided a software emulation of the Intel based hardware and Orange PC did provide a hardware option that was incorporated into the Mac environment as a daughterboard

Virtualization on the other hand simulates the current underlying hardware, in the case of the "modern" Mac mini at Zoomshare, this means simulating the underlying Intel hardware for use by Windows. In the case of my current laptop, a Lenovo ThinkPad R61i, this means a Linux (Fedora Core 9) "host" running VMWare Workstation and a "guest" Windows XP, Mac OS X or just about any other OS built to run on the underlying Core Duo Intel Processor.

VM Screen Shot
VM Screen Shot

In my most recent, and current, incarnation as an independent computer consultant, I've taken on the task of updating a retail bridal shop's online store. Step one being to setup a development environment. At previous places I've worked, in order to keep control of costs, the development setup was built using repurposed and scavenged production equipment. With VMware's Server product I can create multiple development setups for testing on one midsize Quad Core server with ample memory.

Not that this isn't without its own issues, some based on software limitations some on hardware. For example, one issue I have with Vmware's Server software is the lack of cloning options. See, one advantage of virtual machines is the ability to replicate virtual "appliances", the software image containing a software stack designed to run inside a virtual machine. That is I can create a virtual machine, install the necessary base components and then replicate it as many times as needed [2].

The problem with VMware Server is that while I can copy the necessary files that represent the virtual machine on the host's file system, I then need to modify configuration options in the vmx and vmxf files. Even then I found I need to remove and readd the "hard drive" within VMware's web access tool after notifying VMware that the cloned virtual machine is a "copied" virtual machine and needs a new unique identifier.

The other catch to all of this is that each of these instances where I have grown to accept virtualization as a viable tool have been in closed, controllable environments. Where virtualization is suppose to shine, from a cost of business ownership, is in the data center - in messy, live production environments. That to me seems risky, at least in terms of the production environments I tend to work in.

Full virtualization, as the type of virtualization discussed here, is successful for isolating users and computing environments from each other; e.g. multiple differentiated development servers for testing various coding or deployment approaches. In a live production environment, with a mission critical business application on it, such as the online store for a retailer, I'm not quite sure how virtualization would be effective from a cost perspective. One would need some beefy iron to run a popular online store and if the underlying hardware had any sort of failure, the whole business would come to a halt. On the other hand, for a non-critical, but business necessary operation; development and testing environments, email, filesharing, print servers, digital telephony and even employee workstations, virtualization is definitely worth a look.

 


 

[1] Ok, I did have to up the amount of RAM on the machine in order to run XP in a responsive manner, but that's a minor upgrade, even with a non-straightforward Mac Mini enclosure.

[2] Well not quite. One issue here is software licensing. For example, Apple's End User License Agreement limits even virtual implementations of OS X Server to Apple designed hardware. Other software packages have other sorts of limitations.

Not a Positive Trend

| 

A List Apart recently released their survey of web professionals "to shed light on precisely who creates websites." Overall the survey "jives" with what I would expect, but then again since the survey is, by its very nature, polling similar individuals, it would be more of a surprise if the results didn't.

In fact, if anything I think the survey suggests that a bit more diversity for this segment of the industry is called for. For example, I've spending over 10 years either working as or with web developers of various sorts, which means while I'm hardly in the majority, I fall within the largest segment.


Breakdown of Individual's Years of Experience [1]

So how homogeneous are the professionals that make up this segment of the industry, a bit too similar:

  • Over 2/3 of respondents are male. (Check)
  • Over 2/3 of respondents identify themselves and White / Caucasian. (Check)
  • Over 2/3 of respondents are 44 years old or younger. (Check)
  • Just shy of half (48.3%) of the respondents live in the United States of America. (Check)
  • A majority of respondents maintain their own blog and/or personal website. (Check)

So, a large percentage of those participating in this survey are white males from the United States. That makes the results of these questions quite interesting:


Perceived Bias

Yes, that's right, a large percentage of white males perceive no sexual or ethnic bias within the web development segment of the tech industry. Not exactly reassuring is it?

What's also interesting is that while only 40% are definitely sure they have not perceived an age bias, 75% of our largely white men are definitely sure there is no ethnic bias in the industry.

Does diversity matter, beyond "fairness". Well, yes.  Why? Well for exactly the reason why the results of this survey don't surprise me; there is a lot of "groupthink" going on here. Individuals within the group are trying to minimize conflict are agreeing with what they feel the group will agree upon, of course I maintain my own site, I'm a web developer after all! Groupthink can lead to the lost of individual creativity, uniqueness, and independent thinking. This should be a major concern for an industry that prides itself on those very things; creativity, innovation and individuality.

Of course the real question is; Is this survey truly representative of individuals as a whole or is this nothing more than a survey of A List Apart's audience?

---

[1] While the data represented in these charts are from A List Apart's 2008 survey, the charts themselves have been created by me.

Last week a dust up occurred in part of the software industry relating to a security issue in a key software toolkit. Apparently two years ago, someone ran an analysis tool on the source code to the security toolkit OpenSSL in the Debian Linux distribution. The tool reported an issue within the OpenSSL package included by Debian, so the Debian team decided that they needed to fix this "security bug". Alas the solution broke a critical element of OpenSSL, its random number generator, (Long story short, a truly random number generator is critical to software encryption tools such as OpenSSL.) The end result is that for the past two years security applications on Debian and Debian related distributions have been "hackable" and need to be rebuilt.

Each side in the matter is blaming the other. A member of the OpenSSL team suggested that "had Debian [submitted its code changes], we (the OpenSSL Team) would have fallen about laughing, and once we had got our breath back, told them what a terrible idea this was." Debian developers on the other hand have noted that the email address provide by the OpenSSL team is incorrect and that overall documentation on the part of the OpenSSL team is lacking.

As with our own service issue from a few months back pointing fingures isn't as helpful as discovering where the chain broke and why. In both cases the issues are eerily similar, a break down in customer/vendor communication.

In Boston Ben Hyde deftly makes a connection between his local butcher's meat packing industry and his own and in the process wonders what might be the fallout of interdependent web applications circa 2008. Here in Chicago, the former hog butcher for the world, I think we are just starting to see questions and concerns of "quality control" starting to percolate into the public consciousness as the software supply chain between "suppliers", "vendors" and "customers" grows in sophistication.

Last Labor Day the Chicago Park District recently revealed a statue at the corner of Pulaski and Foster, just a short walk from my home here in the Albany Park neighborhood, in honor of the local park's namesake, Samuel Gompers. Samuel Gompers was an American labor organizer, union leader and founder of the American Federation of Labor (AFL). Unlike some of his contemporaries, Gompers doesn't seem to have considered himself a Socialist, Anarchist, or even a Communist, which in today's political world would probably place him and his beliefs somewhere near the center of America's political spectrum. Although at the time he's ideals clearly fell progressively left of center.

Upton Sinclair, a junior contemporary of Gompers, was, no doubt about it, a Socialist actively advocating socialist views. In fact, while he gained particular fame for his 1906 novel The Jungle, which dealt with conditions in the U.S. meat packing industry, in turn causing a public uproar that partly contributed to the passage of the Pure Food and Drug Act and the Meat Inspection Act in 1906, Sinclair himself felt the meaning of his work had been lost on the general public. His outcry wasn't about the conditions of the meat so much as it was about the human tragedy lived by the workers in the plants handling the meat.

And yet, The Jungle did ultimately bring about change. Perhaps not the change originally intended by its author, but change did come to the growing complexity of the American food supply chain of the early 20th century, a supply chain in which the quality control problems of the time started to get dealt with as regulations and greater customer awareness started to take hold.

A Zoomshare service outage, while problematic, is correctable. A security breach from improperly patched software from two years ago is a little harder to correct....

Recently TJX Cos., a discount retailer that operates T.J. Maxx, Marshalls, HomeGoods and A.J. Wright stores started mailing notifications to customers about a recently arrived at settlement to a class action suit in relation to a January 2007 report that computers that handle customer transactions at a number of its chains were broken into.

What if - and this is just a hypothetical here - what if the TJX issue was related to the Debian/OpenSSL fiasco? Who would legally be on the hook? TJX? Debian? OpenSSL? All three?

What are the implications? We are already seeing customers and regulators react. Services such as Zoomshare post Privacy Policies and Terms of Service. States such as California have passed laws requiring immediate notification if customer data is compromised.

It seems easy to wonder if the computer industry is one Upton Sincalr expose away from greater public and governmental outcry. Even without a "man-of-the-people" individual looking to correct some of the inequities in the IT industry one can see changes are brewing as the overall complexity of our systems grow - along with our greater dependence.

About the Author

Paul is a technologist and all around nice guy for technology oriented organizations and parties. Besides maintaining this blog and website you can follow Paul's particular pontifications on the Life Universe and Everything on Twitter.

   
   


Subscribe:
Add to Google Reader or Homepage
Add to My AOL

Add to netvibes
Subscribe in Bloglines
Add to Technorati Favorites

Powered
CentOS
Apache
MySQL
Perl
Movable Type Pro