The Luddites are not actually the power brokers

I just read this article that gives many examples of people who have given up carrying a cellular phone. It claims that by doing so, these people end up in a position of power because others are forced to work on their time.

Everyone has a cell phone now. There are more than 280 million mobile subscribers in America, according to the Federal Communications Commission. According to a 2005 international study by Advertising Age, 15 percent of Americans have interrupted sex to answer their phones. Even people who are videotaping themselves having sex, like Paris Hilton, stop to answer a call. The call of the wildGoogle, Verizon would exclude mobile Web from rulesT-Mobile looks to lag in offering 4G.

Not having a cell phone is a way of getting the world to run on your time. A lot of powerful people are already on to this. Warren Buffett doesn’t use one. Nor does Mikhail Prokhorov, the 45-year-old Russian billionaire who owns the New Jersey Nets. Tavis Smiley doesn’t own one, either.
- The Luddites may actually be power brokers

First of all, almost every example in this article is someone who is already a power broker. People need them more than they need other people. If they carry a phone, of course people are going to be calling them constantly. Even the small town dentist has a position of power over his patients. They aren’t going to switch dentists because he doesn’t have a cellular phone. The premise of the article gets the causation wrong. It’s not luddites that are power brokers, it’s power brokers that are luddites.

Even if you are a power broker, should you really get rid of your cellphone? It’s quite a stupid idea if you ask me. Sure, as head of a business you will be able to control when your customers may call you. But what about your family? If there’s an emergency, and you’re unable to be contacts because you are a luddite? That sure will make you think twice. The simple answer is that you should have a phone on you at all times, at least for emergency purposes. If you don’t want to get calls off the hook from customers and such, simply don’t give out the number. It’s that easy.

For those of us who are not already power brokers, refusing to carry a phone will only get people to work on your time as far as their politeness will stretch. It also only works so far as your friends and family are not very spontaneous. If there are things happening, and you are, or could be involved, you will get left out if you can not be contacted. You’ll be relying on the politeness of others to go out of their way to accommodate your phone refusal.

Personally, I have completely stopped accommodating this. My friends all have phones, but they often don’t answer promptly. Other times, they let the battery run out. If I’m about to go out to eat dinner, and I call someone with an invite, a non-answer is a no answer. If they complain later, it’s their fault for not dealing with their phone properly. If I’m waiting for someone, they’re late, and they don’t respond to calls or SMS, I’ll just leave. When they complain later, I can tell them I waited and called, and they didn’t pick up their phone.

There really is no excuse to not carrying a cellular phone if you can afford it. It should be charged, and within close proximity at all times. You don’t have to always pick it up, but at least look at the caller ID. You might say you would never pick it up during sex, but what if it’s your mom calling at 3AM? That’s almost certainly going to be an emergency situation. You will regret not answering. There’s always something more important.

There’s also the situation where people are depending on you. Take for example the superintendent of my building. Yes, I’m paying him indirectly, but he definitely has a position of power over me. If he didn’t carry a cellphone, and I needed him, I would have to work on his time. However, one time the lady who lives across from me locked herself out of her apartment, and it was almost time for her to take her pills, which were inside. My super does carry and answer his phone, but imagine if he didn’t. By being a luddite you become a great burden to the people around you. You need to already be in a powerful social position in order for people to be willing to accept your burden. The boss of the company can get away with it, but only because his assistant does not.

Carry a phone. Keep it on whenever possible (not theaters and such). Keep it charged. Only give the number to people who you want to be able to contact you at any time. You don’t need to answer every call, but check the ID to make sure you want to hang up before you actually hang up. If you follow these rules you can get the best of both worlds. You won’t have a beeping phone ruining your life with interruptions. You won’t be a burden to those people who really need you. And most of all, you won’t risk being out of touch at those critical moments you will regret missing.

Posted in Society, Technology | Leave a comment

How Fast Should We Play Games?

Lisa Foiles has written a piece for Kotaku suggesting that games should be played slowly. That gamers should experience most or all of what a game has to offer, and burning through a game as quickly as possible is somehow not as good.

It also took me three years to read the Lord of the Rings trilogy – not because I lack the mental competence to read quickly, but because I refused to miss any details and frequently paused to imagine myself in the middle of the action. Tolkien gave me a masterpiece. I wanted to make it last.

I do the same with many video games, spending weeks, even months playing through story and character-driven titles. Hey, I paid good money for these games and the developers spent a lot of time creating these worlds for my enjoyment. I want to get the full experience.

- How Fast Should We Play Games?

Obviously, this is a case of different strokes for different folks. If someone likes to play games slowly, then that’s their prerogative. However, I would suggest that almost everybody, except children, should be playing single player games very quickly.

Wait, why not children? Children have nothing better to do. Even if they go to school, they have tons more free time than adults, and no responsibilities. They also have no money. Most children are lucky to have few, if any, video games at all. Pokemon is popular because kids actually have the time to catch them all, as they well should.

Why not multiplayer games? Multi-player games, at least good ones, are basically sports. Unlike a single player game which is a sea of authored content to be unlocked and enjoyed, multi-player games are about competition with other people, not enjoying the scenery. You can play Counter-Strike over and over again with no end, just like you can play Baseball over and over again.

