Software is frozen business
There’s this idea that lean, successful organizations should focus entirely on their “core,” their primary reason for existence. But of course, even if you are, say, a news organization, you still need to make sure your people get paid, someone installs the desks and the workstations and the software, and all the myriad little details that go into a day’s work. So before long you have finance departments, IT departments, a person who takes care of travel arrangements, etc. These fall into the general category of “support” departments, and when the budget rubber hits the road, they also tend to get the shaft because they are considered cost centers not central to the business at hand. If you can outsource it, so much the better.
This is all fine and well if your core business truly operates independently of your support departments. If you can outsource most of your payroll and finance and save money and time, great. But if your business depends on having smart and well-trained accountants and analysts to do interesting (and legal) things with your cash, then getting into a vendor relationship where you spend part of your day working around their procedures and haggling with them over the terms of the contract is going to cost you more money over the long term. Because you’ll be hiring people to fill in the gaps and glue the two systems together. And this won’t be a fun job, so you’ll be dealing with higher turnover costs.
Software engineering is one of those things that most organizations never gave any thought to. The larger organizations may have had a data processing department stuck somewhere, working on fairly well-defined behind-the-scenes processes. But software didn’t drive your day until we started installing terminals, soon to be replaced by PCs. At that point, software became central to you day. And here’s the thing about software: It’s not a commodity. It’s not something general-purpose like a chair or desk. It doesn’t just become a part of your day: Its capabilities — what it makes easy and what it makes hard — determines what you do during the day and how you do it. Finished software is a business process that’s difficult to change.
Think about that for a minute. If you find that the way something your organization does is terribly inefficient, you can come up with a new way to do it and change it, unless it’s built into the software. Here’s a concrete example: The image below shows you part of the article editing interface in Saxotech Online, a web content management system used by many newspapers to run their web sites:
You’re seeing that right. Saxotech is designed so that every paragraph of every story gets put into its own box. This runs counter to decades of word-processing interfaces, let alone centuries of experience with the written word.
The reason given for this design is that it allows the system to insert content between arbitrary paragraphs, say by putting an ad after paragraph 3. This seems legit until you realize that you can actually handle this task perfectly well inside the software itself, and you don’t have to burden a human by making it part of the interface and thus making their day that much more difficult. Extra keystrokes, mouse clicks and time for each person who uses the system adds up very quickly when you look at it over a year: Never mind the additional performance hit you take by putting every paragraph into its own database row.
Your average blogger has a faster and cleaner content management system available to them than most online newspaper journalists. Do you wonder why blogging grows so quickly in popularity and capabilities? Do you wonder why bloggers can move faster and do more? Is this the kind of system that makes it easy to publish across multiple platforms?
We can’t change this, and the people who can have very little incentive to change it for us. Oh sure, we can bring it up at contract negotiations, but unless the vendor shares both our strategic and tactical concerns down to the very last employee, we’ll always be arguing over details and we’ll never be pleasantly surprised by innovation. You can reward innovation after the fact, but you can’t pay someone beforehand to deliver it to you. You can only hire the best people, encourage them and get out of their way.
That last statement is fairly well-worn. But we have to stop considering software engineers as something exotic, positions only software companies have to worry about filling. If your organization is based on information — meaning it produces or aggregates it in some way — there is no black box or silver bullet you can buy that will eliminate the need for smart people who know how to create or couple together your business processes — your software. You have to have good software engineers to help you shape the information and come up with innovative ways to deliver and present that information.
This is also why open-source software will remain a viable option for some time to come. What you lose in contractual support you gain in freedom of movement and a guaranteed level of innovation. Microsoft, no slouch in developer support itself, has made every effort to push forward its own free or nearly-free solutions. When you add the skills and institutional knowledge of passionate software engineers who have your strategic interests in mind, the results are amazing: Just look at sites like LJWorld, SavannahNow or IndyMoms.
With services like Amazon’s Elastic Compute Cloud you should think long and hard before insisting on managing your own NOC and worrying about SLAs. But note that you’ll still need someone to write the software. Someone to worry about your processes in excruciating detail. Someone to come up with new ways do do old things, and new things to offer your customers, and actually be able to implement those ideas.
I can’t think of anything more central to an organization that produces or distributes information.


