Concurrent Versions System

By Shamus Posted Wednesday Jan 21, 2009

Filed under: Projects 85 comments

I apologize if this seems esoteric, but I have this problem and I know I can’t be the only one. I’m also curious about the tools used by other programmers out there.

CVS is a system used by people who write things like software or website source code. The Old Ways, before CSV, called for you just keeping a big heap of files on your computer, changing them as needed. Hopefully you keep backups. If you and another person both need to work on those files, then you send them a copy and the two of you have to be careful not to overwrite each other’s changes. Making a change to file F can cause problems in file Z, and so keeping track of who is working on what becomes a major part of your work.

And if there are ten of you? And you’re working one a vast collection of hundreds or even thousands of files? And everyone is constantly making many small changes to many files? Well… sending your changes to the other involved parties is no longer a solution to the problem. (This is one of the reasons that it’s so tough to scale a software project upwards. Doubling the number of coders on a project will more than double the complexity of managing all of those people. This is true of lots of kinds of work, but I’ve found it to be particularly true when dealing with source code.)

CVS helps with this. All of those files reside on a server somewhere. You can “check out” a particular file like checking a book out of the library. You make your changes. Then you submit all of your changes back to the codebase. Anytime you like, you can synch to the codebase and get all of the changes everyone else has made. The software keeps a record of all of the changes made by everyone. So if I run the latest version of the software and find out that someone removed the ability to invert the mouse y-axis in first-person view, I can look in the revision history and see every change made to that file. I can determine that Bob took that feature out, and I can then hire a group of goons to beat him to death send him a polite email letting him know about his mistake.

CVS lets you see all the code, anywhere you have access, at any point in history. No matter where you go, all you need is your CVS login and you can get the source code and you’re ready to rock*. You can go back to the source code everyone was using on May 23, 2006 at three in the afternoon, if you really need to.

* And by “rock”, I mean, “Sit hunched over a laptop in the airport with your cellphone clamped between your ear and shoulder, trying to figure out who in the hell messed up the order processing code two days before the Christmas holiday. What is wrong with these idiots? No, wait… I see. Looks like it’s actually a problem with credit card processing. No… It’s a problem with a change made to the authentication system. Made by me. Yesterday afternoon. Look, I’ll call you back.

Anyway, at my day job we have a system of source control, but I can’t very well use that for my various hobby projects. I decided I wanted to use CVS for my projects, not just for the version control, but also because it also makes a nice off-site backup. I was sort of astounded when there didn’t seem to be a solution for people in my position. There are commercial services aimed at large companies that want preposterous sums of money.

Given their Swiss-army-knife approach to features, this seems like an ideal job for web hosts. But only a fraction of them offer CVS, and those that do offer it via an arcane system where you telnet in and interact with (I assume) a Linux shell. Making a robust system and then building the interface around typing stuff into a console is like making a Wii that saves your game to a stack of punchcards.

We’re talking about a couple hundred kilobytes of data, tops. Given the number of people doing WordPress themes, websites, and PHP code in their spare time, I can’t believe there isn’t a solution aimed at the general public.

Maybe I’m missing something. If you write code on your own time, what do you use to keep track of it?

 


 

Stolen Pixels #57: Life is Short, Terrain Hard

By Shamus Posted Tuesday Jan 20, 2009

Filed under: Column 25 comments

The scourging of Mass Effect continues apace. If I were to catalog all of my irritations with the game, this would be a thirty-part series. Of course, that’s pretty much true of every game. I like to think of my ability to find fault in the hard work of others as some sort of gift.

Open thread today. As always, I hope people will take the leap and join The Escapist community and comment on my comic over there, but I’d rather have an open comment thread here than miss out on what you have to say entirely. If you have a comment on this or a previous comic but don’t want to endure the rites of registration, then now is your chance.

 


 

Unskippable: Dirge of Cerberus

By Shamus Posted Tuesday Jan 20, 2009

Filed under: Movies 25 comments

Okay, I’m not going to link to these guys each and every time they put one up, but this one got some laughs out of me:

This is the last time I’ll just repost Unskippable. Unless there is another one where I just can’t resist. Or if I forget I made that promise. Or I can’t think of anything else to post. Or if I just feel like it.

 


 

Ban This Game

By Shamus Posted Monday Jan 19, 2009

Filed under: Video Games 162 comments

Let us gently open this topic for discussion, and see if we can keep it from blowing up into a flamewar.

I’ve always been in favor of lots of freedom when it comes to producing media: TV, Movies, Computer games, Music, etc. As long as people can choose not to experience it, and as long as you didn’t hurt anyone in the process, you can be as offensive as you like as the worst I’ll do is complain about it because the controls sucked and the save points were too far apart. (Or whatever.) I realize this sounds like the beginnings of a political rant, which says more about the sad state of politics than anything else. So to head that off – let’s just keep this in the realm of personal opinion and no use this discussion as a launching point for or against a political group.

Sometimes I’ll articulate this and someone will throw me a “me too!” for my troubles. Now, as much as I like having people agree with me, I’m always curious if this person really agrees with me, or if they just don’t like the idea of censorship.

In which case it’s time for a blend of the hypothetical and rhetorical:

Continue reading ⟩⟩ “Ban This Game”

 


 

Fallout 3:
Reviewer’s Lament

By Shamus Posted Monday Jan 19, 2009

Filed under: Game Reviews 41 comments

Interesting to see that I am not the only person who felt a deep ambivalence towards Fallout 3. I expressed this internal conflict during my review series, and now I’m noticing that others are also confused as to what to say about the game from a review standpoint. Scott Jones at Crispy Gamer gave the game good marks, but is now flip-flopping on the issue.

But is this such a crime? A game entertains you for forty hours. Then you walk away, and with a halfhearted shrug you lament that, “It could have been better.” A couple of days later, irritations and inconsistencies percolate to the surface, discoloring your memories of the game with the dirty hue of plot holes, glitches, and lame dialog. What now? Did this tainted aftertaste somehow undo those forty hours? Do you recant your earlier praise, and declare the thing to be the work of sophomoric hacks, or do you cleave to your original assessment?

What if, despite the flaws, you find yourself wanting to play again in six months? How many times are you allowed to alter your official position on a game?

(Scott Jones also makes a big deal about how he thought he was the only one who didn’t like the game. If you’re one of those who found that the game has left you cold and you’re looking for like-minded people, then allow me to direct you to No Mutants Allowed. They hated the game before you did, and with more fervor.)

This game is the reviewer’s bane. For people who are supposed to distill an experience down to a single, definitive opinion – perhaps even with a precise numeric value to accompany it – the game poses an impossible challenge. I can’t even decide how much I enjoy the game, much less make any sort of meaningful guesses about how the complete strangers of the world will respond to it.

 


 

How Star Wars Should Have Ended

By Shamus Posted Saturday Jan 17, 2009

Filed under: Movies 34 comments

Yes, this has made the rounds and then some. How It Should Have Ended is a fairly famous series, although somehow this one slipped by me until recently.


Link (YouTube)

Amazingly, this really does seem to be how it should have ended, yet it never occurred to me.

 


 

Stolen Pixels #56: It’s a Long Way to the Top

By Shamus Posted Friday Jan 16, 2009

Filed under: Column 0 comments

Please pause for several minutes between panels four and five.