For you adults, why is it good to rush through a single player game as quickly as you can? Why is taking your time and enjoying the scenery not such a good idea?

First of all, the scenery in most games is shit. Take Borderlands for example. The plot missions have all the interesting stuff going on with interesting environments and bad guys. The side missions are boring as all hell. Kill ten skags. Ok, kill these different colored skags. Yeah, they’re all in the same boring desert area where everything is brown. What’s the point? You’re just wasting your time. Just forget your compulsive need to get 100% completion, and only do the good parts of the game.

Someone recently told me a story about how they played Half-Life 2 for the first time,and they found the part with the boat to be interminably boring. I totally understood where they were coming from. The first time I played HL2, I stopped to smell the roses. When I was in that boat I moved very slowly. I killed every bad guy, and tried to find every stash of loot. I did the same then during the driving part. I stopped at every house looking for ammo and health.

Later, when I replayed HL2, I learned my lesson. I didn’t stop. I just put the pedal to the metal, and hauled ass through the vehicle sections as quickly as possible. There is no doubt in my mind that that is how the designers intended for those sections to be played. I mean, you’re trying to save your friends and the world, you better be gunning it! Not only that, but as soon as you start to go fast, the whole area turns into an insanely awesome action movie chase with explosions and jumps galore. If you’ve already played HL2, I suggest loading up the boat section and flooring it to see what I’m talking about. Faster is better.

Lastly, I don’t know about other people, but I don’t have much free time. The vast majority of my time is spend at work, sleeping, and socializing. What little time is left is further reduced by cleaning, running errands, cooking, eating, and generally taking care of life. Oh, and then I spent time on productive side projects like a podcast an such. There’s really not much time for video games in there.

If I were to play a game that took 40 hours to beat, that would eat up all of my video gaming time for months. You might say that’s a really good deal. Sure, if you’re short on cash, then having one game that is fun for a very long time with lots of replay value is good for you. Civilization 5 is coming, that’s the perfect game for you.

The thing is, I have money. I have so many unbeaten, or even unplayed, video games on my plate I can’t even remember them all. That doesn’t even include the insane number of free or cheap indie games that are available on the PC, or old classic games I’ve bought on Steam, or multiplayer games I still need to practice more often. I’ve still got unbeaten and unplayed Wii games, and I can’t even remember the last time I turned on my Wii.

Someone in my situation, and I suspect many gamers are, probably shouldn’t devote all their time to one really long game. If there is a long game you want to play, just burn through to the end as quickly as you can. You’ll experience the best parts of the game and skip by the parts that are not as good or necessary. The benefit is that you’ll be able to play a lot more games.

Yeah, I guess there’s something to be said for slowly reading Tolkien over the course of three years. But seriously, If I don’t want to miss anything, I can re-read it. It’s not going anywhere. I could probably read any Tolkien book in a week. At that rate, I could re-read the entire trilogy probably over 30 times in three years. I think re-reading it 30 times will allow me to remember and experience every detail a lot more than reading it once over the course of three years.

But of course, I wouldn’t re-read the same books 30 times. I would read different books. If someone asks what books you have read, and you’ve only read three in the past three years, that’s pretty sad. If you want to be well read, you need to read many books. Variety is the spice of life.

What’s better, experiencing every single insignificant detail and side quest of some incredibly long JRPG, or experiencing the best parts of maybe twenty games you could have beaten in that same amount of time?

Life is short. There are zillions of video games at this point, not to even count movies, books, comics, shows, plays, and other entertainment media. You only have so much time to enjoy any of them. Make sure when you invest your time into something, that it’s a good one. If it’s not good, just stop. Your time is more important. If it has good and bad parts, just skip the bad parts. Think about what your time is worth to you before you accept that fetch quest.

Posted in Games | Leave a comment

MySQL is Great, Haters Gonna Hate

I made a mistake that I must correct. I stupidly broke my rule of only writing comments here, and made a couple comments on this post complaining about a bunch of problems in MySQL.

After being a happy PostgreSQL user for years, I’ve finally had to use MySQL for the last 6+ months.

I have to admit, I was starting to think it wasn’t all that bad–that the “MySQL is a toy” line was outdated.

It’s not.

- Dammit, MySQL

I’ve been developing database applications, mostly for the web, for seven years now, professionally for five. I’ve used every kind of database for every kind of app. I’ve used MySQL, Postgres, sqlite, CouchDB, and some others. I’ve also worked on applications ranging in size from a tiny blog nobody reads to gigantic high traffic applications with millions of rows, or millions of hits.

Lately I have noticed that there is a very strong backlash against MySQL. That original blog post was linked from Hacker News, and if you look at the comments there, everyone who is in favor of MySQL is getting downvoted.

Let me tell you something. All these technological complaints people have with MySQL, they are 100% true. MySQL has no transactions. Its foreign key constraints are not up to par. It doesn’t follow standards perfectly. There are very real possibilities of your data becoming invalid, or even corrupt. MySQL is far from being a super perfect database under the hood.