Marcel, I think you have it all wrong. I’ve used so many different software packages that half of them are out of business. Open Source is more nightmarish in the long run than an “out-of-the-box” solution hands down. I’ve learned a long time ago that 99.9% of the complaints in software functionality, usability, and features are due to training issues. A lot of research goes into software development ( I even WORKED for a software company) and the complaints I hear from you are exactly like the ones we heard. No software, nor Open Source solution, is perfect. But get more training, REAL training, and I’ll be a month’s paycheck you’ll change your mind.
Open Source is good for ONE THING and ONE THING ONLY… PROGRAMMERS!! It’s something they will tout for years to come simply because it gives them job security. Once they leave, once there’s a debate between programmers, or any host of scenarios, you are SCREWED! Most software you can add your own scripting to help “customize” it. The explanation you gave about SAXOTECH is a perfect example. YOu can do things multiple ways, it gives you options, not all people work the same or in a way that you might think would be most efficient. You don’t HAVE to use separate paragraph boxes, but there’s a benefit if you want to, and there’s ways that you can accomplish this without doing it this ONE way.
I have a lot of years working on many many software programs, and there’s no doubt that TRAINING is the key. Don’t blame the vendor, they WANT to train you, it’s in there best interest for you to use and be happy with the many ways the software can be used. Blame your internal department for not thinking that Training is important, a COST center as you say. When was the last time someone got REAL training on MicroSoft Word, or even Outlook. I’ve heard so many complaints about these top programs used by everyone, but they make is so easy to use that many feel they don’t NEED training. I got training, and was AMAZED at the possibilities, issues that I used to complain about are now laughable because I got proper training.
Don’t blame the vendor, been there, done that. Get your company to provide training, you’ll get a lot more accomplished than complaining.
Frank, thanks for bringing up Microsoft Office, which actually illustrates my point perfectly. Note that the product has an extensive API, accessible in multiple programming environments. Note that Microsoft spends a great deal of time and money in the design phase analyzing customer usage. This is why, for example, Excel is actually a great solution for ad hoc data analysis — Microsoft realized that’s how their customers were using it, and made those tasks easier without insisting they shouldn’t use a spreadsheet applications for database tasks. Your point about training isn’t quite on the mark, however — organizations could do wonders and save millions by using Microsoft Office to its full potential, but doing so would involve people whose primary role was to streamline processes using software: Software engineers. Training existing staff without changing their job duties is a recipe for failure, and past experiences along those lines is one of the reasons many organizations skimp on training.
This isn’t about the vendor — note that we’re not discussing the red herring of open source vs. closed source — this is about the product. If you don’t have full control over its customization (as in Microsoft Office, for example), then your business processes are too dependent on another company’s decisions. And if that product betrays some fundamental design flaws, as Saxotech does in more ways than the single example I mentioned, then your processes are hostage to someone else’s bad decisions.
Interesting post, Marcel. I don’t think this is quite the same thing, but your article has me thinking…
The non-profit I work for is small, but we are fortunate to have an Information Development Manager on staff who has created our database (in Access). The database she created is far superior to one of the “out of the box” solutions offered to non-profits for managing donor lists and volunteers. She is able to respond to our requests for changes quickly. We enter only information that matters to us, and get only the information we want without wasting our time on meaningless or repetitive tasks. Even small changes, such as adjusting the tabbing to match the order of our student intake forms, save time and make data entry less cumbersome for staff.
After years of using shared “staff docs” and spending countless hours searching for documents that are buried in folder, after folder, after folder, LS has decided to start using a wiki for content management. It’ll be interesting to see how it changes the way we organize information.
Software is like culture - it is so integral to our work (as you said, it determines what we do and how we do it) to such an extent that people don’t question whether a process is meaningful or efficient. It just seems “normal.”
I love the idea of changing my entire world view, or at least my desktop, with the help of a new breed of superheroes: Software Engineers.
Marcel, I found your site today and liked this post.
A lot of this argument comes down to turn-key, but hard-to-customize software (Saxotech) versus hard-to-make but completely customizable homegrown solutions. Ultimately, I think the solution lies somewhere in between with Web frameworks like Ruby on Rails or Django.
(Disclaimer: I work for the really smart guys who made Django and Ellington.)
Naturally, you’re always going to need some training and some developers/engineers, but a good framework and a thoughtfully designed admin area (such as Django has) can ease the pain and go a long way in making your life easier.
Rich, you’re right about Rails, Django and its ilk (we’ve used Rails at the RGJ for almost three years, and we just hired a Python/Django fan). They’re an essential part of a web developer’s toolbox.
But I wanted to focus more on this built-in allergy many businesses have against software engineers. You can generalize it into a bias against local developers in general and include designers as well.
By embracing design and development as part of their core, companies like Google and LJ World have become media industry leaders. And this is irrespective of their particular technology choices — it’s more of an overall strategy.