DM of the Rings XI:
Failure to Communicate

By Shamus Posted Friday Sep 29, 2006

Filed under: DM of the Rings 31 comments

Lord of the Rings, Player Apathy, Rivendell, Council of Elrond, Boromir, Aragorn, Talk talk talk, Backstory, History

The DM will do a lot of talking, but if he’s not rolling the dice then what he’s saying is probably not important.

 


 

Experience != Knowledge

By Shamus Posted Friday Sep 29, 2006

Filed under: Personal 23 comments

Steven was talking about computer-science education and computer sorting systems yesterday. This subject made my brain tingle for a number of reasons, not the least of which is that he likened the game of solitaire to a sort algorithm with very specific restrictions. I must resist the urge to turn my blog into a morass of code theory and C++ snippets that would interest only me, but this is a very interesting idea

On the subject of Computer Science education, he says:

The first volume of that series was a textbook for one of my classes; I think it was my “Data Structures” course. (Which was the single most useful CS course I took in my entire college experience, since it taught me about linked lists, stacks, queues, and also, it turns out, about recursive descent parsers. All of which I’ve used heavily ever since.)

I’ve mentioned before that I program for a living, but I have no formal education. Steven mentions “linked lists”, which is a programming technique for dealing with lists of things where you don’t know ahead of time how many things you’ll be dealing with. You may need three, or three thousand. Linked lists are easy to implement, although they have several drawbacks I won’t list here because of the damage your face would sustain when it hit the keyboard at the onset of deep-REM sleep.

Since I was not formally educated, I was never taught linked lists. I was a programmer for several years before I even saw one. When I did, I told my boss (who had written the bit of code I was reading) that I thought it was pretty slick; I thought it was his idea. Then he explained linked lists to me, and I learned that they were a very common technique. Oops. Heh. I still have odd gaps like this in my knowledge.

For contrast, I have a cousin who took the other route. He was educated at CMU. He stayed with our family for a time after graduation, and we talked programming quite a bit. It was obvious that he was the better coder by far. I was still cutting my teeth on vanilla C, and he had several languages under his belt. He was faster at coding, better at debugging, better at understanding the limits of the hardware he was working with, and better at designing software in his head. I started to get pretty scared – if this is what all programmers were like coming out of college, then the chances of me landing a job were pretty slim.

(This was both true and false. All programmers were not like my cousin, who was naturally talented and had a passion for coding, and who went to a fairly impressive college. However, is was true that my chances of getting a job were slim. Not because of the knowledge deficit on my part, but because people want to hire coders with degrees. I assumed employers knew how to tell a good coder from a bad one. They don’t. But they can tell someone who has a degree from someone who doesn’t. Even when comparing two candidates with degrees, they can usually tell who has the most expensive education.)

At one point we were talking about sorting techniques. Suddenly my cousin blurted out that bubble sort was a stupid sorting system and there was no justification for using it, ever. I wasn’t holding a CS degree, but I was smart enough to identify dogma when I saw it. I pressed him on this point, which he believed with great conviction but little evidence.

“Bubble sort” is a technique of sorting stuff – any kind of data in the computer – that is easy to understand, but quite slow in implementation. It’s a sort of brute-force approach. I’ve heard it said that it is the slowest, although I’ve never sat down and tried to prove that for myself.

Anyway, my cousin was obviously just repeating some nonsense that an instructor had pounded into his head. “Bubble sort was the slowest, therefore it was the worst and should never be used.” I pointed out the Tetris clone I was working on (which floated around on various BBS systems for a number of years) and that bubble sort was a perfectly acceptable way of dealing with the high score list. He countered, saying that it was very slow, and I could speed up performance of the sorting algorithm many, many times by simply using a less stone-age method of sorting. I pointed out that I was sorting a list of 10 names. Even on the decrepit 8mhz machine I was using, the sort was instant. If I made it a list of the top 100 names, I’m sure it would still have been instant. If I made the sort ten times faster, the user would not be able to tell the difference. There was simply no justification for optimizing the thing.

This was a heartening moment for me. It showed me that while formal education was valuable, it could never take the place of experience. A seasoned programmer would not go around spouting absolutes like this. They would know better. Idealogical purity is one of the first things out of the window when trying to accomplish something instead of learning to accomplish something.