If all those things are true, then MySQL sucks, and we should never use it, right? Wrong. Even though MySQL has these issues, they simply do not matter for the overwhelming majority of applications. If you’re working for a bank, a hospital, or the military, then MySQL is right out. In those cases, reliability and data integrity are so important, and the system is so large, you just can’t be using MySQL. I’m willing to bet you’re not doing any of those things, are you? You’re doing a blog, or maybe a social network.

You might say that you are doing a blog, but PostgreSQL and MySQL are both free and open source. You may not absolutely need the data integrity and standards compliance, but why not have it anyway? It won’t hurt, right?

I disagree with this. In my many years of using both Postgres and MySQL, my experience is that Postgres is extremely finnicky. Because it demands standards compliance and data integrity, it demands a lot more work from the application developer. Let me give some examples I have encountered in the real world.

Transactions are a big reason Postgres is so great. You can make sure your data is always correct because a group of writes will go in all together. This is very important in a serious application. The thing is, if you don’t need transactions, using them can cause you a great deal of trouble. In building multiple Django applications on Postgres, I have seen a very frequent error when a transaction has been opened, but not closed. The result is that the entire database is stuck. You can’t read or write from it until the transaction is closed out. Whenever this happens, I just restart the db server, and everything is back to normal.

It shouldn’t be possible for this to happen! The fact that restarting the database fixes it is proof that it doesn’t even need to happen. Yes, transactions are good, but a small user error causing the entire database to go out of service is much worse. In a huge application, you can take the time to test and make sure you don’t make those errors. For a normal every day application, you just want it to stay up. You don’t care about some unclosed transaction. Just let it slide.

A similar situation happens with the much lauded foreign key constraints. I’ll have myself two tables with a foreign key in one pointing at the other. Then something will happen resulting in a related row being deleted. It’s probably deleted because I wanted it to be deleted. The thing is, Postgres doesn’t like this. It’s invalid data. You will now get all sorts of errors from Postgres because the data is invalid. This is going to cause all, or part, of your application to go down with errors.

MySQL ignores this, and wt ill continue servicing your queries. Your application will see no downtime. For normal people with normal sites, having their web site stay up without error is a hell of a lot more important than a dangling foreign key. In most real world cases, that broken foreign key constraint won’t cause any issue whatsoever. Pages not serving is a gigantic problem for even the smallest site.

Another problem Postgres used to have is lack of replication. Every place I have ever worked with MySQL has used the master/slave configuration. It’s just so easy to setup, and has been for a long time. Postgres just added the feature, so how much can you trust it? Even if you do trust it, it’s very hard to configure it properly. There are third party solutions like PL/Proxy and Slony, but they are even more difficult to configure. MySQL makes it easy, and that is my final point.

MySQL is very easy. It has extremely user friendly commands such as ‘show databases’ or ‘show full processlist’. In Postgres, you have to learn commands like ‘\l’ and ‘\d’. I’m a vim user, so I have no problem with this, but what if you’re some guy with a blog and not a vim using developer? Postgres is just really cryptic. MySQL is much more forgiving of the user, and more accessible to normal people.

Another example of MySQL’s ease of use is in its authentication model. Granted, it’s not all that simple. You specify user@hostname with a password. Then you give that user permissions on different databases, or global permissions. It’s a little complex, but it’s comprehensible to normal people. It’s the same concept as the permissions they setup when they do a PHPBB, or something like that. The administrative user has all global permissions. The moderator user can update this table, insert that table, but only select these other tables.

Postgres has the pg_hba.conf. The first time I encountered it, it took about 20 minutes of reading documentation before I understood what the hell was going on. Yes, I fully admit that this configuration gives a lot more power and a lot more options than the MySQL way of doing things. The thing is, none of those options are useful for every day people. The only thing I ever do in terms of database permissions is I create a new MySQL user and password with full permissions to each specific database. Then I give that username and password to the application in question. In MySQL, this is the default, and PHPMyAdmin makes it easy. In Postgres, that is about as far from the default as you can get.

There has been a migration of database popularity, especially in the web application world. People started with MySQL. They were upset about data integrity, so they moved to Postgres. Then they were upset about slowness, so they moved to “NoSQL.” The thing is NoSQL has all the same problems as MySQL. Have you not read all these stories about people losing all their data in MongoDB? Losing all your data is a much bigger problem than a dangling foreign key or a broken transaction.

Also, people seem to forget that MySQL has multiple choices of storage engine. Most of the complaints with MySQL data integrity are actually complaints with the MyISAM storage engine. If you switch MySQL to use the InnoDB storage engine, many, but not all, of those complaints are now invalid. The thing is, most people don’t need InnoDB, the same way they don’t need Postgres. I actually think that anyone using InnoDB should use Postgres instead. InnoDB is a lot slower than MyISAM.

Look at all the companies people are talking about that are supposedly using NoSQL. Digg, Twitter, Facebook, bit.ly. People say things like “bit.ly uses MongoDB.” What they don’t tell you is that bit.ly uses MongoDB for just one feature of the site. The actual core of the bit.ly service, the URL shortening, still uses MySQL. The same is true at Facebook. They use Cassandra for some stuff, but the core of Facebook is still MySQL. If it’s good enough for them, then it works. If it works, it’s good.

