You know, I think I might hate technology
Something has been brewing recently. Some kind of change in my consciousness, and I think I finally know what it is. I hate technology, or more, I hate what it has become, and for one overarching reason. Everything is too damn complicated.
I’ve been working with computers since I could reach the keyboard. I’ve modified games, done 3D modeling, programmed websites, hacked servers, got my A+ at 16, MCSA at age 18. I worked as programmer when others had jobs flipping burgers in high school. I’m number one on the cloudspokes leaderboards, am sought after for technology consulting and have even owned my own technical support company. Point being, I’m not an idiot (at least when it comes to computers). Just trying to build some cred here for when you inevitably want to call me dumb in about a minute.
So, as I was saying recently I’ve felt a little frustrated, like I’m just not getting things. oAuth, Federation, apps, heroku, half the vendors at dreamforce,a dozen different prominent languages, the list goes on and on, and the same nagging question always hanging in the back of my mind: Why? Why does it seem like half of the things I hear about are answers to questions nobody asked. Solutions to problems that shouldn’t even be problems. Why are there so many steps to everything, many of which are obtuse and complicated enough to make me want to give up. Here for example, lets check out a recent coding contest I’m looking into.
Basic premise being, watch a users google calendar, and if there is a meeting on it, set their status to busy. Now this, in the ‘old’ world would be an easy proposition. Write a small tray application that lives on the users system, polls their calendar every 5 minutes or so (using some API), and then update their status (using some other API). This is something you could probably bang out in an hour or so (not counting reading a few API docs). Now lets compare to the ‘new better cloud based’ style of development.
1) Download Python
2) Install google app engine launcher
3) Register for a google apps business account
4) validate your account using a phone number
5) Create your application in google
6) Attempt to write actual application
7) Include oAuth
8) Include single sign on so app can be in marketplace
9) Create domain name
10) Deploy app to domain name
11) Pray you don’t violate some quota or rack up a huge bill
*Steps 3 and 4 done using intensely cumbersome interface that took me an hour or two to actually accomplish anything with.
Notice anything odd here? Thats right, only one step of 11 here is actually you know… writing an application. It’s also arguably one of the easiest. The rest ranges from tedious to herculean. I understand the benefits of cloud development, I really do but there has to be a better way. Seriously, the above process is bad enough where I am likely going to abandon the cause not because the coding is too technically difficult but because all the crap around trying to make the application deployable.
It’s not just google either (though they do seem to be one of the worst offenders). There is too much technology out there that just exists because, it was a cool idea. Us nerds love to develop stuff, it’s what we do, but many of them seem to be intent on creating as many problems as they solve or replacing one complex process with another. The tools aren’t making life easier, they are just making it more abstract. It’s to the point that half the time I don’t even understand what it is I am technically doing when a follow a guide, I’m just following the steps and praying that it works. This can all be summarized really in one statement.
“It used to be when I heard about a new technology or service I was excited. Now, I am just depressed.”
Do you know why? Because it means that it’s another temporary solution to a minor problem that I am going to expected to learn or be considered outdated. It means that my life likely just got one layer more complicated as I try to grasp what it is this new technology even does and then struggle to try and implement it because it’s the newest fad. I’m 23 and I’m completely exhausted. Technology used to be fun, now it’s a chore.
1) Find a cloud provider
2) Learn whatever language it is they support (it’s always some language I don’t know too, which sucks for me)
3) Learn about their quotas and rates, what calls are and are not allowed.
4) Develop the website once for regular browsers.
5) Develop the website again for mobile
– Figure out how to access mobile device features
– Make sure it works on every size screen imaginable
6) integrate with every fucking site on the planet (if you are linked to twitter and facebook and flikr and every other tool on the planet you might as well kill yourself now because it’s completely worthless)
7) oAuth, can’t have enough oAuth. oAuth all the things!
8) Make an app for your website, make a tile, put it in the app store, put it in the market put it everywhere.
It’s just too much. I can’t keep up. By the time I get all that stuff working, those fads will be long gone and it will be the next thing. Seriously the amount of stuff you seem to have to know and keep track of to be a developer worth anything borders on insanity. I mean I work with this stuff 8 hours a day, and generally read about it at home, and am fairly immersed in it, and I just can’t keep up. You are made to feel dumb if you don’t know everything about everything but it’s just so overwhelming. What is the most aggravating is most of this shit doesn’t even really add any real value. Most of those extra steps don’t give any extra features to your application, or make the user experience better. It’s all just for cost and reliability which as a developer I hardly give a shit about. It feels like I’m taking on finances job of cutting costs and the sys admins job of developing reliable systems on top of my regular job of writing software. Sure those guys are happy now, but I got the butt end of the stick.
I’m tired of feeling behind. I’m tired of feeling like everyone else ‘gets it’ and I don’t. I’m tired of fad technology. I’m tired of simplicity being a cuss word. I’m tired of having to feel like all my software is just glue holding things together.
I could go on and on about useless gadgets, phone systems, firewalls, VPNs, etc but really… I just want to go outside.