Classroom assignments almost never capture the chaos and uncertainty of the real world. If it did, students would go crazy. Imagine an instructor that gave a lengthy coding assignment, and then every day for the next week he would change some of the goals of the assignment. Once he saw a working prototype, he would inform them that while they gave him what he asked for, it still wasn’t what he really wanted, and he would change the requirements again. Let’s also assume that even though the students had to start over many times, the instructor never altered the original due date. This is the world of professional coding, and no professor could teach it without getting lynched.

It’s a shame that higher education works the way it does. Colleges are great at taking an established body of knowledge and distilling it into courses and curriculum. This works well as long as the body of knowledge isn’t changing too fast. CS changes at a shocking pace, and it’s hard for educators to keep up. Heck, it’s hard for those of us working in the field to keep up. How much harder is it for teachers who are trying to teach what they know, instead of fighting to learn new things! College is a very expensive way to gain knowledge, although there are clearly gems of learning in there that are difficult to learn by other means. The most difficult part of filling in the gaps in my self-taught knowledge is that I don’t know where the gaps are.

 


 

The Motivator

By Shamus Posted Thursday Sep 28, 2006

Filed under: Nerd Culture 22 comments

Via Ministry of Minor Perfidy I find a link to this thing, which lets you make your own faux-motivational posters. This is a lot like making comics, so I thought it might be fun to try. Somehow it all went wrong on me…

Demotivator, Fanservice, Girls in Swimsuits, Beach

Demotivator, Collectables collection, %Anime figures

Demotivator, Fanservice, Anime Collectables collection Otaku

These were coming accross as condescending and mean-spirited so I had to quit. Maybe I’ll try again when I’m in a different mood. I’m not sure what my problem is today.

 


 

A predictable mistake

By Shamus Posted Thursday Sep 28, 2006

Filed under: Personal 6 comments

I like to have a few cookies with my coffee in the morning. Not a lot – just a small handfull. Now, we don’t usually have enough bowls in the house to last the day, but we have plenty of mugs. So, instead of using a bowl, I grab a coffee mug to hold my cookies. I sit down in my home office with two mugs – one full of coffee and one with a few cookies in it. Anyone with any degree of common sense will note that this is a terrible idea.

I’ve reached into the wrong mug on more than one occasion, dipping my fingers into the bottom of a long-cold cup of coffee. Other times I would lift the cup to drink and get hit in the lip with a cookie. These were my warnings, which I did not heed.

It was only a matter of time before I stuck my hand into hot coffee, thus burning my fingers, causing a mess, and making myself look like an idiot. Thankfully, nobody was around when I pullled this stunt, but my face turned red anyway.

There are some things which are embarrasing even when nobody is looking.

 


 

Harshing Our Mellow

By Shamus Posted Wednesday Sep 27, 2006

Filed under: Game Design 9 comments

Jay Barnson on anti-videogame legislation:

Note to baby-boomers: You guys had Woodstock — we have Mario. Get over it. It’s a different world now.

What he said.

I’ll take Lara Croft over Janice Joplin any day. (And I don’t even LIKE Tomb Raider.)

 


 

DM of the Rings X:
Our Growing Family

By Shamus Posted Wednesday Sep 27, 2006

Filed under: DM of the Rings 41 comments

Lord of the Rings, Elrond, Rolepalyers, Legolas, Boromir

Even more reviled than a typical roleplayer is a roleplayer who insists on roleplaying. When the dorks need to feel superior, this is the guy they denounce as a dork. Honestly. The only person worse than him is the DM himself.

 


 

L.A. Noire

By Shamus Posted Wednesday Sep 27, 2006

Filed under: Links 4 comments

Lileks today:

I wish I had time to play more games, because there are a few I'd like to see. This one appears to be a GTA-style world set in 1949 LA; you're a weary shamus, of course. (The other options were the hard-bitten romantic shamus, as with Marlowe, or the flippant oh-dear-a-gun-again-how-droll shamus as with Richard Diamond, a radio character played by Dick Powell.

My question is: Is the main character actually named Shamus? Because then I would totally buy a Playstation 3 so I could get this game.

My other question is: Since when do we put an “e” on the end of Noir?