I understand there are some Postgres/database type people out there who are probably going insane if they read this. They have some sort of OCD-like situation where they need all the data to be exactly perfect, or it drives them crazy. You know, if I look at some of my MySQL database, there is bad data in there. I see it with my own eyeballs. It’s a tiny bit annoying. But then I look at my actual application. What do you know, my application is still running. It has no errors anywhere. It’s fast. It’s working. That’s all that matter. Everything else is just anal developers who need to get over it.

If you’re doing a serious big application, use Postgres, please. I do not want data errors ruining my vacation when I book a flight. I do not want my bank to lose my money. If you’re doing another every day web site, use Postgres if you want, but it’s not necessary. MySQL is faster, easier, and it works. The web site will load, and we can all rest more easily.

Posted in Technology | Leave a comment

Raw food raids are on the rise

There’s an interesting post on BoingBoing about government raids on farms that are selling wares at raw food markets. It’s simultaneously ridiculous and also awesome.

“If you take my computer again, I can’t do my homework.”—Words spoken to agents raiding a small California dairy farm by the owner’s 12-year-old daughter. The farm is known for producing raw goats’ milk cheese that is sold by members-only raw food markets. Grist reports that local, state, and federal raids on alternative “raw foodie” membership marketplaces are on the rise.

- Raw food raids are on the rise

Ok, so the ridiculous part of this is the computer confiscation. People need computers and Internet access. With news, banking, and even government all being online, someone without a computer and Internet is effectively cut off. Really, we need to follow the lead of Finland and make Internet access a right that can not be revoked unless someone is convicted of a crime of appropriate severity.

As for the issue of the food, hells yes. If you read the posts on BoingBoing, they’re typical crazy hippies who think that anything which happens to benefit a bigger company to the detriment of a smaller one is an evil corporate conspiracy. Those same people will cry huge foul when they find a big company doing something like selling toys with lead paint. They’re just hypocrites who pick sides based on which party they empathize with more, rather than based on the facts of the issue itself.

The facts are that raw milk, raw cheese, and other such foods are fucking poison. You know humanity is only where it is today because we invented alcoholic beverages. Why is that? It’s because alcoholic beverages didn’t turn to poison and kill us all. The alcohol in the beverage killed off the nasty bacterias.

If you drink some raw milk or some bathtub cheese from one of these hippy farms, your odds of getting sick are quite high indeed. You might say that it’s never happened to you, and that’s quite possible. But it’s a huge risk. You want to get listeria, seriously?

You know how come we drink milk today? Pasteurization. Yeah, you know, the process that pretty much saved all of our collective asses. Without pasteurization, we wouldn’t be able to eat half the shit we eat today without getting sick all over the place. I’m not just talking about the common case with lots of diarrhea and vomiting, death is a significant possibility here.

You might like the taste of raw milk, but I’ve heard that anti-freeze tastes really good. I guess anti-freeze is more dangerous than raw milk, as it almost guarantees death, but the milk isn’t far behind. Actually, I’d say that lead paint is probably less dangerous than the milk. I mean, you aren’t supposed to eat the paint, and it can’t really hurt you if you leave it on the wall where it belongs. You’re going to drink the milk, and if it’s unpasteurized, you know what’s living in there?

Remember, milk comes from a farm. Farms are dirty places. They are really dirty. Even a clean farm is dirty. There’s animal poop and dirt and other nasty stuff all over. There’s also all kinds of bacteria that would love to fuck you up. The evil commercial farms are actually heavily regulated. They go to great lengths to make sure the food is clean. Ultra pasteurization, irradiation, and all kinds of other technology that make food safe to eat, and help fight hunger. Science scares hippies, so they don’t like this sort of thing, even though it saves lives. The hippy farms, they hardly do anything. Remember, unpasteurized milk is milk with cow poop in it. The bacteria in that cow poop can kill you.

The reason we have these laws for consumer protection is because clearly consumer education doesn’t work. There’s no way we can teach everyone the dangers of raw food. And even if we do, people like these hippies on BoingBoing still won’t believe it. Idealistically I am anti-nanny state. Pragmatically, let’s save some people’s lives. Even if they’re stupid enough to drink raw milk, they don’t deserve to die or have their insides come out both ends for that stupidity. Saving them from themselves is a good move. Government, please crack down more on unclean farms.

Posted in Society | Leave a comment

The New Google News

This guy Bruce Tognazzini (Tog), really doesn’t like the recent changes to Google news.

The team involved appears unwilling or unable to just come clean with the fact that they screwed up completely, and, instead, are just chipping away at one individual screw-up after the other. It’s as though they replaced their gazelle with a pig and are now carving away at the pig, desperate to make it at least look like a gazelle. So far the result, unfortunately, it does not look (or feel) like a gazelle at all, but only like a distressed and wounded pig.

- Top 10 Reasons the New Google News Sucks

I read Google News a lot. I visit it multiple times a day. It is by far the best news aggregator in existence. It doesn’t show you any stupid crap, because, as with all Google systems, it’s algorithmic as opposed to democratic. It is incredibly intelligent when it comes to grouping duplicate content. It’s highly customizable, and it manages to cover everything important.

Recently, they changed Google News. They changed the layout from two columns to one, and some other things. As someone who visits that site frequently, on my PC and on my iPhone, I’m indifferent. It’s neither better nor worse than it was before. All of the key reasons to visit Google News, which I have already described, have not changed. It still provides links to all the important news stories without duplicates or stupid crap.

