Freak Systems

Yearly Archive: 2015

Computer Programming Languages Today

Obviously, no one who works in computer programming wants to believe that computer programming the way we know it today may not even exist in twenty years time. We’ve all seen professions come and go as new forms of technology come in and make the professions obsolete, but we never want it to happen to us. We probably know deep down that people four hundred years from now may not even know anything about computer programming, or else they will think that computer programming is the sort of strange historical relic that we think about when we think about the Gutenberg printing press.

Still, we should all try to predict what exactly is going to happen to computer programming, because this really isn’t just some idle speculation that will affect the future people that none of us are ever going to hope to meet. More and more schools are teaching computer programming. Some people have said that literacy in programming languages may one day become as important as literacy itself. Some parents are becoming stressed out about the prospect of their children being unable to program computers, and they are spending money on making sure they get their computer programming lessons at the right stage of their development. It’s important to make sure that these kids are actually getting an education that is going to help them in the future, and parents and schools aren’t just wasting their time and money.

For one thing, there is a clear reason why we would want to phase out computer programming languages in the first place: most computer programming languages are just woefully inefficient. I talk all the time about the frustrations of being a software engineer. Part of these frustrations come from the fact that all of us are using a method that’s fairly dated, except we’re working on pretty advanced machines. Computer programming the way we know it today began with IBM business machines.

Computers were really simple back then, and they were being ‘told’ to execute the sort of very simple commands that are easy to program. Little did the people of IBM know that they were creating a paradigm that people would be using more than half a century later in order to program the sorts of machines that the military would use, whether they liked it or not.

What is Being a Computer Programmer Like?

Computer Programmer Like

For a lot of people on the outside, being a computer programmer must seem very mysterious. They will hear all about the stereotypes about computer programmers, most of which seem to contradict one another. Lots of people really don’t know how their computers work, even if they have some vague idea of what is in them. More and more people are computer literate today, but that only means they know how to operate them. The inner workings of computers seem to become more and more mysterious as they become more and more advanced. It seems that no matter how long computer programmers have been programming, programmers are just mysterious as the programs that they program.

In a way, I suspect that computer programmers and software engineers actually like it that way. For one thing, if people really knew all about what they were doing at work, they might be a little suspicious when it came to evaluating their salaries. I can tell you that as a programmer, procrastination is a huge part of my job, and I’m really not supposed to be getting paid for it.

I do write original codes at work, but that isn’t the entirety of what I do or what my colleagues do on a regular basis. The people fresh out of college will usually imagine that they’re going to be doing this sort of thing at work all the time. This is partly a function of the fact that this is what they did in college when they were still learning how to code. They’ll think that whatever they did for their final projects is going to represent what they’re going to do at work time and time again.

Sadly, that’s probably not even going to be fifty percent of what they’ll do on the job. Obviously, it depends upon where you work. If you’re doing a startup, then you probably are going to be coding more or less nonstop in the beginning. If you’re working with the sort of big tech company that is going to give you more stability, than you’re not going to be writing as many original computer codes. In fact, I spend more time fixing other people’s codes than I do writing any new ones of my own. Maybe this isn’t the most efficient system in the world, but it is the one that a lot of software companies use.

I will also test software frequently in order to detect any potential problems with it. Usually, there aren’t any problems with it, but that isn’t going to stop me from testing it over and over again. A lot of my colleagues are going to be doing the exact same thing. Often times, a lot of the software research that we do in these situations is also going to be a matter of us failing to truly change software even as we’re giving the impression that we are.

I don’t want to give the impression that software engineers don’t contribute to their fields, or that all of the work that you’ll do as a software engineer is going to be redundant. However, aspiring software engineers need to know that our work is drudge work like any other. They should also know that many of us really do expend our vast brainpower on finding ways to avoid work. If people don’t accept that, then they’ll never fit in with the culture of the average software company.

Crap Chores

Science is king. It is in command. It is behind everything we value in modern life and we couldn’t live without it. We are slaves to it, perhaps, but it is our friend. And it keeps getting better. New inventions, new technology, new ways to run your life efficiently. Novel modes of work and play. It is a godsend. Who wants to live only by their wits and imagination? Now it is all done for you. You sit back and react.

