The Techno-Sapien Problem: Beyond Physical

Lights of ideas

When I read, 'As Technology Gets Better, Society Will Get Worse', I was struck by a few things - affirmations of some of my own thoughts by empirical evidence.  It transcends the physical.

The Physical

The physical impact of technology on society is pretty intuitive when you think about it. We humans have a capacity to get other things to do work for us. Some say it's the opposable thumb that gave us the ability, and this might be true - but the opposable thumb is almost never used on a keyboard in my experience. For touchpads and other devices, the thumb is for gripping. That's it. If we had suction cups on our appendages, I don't imagine we'd have done much worse. And to make matters worse, Facebook has made the act of 'thumbs up' completely electronic.

But it hasn't all been bad. I'd watched "An Idiot Abroad" recently - fun and interesting - but I was struck by the insights about how technology is used when the Arthur Dentish Karl Pilkington finds himself face to face with video messaging in a KFC run by the deaf (I think it was Brazil). They were signing in video chat - something I've not seen before - and I was astounded. I'd never thought of that, likely because I'm not hearing-impaired, but to see it being done in Brazil at a KFC just struck me as exceedingly cool. So we do some really great stuff with technology, crossing great distances even with accessibility issues most of us wouldn't acknowledge.

But what does this mean for society as a whole? Granted, I'm sure that there was great debate when the wheel was first invented - there must have been an angry bunch of cave-folk who were against the move, saying it made their children lazy. Or maybe it started with the stick? The evolution of our human species has always been about adapting tools - though we as individuals know so little about that and reflect very little on it. If you're interested, read Human Instinct, by Robert Winston.

The Non-Physical

I suppose what we really should be concerned about is not so much how technology affects what being human is but rather who has been given the responsibility to drive technology - and whether it's the right thing.

When we do look at technology use, we have a social responsibility that is rarely acknowledged.

That social responsibility transcends the obvious and while there is a society out there for things that make their lives better, they invariably don't live up to their promises. In the 1980s, there was great talk of the paperless office - but our love of bureaucracy has lead us down a path where we seem to use more. The Internet had been heralded as a way for information to be shared, which it does to an extent - but not to the extent that people would like, and there are moves to further limit that. The masses quietly accept the insults to their own society, though Network Neutrality and Anti-SOPA related protests have become more visible.

There are economic chains that bind some knowledge still, all while 'free' services such as Facebook and Google gather personal information on people that they sell and/or use to market stuff specifically at people. There are new technocultural caste systems being created that future academics will have names for.

Meanwhile, the NSA gathers more information from people than they would acknowledge in the name of protecting people - powered by fear of Bad Things Happening, even though Bad Things Continue To Happen while data outside of an individual's control can quietly hinder the individual.

It would be good if we spent some time thinking and discussing that more instead of sitting in chairs discussing why we're less physically fit.

You're encouraged to participate in TheDayWeFightBack on February 11th, 2014.

Image at top left courtesy Saad Faruque (click image for orginal), who was kind enough to make it available under this Creative Commons License.

Enhanced by Zemanta

When Headhunter Emails Become Spam

Spam... With GarlicI'm writing this as a blog entry I'll be sending spam email headhunters to. Feel free to send them the link if you have the same problem I've been having.

When you're looking for work, you're happy to meet new headhunters - and headhunters, by and large, are happy to meet you.

Statistically speaking, a headhunter for an unemployed geek is a greater opportunity than an unemployed geek is to a headhunter. Unemployed geeks are happier to connect with headhunters than vice versa, but the effect is the same. 

I'd speculate that the level of happiness between unemployed geeks and headhunters connecting is inversely proportional.

Headhunters are out there beating the bushes to find people that meet specific criteria - sometimes even good criteria that was spat out of a hiring/contracting company - and they even used to be thoughtful about it. I imagine that some still are - but they're not the people who are cluttering my email with offers for positions in every State but the one I'm in.

Subtle responses such as, "Hey, is that a telecommuting position?" do not cut threw their blinders. I've tried.

The hard part about it is that someone looking for work doesn't want to irk someone who can potentially find them work.

So we put up with it, day after day, meaningless emails that are quite simply spam. 

I even get the same emails from different people working at the same staffing company. Where did all these staffing companies come from? They're not unemployed geeks - it shows.

Maybe unemployed geeks should start their own headhunting service. I contemplated it a few times.

The harsh reality is that, even as people claim the economy is rebounding, the job market is not what it used to be - it's full of it's own kind of spam, and hiring companies create their own problems in that regard. Nowadays, I've seen 3 year contracts with no health benefits - and in the grand scheme of things, a contract for 3 years might as well be full time employment. The companies are shooting fish in a barrel and they know it.

So they go to the staffing firms, and the staffing firms work on the same statistical probability that has kept spam in business: Blunt force, we'll get lucky if we send lots and lots of emails. Someone will respond.