Remember the hundred or so times Facebook changed its layout and/or privacy policies and people were in an uproar? Well, everyone is still using Facebook, still playing Farmville. No changes going on there. No surprises.

One of my favorite stories is about the Citgo sign in Boston. It’s a gigantic and famous outdoor advertisement. It’s quite garish. When they originally wanted to install it, the neighborhood fought against it tooth and nail. They lost. More recently when it was suggested that it be taken down, people fought to keep it up because it had become a landmark.

Remember when they changed the name of the Nintendo Revolution to the Nintendo Wii? Remember people made jokes about the name? Remember when Firefox changed it’s name two or three times? Now, everyone calls them Wii and Firefox without even thinking about it.

Every time anything changes, for better or for worse, people complain. Then after a time, the change almost always sticks and wins and the complainers forget. We’ll never eliminate all this moronic griping, but perhaps we can lessen it slightly. The next time something changes, wait a week or two before you decide whether the change is really so bad. Odds are you will get used to it and forget it was ever different. The next time you see or hear someone complaining about a recent change, simply because it is a change, ignore them, or at least give them the same advice of waiting a week or two.

The more things change, the more they stay the same. Change is the only constant. You’ve heard it all before. That’s why we don’t want to hear it again. Save your breath for when there’s a really important change with real consequences. Losing your shit over the layout of a web site is kind of sad.

Posted in Society, Technology | Leave a comment

Sell

Douglas Rushkoff thinks that shit is about to go down, economically speaking.

Yes, this is really it. The beginning of a true end-of-cycle economically.

If you own “stocks,” use these bounces to get out completely. If you have to park your money somewhere, consider yourself lucky you have money to park.

- Sell

I’m not going to discuss whether he’s right or wrong. Time will tell, also I have no idea. I would however, like to add some counter advice. Well, maybe it’s not so much counter advice as it is additional advice.

Let’s pretend that he’s right and the market is about to go down, as in way down. If you own a lot of stock right now then yes, selling would be a good idea.

The rest of his advice, about creating actual value, is good advice in any economic scenario, and I wholeheartedly support it. However, selling now doesn’t mean avoiding stocks forever.

If the markets crash hard, I personally will likely buy like crazy. I’m young. I have a lot of time left. I have money. I have a 401k. If it goes way down, I’m going to increase my 401k contribution to the max I can afford. I might even just get an online trading account and just go for it.

See, I’m in it for the long haul. I’m not even 30 yet. Any investment I make will probably last 40 years plus. Buy low, sell high. That’s the most basic advice in all trading. There’s almost no chance that it will be lower when I retire than it will be if there’s a big dip soon.

It’s almost like a gift. Hey, maybe you didn’t start your 401k as early as you should have. Maybe you didn’t make your contribution large enough. If you have money afterwords, it’s your chance to play catchup.

If you believe Doug, then by all means sell now. But if he’s right, be prepared to buy after the smoke clears.

Posted in Society | Tagged | Leave a comment

Almost All Conventions Straight-Up Lie About Attendance

My favorite convention in the entire world, PAX, has committed to Boston for three more years. I have attended the past three PAXes, and have spoken at all three. I plan to continue to do so for the foreseeable future. They have apparently just signed a deal to keep PAX East in Boston for three more years.

The Massachusetts Convention Center Authority and Reed Exhibitions, event organizer for the video gaming convention Penny Arcade Expo (PAX), signed an agreement recently that will bring the Seattle-based show back to the East Coast for at least the next three years.

In its first year at the Hynes Convention Center in March, PAX East drew nearly 60,000 gaming players and developers over the course of the sold-out three-day event.

- Video gaming conference PAX East commits to hub for three years

The only problem I have with this at all is the single lie. The lie is the sentence that says “PAX East drew nearly 60,000 gaming players and developers….” This is simply not the case. If someone goes to PAX East for the entire three day weekend, they are counted three times. I do not know their exact counting methodology, but they may also be counting staff, exhibitors, guests, and others in addition to the paying attendees.

I don’t mean to pick on PAX, my favorite convention of all. I go to a lot of conventions, and almost all of them tell the exact same lie. San Diego Comic Con, CES, New York Comic-Con, New York Anime Festival, E3, and more. All of these major conventions count attendance by turnstile. It throws the numbers off even more when you have a four day convention like SDCC, excuse me, Comic-Con International.

That being said, there are many conventions out there that do not lie at all. Otakon is a convention to note in this regard. All of the Otakon event stats are publicly available. I know for a fact that the attendance number they give is exact. It counts each human body exactly once. It does not count staff, exhibitors, etc. It only counts legitimate attendees once.

Perhaps, though, if the big conventions refuse to stop this farce, conventions like Otakon should begin to lie. If Otakon were to count turnstile, they could boast nearly 100,000 attendees, completely dwarfing even a big con like PAX. I have been to both Otakon and PAX several times. Without a doubt, Otakon is much larger in terms of physical space and population. There is no comparison when it comes to size. Comparing other factors is another matter entirely.