Well, almost everything is done for you. Take housework–that dreaded weekly chore. It is still as antiquated as churning butter or beating rugs outdoors. It is still one person wielding a vacuum and a dust mop. It is still making the rounds of the furniture with Pledge and scrubbing the kitchen sink. Whether it is you or someone else, it is a singular, uninviting job. You put it off indefinitely.

Where is that robot maid of the future we saw glimpses of a decade ago in those magazine ads? We are settling for a small bot that does a bit of pickup on the floor. Big deal. It still crashes into the furniture. Where is the mechanical person who can put dishes in the machine, load the laundry, wax the linoleum, and make the beds? I would pay a pretty penny for it. Wouldn’t you?

Close your eyes and contemplate this marvelous vision. A full-size robot maid is taken out of the kitchen closet where she has been carefully stored. Not just some robot vacuum cleaner that you turn on, or schedule to run around your home and bump into things, but a full sized robot. The kitchen closet is her resting space. You check the batteries and they are loaded and ready to provide the required juice for the day. No cords to trip over. She is light weight and rather attractive as robots go. You turn on the starter switch and watch her come to life. Her eyes glow. Hi, John, she croons. And she’s off.

Fast as lightening she tackles the dirt and dust of your home. She knows just where to go. She tidies up and puts things in their proper programmed place. She knows the ropes because you have told her every detail! She can operate a can opener or a vacuum, it doesn’t matter. The stove is her forte. You have called all the shots before. There is no limit to her gifts if you have done your part. Programming for this model is a real breeze as it included voice commands. Wow! Science at its most practical. I love it. What will they think of next—a robot gardener, a robot pool man? Maybe a robot baby sitter!

The floors sparkle and the bot maid is off to the laundry room. She knows just the right amount of powdered soap. She folds clothes like a whiz. Perfection. Everything is pristine. When she is in the shop, you pine for her perfection. But she is healthy most of the time with regular maintenance. Cleaning is her strength and you praise her work. Thanks, John, she coos sweetly. You smile.

Why I Love the Silicon Valley Television Series


Silicon Valley Television Series

Mike Judge seems to know more about computer program than almost anyone in Hollywood put together. They imagine that the job of a software engineer is this glamorous job in which people are writing these cool new programs all the time. Basically, they imagine life as a software engineer in the manner of someone who just graduated from college in that field.

Back in the now-historic 1980s, Mike Judge was a Silicon Valley engineer. He has been able to use that experience to create some truly excellent programming. Naturally, his experiences also undoubtedly helped inspire the cult favorite Office Space. I loved this movie back in 1999, and I still love it. So it was really exciting to see even more output from Mike Judge on the subject of computer programming.

I’m not the only programmer who absolutely loves this show. It’s gotten plenty of other positive ratings from other programmers, who probably recognized some of the characters as if they were their own coworkers. Hopefully, they couldn’t personally relate to most of them. It’s always off-putting when I meet fellow geeks who say that they can completely identify with, say, Sheldon from the Big Bang Theory, which is not a show that I particularly like.

Obviously, the main draw of a show like Silicon Valley is going to be the comedy aspect, and the show is a huge success on that score. Mike Judge somehow has always managed to make his jokes extremely broad and yet extremely insightful. He’s good at mocking antisocial people without making his humor itself seem too antisocial or mean-spirited, and that’s a really difficult balance to strike. Mike Judge managed to hit that note with Beavis and Butthead as well as King of the Hill, and now he manages to do it again, while aiming at a very different target.

He was mocking broad aspects of culture with Beavis and Butthead and King of the Hill, which targeted Generation X in general and Texas culture, respectively. Now, he’s targeted one of the subcultures that we all know and some of us love, and it’s a subculture that has a lot of privilege. I’d say that Mike Judge in general is very good at making sure that he directs his acerbic wit at the appropriate targets.

He aims for the privileged folks in society for the most part, and there are few people more privileged in today’s society than the people who have found success in Silicon Valley. According to some definitions, some of these people might actually be more powerful than many government officials, since they have the money to help determine the direction that elections can take. People with that kind of privilege really should be targeted.

The actors manage to be convincing as members of this group, which surprised me. Hollywood actors usually give themselves away as Hollywood actors in many different ways, but I believed these guys. The characters didn’t feel like carbon copies of one another, which represents good writing and good storytelling. It also helped ground the situation, making the whole thing a lot more believable.