It's time for staffing firms to stop doing that. The good staffing firms, such as Robert Half - no emails like this. None. Every now and then, "Hey man - how are you doing? Got work? Got this thing here...."

That's how you do it. Not sending email from a database. It requires actual thought to be a good headhunter. 

(Headhunters, if you read this, please pass this to your supervisor, your CEO, and every person in your address book.... oh. And take me out of that antiquated database. Thanks).

Enhanced by Zemanta


Simplicity is prerequisite for reliability.

Edsger W. Dijkstra, How do we tell truths that might hurt? (1975)


In over 2 decades of professionally working on systems of various sizes and over 4 decades of using and sometimes suffering them, one thing holds true: the more complexity you add, the more that can go wrong. I mean - just look at Microsoft Windows.

The picture to the left, as an example, is pretty impressive. Now imagine you just want a cup of coffee. Suddenly, that could probably be considered overengineering. It gets worse when you consider someone built it, someone maintains it, and it probably takes a lot of energy to run for a simple cup of coffee.

I'm pretty sure that the system on the left doesn't make coffee. If you just want a cup of coffee, there are much simpler ways of getting it.

When it comes to systems, it's very easy to get wrapped up in complexity - particularly in an era when new ways to do things fly past at an increasing rate. We who love technology love trying to apply new technology to old problems and we do so successfully - but not always efficiently.

In the context of software development, it's not a new topic - in fact, Max Kanat-Alexander wrote a great blog entry on overengineering back in 2008. And of course, Max wrote Code Simplicity: The Fundamentals of Software.

This also ties in to my post on Simplicity and Complexity: Managing Expectations.

Because You Can Doesn't Mean You Should

I've been a geek for quite a long time - so long ago that I used to write code on paper so I could enter it on a timeshared System 36. New and exciting technology is always... new... ad it's always... exciting. At least for geeks. We'll see some new language, programming library, piece of hardware or process and immediately want to solve the world's problems with them. If you're playing around at home, it's all well and good - I have quite a few different projects I revisit depending on what interests me at the time - but when it comes to building systems that people depend on, we have to be a bit more conservative in our approach.

Pragmatism is the ultimate judge. When judging a new technology and it's use in a project, it boils down to this:

  1. Will it work?
  2. Will it add needed features?
  3. Will the new features balance maintenance costs/efforts?
  4. Is there a simpler way to get the same result?

Will It Work?

Typically the answer to this question is a resounding 'yes', but that answer may not necessarily be true. The most dangerous part of any part of any project is where system requirements are shifted slightly to meet the need of we geeks who want to play with a new technology - and because it's shiny and new, it's easy to sell - not because it's what people want, but because an excited geek is a better salesperson.

A better salesperson does not mean a better product.

Will It Add Needed Features?

Of course it will!

Well, maybe not.

We often forget that more features can put a user off - and that really is the issue. As much as a system might meet requirements for doing something, if the users are overwhelmed with features it becomes problematic. 'Needed' is a very relative word and needs to be grounded. If it's seemless to the users, that's great - but is there a simpler approach that is more efficient and doesn't use that shiny new technology? If there is a simpler approach, maybe that's the way to go..

Will the new features balance maintenance costs/efforts?

This is where many engineers, developers and other folks get lost because we either don't play well with the bean-counters or don't care. To make matters worse, we have to be honest: adding new features that guarantee job maintenance is a great way to assure job security in a world that doesn't really put the words 'job' and 'security' together very often.

There's also the issue that new technologies, after the initial hype, might be abandoned or become problematic to support. We don't like to talk about those failures but they are a reality. We also don't talk about the fact that a popular technology isn't necessarily the best technology, and so on.

In the end, one has to really look toward the future and make serious calculated decisions.

Is there a simpler way to get the same result?

As Thoreau wrote, "Distrust any enterprise that requires new clothes". The same applies to technologies - there are often ways that are time tested that work just as well and don't require investment (financial or otherwise) in new technologies. While everyone wants to be on the good side of the cutting edge, very few understand that it's also the bleeding edge and that the bleeding edge is... bloody.

Not a Naysayer.

I'm all for new technologies, but I understand that technologies evolve and have been around long enough to see the evolutionary waste fall aside. I've also seen naysayers be wrong - for example, Dr. Dobbs journal had very damning articles about C++ when it first came out, and yet it's still around after 3 decades. I was a naysayer against Java, and it's still around (and constantly begging me to update it). Javascript has surprised me with how useful it has become - it was pretty useless when it started, but now we have stuff like AJAX.

The point is that when you're working on a project, you have to consider whether the risk of adapting a new technology is worth it - and for those easily blinded by shiny new technologies (SQUIRREL!), it's particularly problematic - I still fall into the trap myself on a personal level.

On a professional level, I've learned to avoid it with some severe pragmatism, some of it hard won.

Enhanced by Zemanta


Subscribe to RSS