The thing is, I’m not even really picky here. If these articles about attendance would change their wording, I would have no cause to complain. For example, this article says “…60,000 players and developers.” That is a lie. They could have said something like “…an attendance figure of nearly 60,000.” That would be a true statement using the same number.

Imagine if you had a baseball stadium that seated 30,000 people. You sold it out every game. Assuming half of the 162 games are played at home, that’s 81 games. That’s 2,430,000 tickets sold. That’s well and good. However, if the stadium said that they “welcomed over 2,430,000 people this year”, that would be false. It is obvious that most of the tickets are held by season ticket holders. It’s the same butt in the seat every night. Assuming half the seats are season tickets, and the rest of the seats are never return visitors, that’s 1,230,000 unique people. These aren’t slight discrepancies we’re talking about here. These are numbers that are way off.

Now, you might ask what harm this lie does. Well, it is a harm to the conventions that do not lie. PAX gets lots of attention, far more than Otakon, and for many reasons. But perhaps if advertisers and the industry knew the true size of Otakon, they would pay it more attention. Perhaps some fans out there are deciding which convention to go to. Maybe they prefer big, or maybe they prefer small. Either way, they will make the wrong decision based on false information. Perhaps a business is deciding which convention to exhibit at. They will spend their money inefficiently at a smaller convention which lies, when they could perhaps get more bang for the buck at a truthful convention which is in fact larger.

We need to have some standard way of measuring event attendance. If we allow events to continue deciding their own attendance numbers based on whatever metric they decide upon, there will be no objectivity and no equal point of comparison. At the very least, the events should publish their attendance metric along with their figures to make it clear exactly how they are counting. Ideally, just cut the crap. Tell us the number of badges sold. As Otakon has shown, you know that exact number with an incredibly small margin of error, perhaps zero. If you want to brag about attendance, at least brag the truth. The true figures are still quite impressive, just let us compare apples to apples.

Posted in Conventions | 1 Comment

American Dream Is Elusive for New Generation

I don’t even know where to begin with this article from the New York Times. It tells the “sad” story of a college graduate who has to live with his parents because he can’t get a job. Except that he did get a job, and he turned it down.

The daily routine seldom varied. Mr. Nicholson, 24, a graduate of Colgate University, winner of a dean’s award for academic excellence, spent his mornings searching corporate Web sites for suitable job openings. When he found one, he mailed off a résumé and cover letter — four or five a week, week after week.

Over the last five months, only one job materialized. After several interviews, the Hanover Insurance Group in nearby Worcester offered to hire him as an associate claims adjuster, at $40,000 a year. But even before the formal offer, Mr. Nicholson had decided not to take the job.

- American Dream Is Elusive for New Generation

There are so many things wrong here. Let me start with something simple. Why is he sending out four or five resumes a week? When I am on a job hunt, I can send out as many as five an hour. It’s clear from this fact alone that this kid is lazy and inefficient.

Well, there is one other explanation for how few applications he is sending. It could be that he’s just very picky. He claims that he’s willing to work anywhere, but apparently he’s not willing to do any job. He has some sense of entitlement that because he went to college he should immediately start in a high up position. Welcome to reality! He’s probably could apply to hundreds of jobs a week, he just doesn’t want those jobs because he thinks he’s too good for them. Guess what? Someone who will prefer to stay at home than to make $40k is an asshat. I wouldn’t hire him to flip burgers if I owned a McDonald’s.

The author of the article, Louis Uchitelle, places all the blame squarely on the economy. Oh, it’s so hard for these kids to find jobs. I don’t know what Louis is talking about, this kid found a job and turned it down. Blame the kid for being a douche, not the economy.

I graduated from high school in the year 2000, so I did not enter the job market until after the .com bust. I took the first job I could find. It paid $40k. I was working within a few weeks, and moved out soon after. Twice since then I have changed jobs. Each time I started my job hunt I have found new jobs in a matter of weeks for significant increases in pay. Even in this horrible economy, jobs are aplenty in my field.

Now, I don’t want to blame the kid entirely. I also want to blame his parents, and our whole society. My generation grew up with everyone telling us we should follow our passion and be whatever we wanted to be. They filled our heads with lies. This kid obviously still believes those lies. Not everyone can live their dream, most won’t. If we all lived our dream we would have too many astronauts and not enough farmers.

They also told my generation the lie that everyone should go to college, and that it’s a magical job ticket. Back in my parent’s generation going to college was special. Not everyone did it, and not everyone graduated. Thus, if you did have a degree, it was actually sort of a magical job ticket. Nowadays almost everyone has a degree, so the value of said degree in the job market is significantly reduced.

Because of these lies, my peers not only went to college, they majored in whatever they felt like. Many of them majored in things that provide absolutely no marketable job skills. I knew a person with a communications degree working at Gamestop, so awesome. Could have saved the money spent on college and gone to Gamestop right after high school and been a pretty big manager with four years of climbing the ladder. Four years of on the job experience is worth a lot more than four years of school.

Even worse than that, a lot of kids have gone to college with no direction. They went to college because it’s the thing to do, and their parent’s paid for it. They have no idea what they want to major in, or what they want to do with their lives. They toil in useless liberal arts classes doing nothing worthwhile, and perhaps never graduating. Even if they pick a major, they change their minds wasting thousands of dollars and years of their lives. The college doesn’t care, they’ll take your money.