Some people watch television for the sake of escapism only, which I can understand. I like escapist entertainment myself. It’s fun to imagine yourself saving the world from a demon apocalypse after you get home after a day of coding or pretending to code. However, sometimes I would also like to see my own experiences reflected on television, and Silicon Valley comes closer than most other programs have in the past.

Naturally, like most programmers, I haven’t gotten anywhere near as far as these people have, so it’s also fun to see them knocked down to size a little. The world of computer programming is pyramid-shaped. I’m somewhere in the middle of the pyramid, and these Silicon Valley guys have reached the very apex. Those of us who are always staring up at the apex are going to appreciate it getting shaved down more than anyone else.

Computer Programming Languages Tomorrow

Computer Programming Languages Tomorrow

However, it is possible that in the near future, there will actually be a solution to this problem that actually involves software itself. One of the biggest innovations of our time was free blogging software online. The rise of the modern Internet coincided with the rise of free blogging software, which allowed people with very little coding experience to create blogs of their own. People will remember that back in the 1990s, only people with the right technical backgrounds could really have websites and blogs, and they were indeed the only people with websites and blogs.

The websites from that era appear to be laughably primitive by today’s standards, even though the people who created them probably know a whole lot more about programming than many bloggers today, for better or for worse. It’s possible that similar things are going to happen with today’s programming languages. As a programmer, I can already tell you that a lot of programming languages are hopelessly flawed, and it feels like half my job is just fixing them. Hopefully, there will come a point at which I won’t have to anymore.

Much like free blogging software, there could eventually be software that more or less ‘communicates’ with a computer for the end user, so they will only need to input simple commands in order to create the program that they want. This software will almost serve as a comparatively advanced interface. Programming languages are ultimately just a means by which we instruct a computer what to do, and this new future software may help us translate our commands much more efficiently and effectively.

Translation software in general is probably going to be a thing, which might make learning to speak foreign languages for oneself somewhat redundant. People will probably still do it as a hobby, and I could imagine that people would still learn programming languages as a hobby even during this future. However, the software engineering profession would change dramatically in a future like this.

Office Space and the Reality of Computer Programming


One of the most famous movies about software engineers is Office Space. It may have bombed when it first came out, but it become the kind of cult hit that manages to last for decades. I think some of the Office Space workers may be among the most realistic software engineers that I’ve ever seen. A lot of times, when you see someone who knows a lot about computers in a Hollywood movie, they’re ace hackers who can do things that no real hacker could ever hope to accomplish in the amount of time that it takes to watch a movie.

The protagonist of Office Space says that in a given week, he probably only does fifteen minutes of actual work, and he seems to imply that he might be rounding up when he says that. I think half of the programmers that I’ve ever worked with would say that exact same thing if they were being honest, which they probably wouldn’t be in the interest of protecting their jobs and their credibility.

The protagonist of Office Space assures other characters onscreen and the audience that he isn’t lazy, and I believe him. What he’s going through is by no means a function of laziness. A lot of the work that software engineers and computer programmers do is just really boring. Work isn’t supposed to be fun, and almost everyone you meet will tell you that. However, it really doesn’t have to be as deadly dull as the kind of work that software engineers have to do on a daily basis.

The fact that the protagonist seems to have gotten away with such extreme procrastination for years also doesn’t surprise me in the least. Most likely, he was surrounded by a bunch of people doing the exact same thing at the same company.

This might be lost on some modern viewers, but I also loved the fact that the movie made the preparation for the 2000 switch seem completely mundane, which it was. There was a lot of paranoia about Y2K going on in 1999. To programmers, the 2000 switch was just another annoying set of tasks, although it was fun to think of ourselves as the people who were preventing the apocalypse. We knew we weren’t, but it helped keep us going.

One of the things that stands out to me about the culture of Initech in the first place is the obsession with documentation. We spend more time watching the bosses obsess about that than we do watching anyone do coding in Office Space. Indeed, older companies like Initech spend more time on documentation than almost anything else. It isn’t real work, but it feels like it, and that’s usually enough for everyone involved.

The protagonist plays Tetris at work at one point to signify just how much he has abandoned his duties at work. The thing is, I bet he was playing Tetris anyway at work, just like most of us. The temptation is too difficult to resist when you’re working on a computer all day long. Really, the only change was this time he was being completely honest about it.