Now, I did go to college. I went to RIT and majored in computer science. That happened to be both my passion and a marketable skill. It was easy to see from day one who was going to succeed and who would fail. There were kids who went home to their parents every weekend to have them do their laundry and feed them. There were kids in CS who had hopes of money, but no skill or interest. There were those who could work very hard and make the grade, but didn’t truly care about what they were doing.

The retention rates were horrible. A frighteningly large number of kids changed majors, transferred to other schools, or dropped out. They just couldn’t hack it. When actually forced to live independently and work hard, they quit. They boomeranged right back to mommy and daddy. It’s good, in a way, that we don’t have more job openings for these kids, as they would likely destroy whatever companies were fooled into hiring them.

I remember years ago I read a magazine that was left in a bathroom. There was an article in it about a couple who couldn’t get by because they were burdened with debt from college. At the time, their income was slightly less than mine, and their student loan debt was roughly equal. What was the problem? They had huge credit card debt. They had a gigantic house, kids, cars, luxuries. They lived as if they had a six figure income when they were in the lower five digit range. Yet the article blamed the economy rather than these people. They could have made a case using a better example, why did they choose these morons who were living so far above their means?

I think our friend in this article is quite a similar to that couple. He currently lives with his six figure parents. If he takes that $40k job, then his luxury level will decrease significantly. He won’t eat nearly as well. He won’t have as nice a television. He won’t have as nice a car. He won’t have an XBox. He refuses to step down before he takes a step up. Previous generations were forced to step down, by being drafted into war. The current one would rather leech off their parents.

And who can blame them? The parents must take a huge share of the blame. Why do they allow their kids to leech? They’ve spoiled these children their entire lives, why would they stop now? They’ve never forced, or even permitted, these children to live independently. They never will, unless they are tossed out in the street.

It’s well and good to have these kinds of stories out there. Tell the stories of the unemployed. Tell the story of any interesting person you can find. Just don’t go blaming the economy when the person is clearly at fault for their own problems. Find a better example. Find someone who has a marketable skill, is applying to jobs like crazy, and hasn’t even been called back. I think maybe the reason they don’t have such an example is because it doesn’t exist. Those people already have jobs, and the rest are not worth hiring. There isn’t a shortage of positions to be filled, there’s a shortage of quality labor.

I leave you with this relevant TED Talk by Mike Rowe. Make sure you watch the whole thing, or you won’t get it.

Posted in Society | Leave a comment

Techies care about education, but not enough

In a posting on LearnBoost Rafael claims that technologists care about education, but don’t care enough to actually do anything to solve the problems of education. He’s completely right, and he’s also completely wrong. He doesn’t even try to think of a single reason why this is the case. I will tell you those reasons.

This is why you see these passive signals of techies caring about education via the repeated upvotes on communities like Hacker News. Techies care a little bit, but still it’s not enough to drive change. Another way of putting it: there is a lot of demand for change in education but not enough people supplying that change. So we keep repeatedly celebrating the few education innovators.

- Techies care about education, but not enough

Let me tell you something Mr. Rafael. I care a great deal about education. If I could pick any job in the world, I would pick to be a technology teacher in a high school somewhere. Now, why aren’t I currently employed in that dream job of mine? It’s not because I didn’t try. The reasons I am not a high school computer teacher are the same reasons that technologists don’t care about education “enough”.

Reason number one is money. Technology skills are very rare, and very valuable. Almost all of my college professors worked in the private sector during the summer because that’s where they made their real money. Even with all the extra benefits from the teacher’s unions, a teacher’s salary isn’t even remotely enough compared to what I can make at even a normal tech job. If you want technologists to help with education, you have to pay. The reality of the world is that corporations have a lot more money than schools, so that’s where technologists go. I don’t know how well a school would handle a brand new computer teacher being paid more than the principal.

If it’s just a matter of money, I look like a greedy tool, so let’s look at the other two issues. The first of which is lack of freedom for the teacher. Most teachers do not have freedom to teach as they please. They have to follow curriculum. They have to teach a certain way. No decent technologist can tolerate that. They would demand to teach the subject matter they want in the manner of their own choosing. A technologist would chafe if they were told what to do or how to do it.

Even worse, many schools will not hire you to just teach technology. I looked into it, and most schools will hire you has a math or science teacher with the opportunity to teach one or two technology courses, if that. That just isn’t going to cut it. I have no interest whatsoever in being a math or science teacher, grading papers, or other bullshit. I want to have a classroom full of computers, and other stuff, and I want to be the complete dictator of that room. The school exists only to put students into and out of that room.

That ties into the last problem which is the bureaucracy of the school as a whole. You see plenty of stories all over tech sites about a kid being suspended for having his boy scout knife in school, or some other nonsense. Back in my high school I got reprimanded for installing the flash plugin on a school computer. Technologists are nothing if not infuriated at the moronic policies and limitations that are placed on students and on the school computers. I imagine I, and other similarly minded folk, would be fired almost immediately by some cowardly principal who always follows policy to the letter.

If you want technologists to help with education, you have to pave a path for us. Because our technological knowledge is rare, we have great power. We are holding all the cards. Therefore, you have to grease the wheels if you want our help. Even if we want to help you, we can’t as long as the walls of bullshit are still in our way. Even if you can’t offer us as much money, you have to eliminate the bureaucracy and idiocy. We won’t tolerate moronic school policies whether they are applied to us or to students. We’ll probably show up at the school, tell everyone they are stupid, wave the middle finger around, and be sent home, if not to prison.

We would love to come and help you, but I think it will have to wait some time. Call us when you’re really ready for technological egos to roam your halls.

Posted in Society, Technology | Tagged | 1 Comment

NoSQL or NoJoin?

Daniel Lamire has written an interesting post discussing the terminology we should use to refer to the increasingly popular non-relational databases such as BigTable, MongoDB, CouchDB, etc. He’s mostly discussing semantics, but it got my mind thinking on this issue just one more time.

However, in practice, SQL is based on joins and related low-level issues like foreign keys. SQL entices people to normalize their data. Normalization fragments databases into smaller tables which is great for data integrity and beneficial for some transactional systems. However, joins are expensive. Moreover, joins require strong consistency and fixed schemas.

In turn, avoiding join operations makes it possible to maintain flexible or informal schemas, and to scale horizontally. Thus, the NoSQL solutions should really be called NoJoin because they are mostly defined by avoidance of the join operation.

- NoSQL or NoJoin?

Because these databases have become very popular recently, I have tried to learn a great deal about them. I even went to a conference about MongoDB. What I have learned is that these databases are very fast, and more easily scalable than relational databases. I have also learned that not having a strict schema for each table is advantageous in many applications. However, there is still this circle of logic I can’t get out of my mind.

You’re using MySQL with MyISAM. That’s an unreliable and flawed database engine. It has no data integrity or compliance. Ok, so you switch to InnoDB or Postgres. Now you have the data integrity, but everything is slower and more difficult to scale or replicate. The solution, therefore is noSQL/noJoin databases which have none of the data integrity.

Wait, what? Why would you choose the non-relational database over MySQL with MyISAM? They have the same data integrity and transactional issues. They are both fast. They both scale and replicate easily. The only major difference I can see is that MySQL has a strict schema and the noSQL databases have no joins.

I don’t know about other people, but every database-powered application I have ever written includes many joins. There is a great deal you can do without joins, but eventually there is a feature that requires them. Let’s say you have authors and articles in two separate tables. The author gets married, and you want to change their last name. With SQL you just update the row in the author table. Without it, you have to search for every blog post with that author, and change the name. Talk about a pain.

Now, there is an alternative to this methodology. You could have an author record and put the unique ID of the author into each blog post. So now what are you doing? You’re writing a join by hand in your application. You get benefits of using the NoSQL database, but the consequence is that you have to write more code. If using a relational database, you could do a lot of work with a single line of SQL. Instead, you write an entire algorithm in your application to do that same work as an SQL statement. It’s reinventing the wheel. You’re duplicating the work of the MySQL developers.

Now what toll does this take on performance and scalability? Yes, the NoSQL databases scale so well, and are so fast. That’s because the application servers are doing all the hard work. It’s shifting the load, not removing the load. On top of that, how good a coder are you really? I personally do not think that I can write a join algorithm that is better than what the MySQL developers can write. If I have a database without joins, and I have to write a join for my application, then how can it possibly be better than if I had just used a relational database? If it is somehow faster and better, that can only mean there is a serious problem in the join algorithm in the relational database that must be fixed. I doubt it. If indeed it is better, then why don’t they just add join commands to the noSQL databases?

If anything in my logic is wrong, please point it out to me. I’m not trying to flame, I’m trying to learn. It’s just that no matter how hard I try, I can’t comprehend the supposed hueg benefit of the non-SQL database. At best it frees you of the limits of a schema while moving some load from the database server to the application server. If I had an application that would heavily benefit from being schema-free, and there were few joins, it might be worth it. For every real world application I have actually written, it makes little sense.

Then again, every application I have ever written has always had more strain on the application server than the database server. I’m sure if I worked at Facebook or some other incredibly large place, the scaling benefits would emerge. It would be worth the effort of writing that extra code and moving some of the heat over to application servers. The thing is, if that’s my problem, I’m in a good spot. It means I’ve got so much demand that I’ve probably got money to pay someone else to do that work. There’s still little reason to start out in the beginning with anything but SQL. You’re likely making more work for yourself in exchange for scaling benefits that you do not need because you are small.

I’m sure there are some applications out there that have few, or even zero, joins. I’m also well aware of many applications where being free of a schema is such a huge boon, it is worth the price of writing more code. These applications exist, but in my experience they are rare. Almost every application I can conceive of is naturally relational in some way.

If anyone out there can explain what I am missing, I will be very thankful. Until then, I’ll be using MySQL for almost everything. It’s easy. It works. It’s fast. I don’t need the super data integrity, or user unfriendliness, of Postgres. And while it may not scale as easily as others, it scales much larger than any application I have ever had to deal with. If I am ever so fortunate to have to scale large, then I’ll make a move. Until then, I’ll save myself the trouble.

Posted in Technology | Tagged | Leave a comment