Skip to content

Being a Better Customer

The most exciting thing happened at work tonight, but there’s no way I can talk about it yet – it would be way too obvious. I am going to write a draft and pop it up here in a future post – but I’m really happy to have something interesting to blog about! I can’t promise when I’ll publish it, but I can promise it’ll be a good read!

So instead, I will present you with the Gamestore Girl exclusive guide to being a better customer.

Put things back where you got them from - If you pick up a game and look at it, put it back on the shelf in the same spot it came from. Don’t lay it down, don’t put it on top of another game, don’t put a used copy in the new section (or vice versa) and don’t put it in a completely different console section. It’s not hard and it won’t hurt – I promise. If you wander away and aren’t sure where you got it, put it on the side shelf by the counter where there’s usually a pile of other video games. This allows us to put them back in their proper places – kind of like that cart at the library. The entire store is alphabetized so it does irk us when we constantly have to reorganize because you’re lazy.

Stay at the counter – If you bring in used games for trade or simply bring your purchases up to us – stay at the counter. Wait for us to scan all your games and give you a total before you wander off. If you’re buying, this signals to us that you’re done. Don’t bring your things up to the counter and then wander off while we’re getting your games together. We shouldn’t have to hunt you down when we’ve got everything ready and you need to pay. There are plenty of polite, patient people in line behind you who would gladly stand at the counter and wait for their items instead of rudely strolling around the store. Make sure you’re done looking at everything before you come up to the counter.

Don’t drum your fingers on the counter – Again, this is rude. It won’t make me move any faster – in fact, it’ll have the completely opposite effect. I’ll take my sweet ass time and make you wait even longer – but I will do it with a smile! Sighing, muttering, tapping your card on the counter or whatever other annoying thing you can think of to do will have the same effect.

We are not an arcade – Test the games out – that’s what they’re there for. Test the systems out, see what you think of them. Do not spend 20 minutes or longer playing a game in the store. You’re not feeding the machine a quarter every 10 minutes so this isn’t your hang out place. If you want to play video games then buy a system and go home with it.

We are not a daycare – Bring your kids into the store – no problem. But don’t let them come in alone and unattended while you shop elsewhere. We’re not paid enough to put up with your snot-nosed brats wrecking havoc in the store while you have an enjoyable kidless shopping trip nearby. If you don’t want to shop with the kids – leave them at home.

Don’t bother me on the phone – If you have a quick question, fine, call up and ask. But don’t call me and ask for the trade in value of each of your 25 games. Don’t ask me if we have 5 seperate titles, new or used and the price of each. Don’t pester me constantly with annoying questions – I have customers in the store that I need to serve. Bring your lazy ass into the store and find out for yourself. At least then I can give you proper attention and not want to choke you to death because I’m actually trying to give someone in the store proper customer service.

Save the witty banter – Don’t try to impress me with with how cool/funny/amusing/whatever you are. I don’t care and it just makes me think you’re stupid. If you want to have an actual conversation, that’s great – but cut the crap.

Rules are rules – If you don’t have the receipt, we can’t help you. It’s not my fault your cousins mothers hairdressers dog ate it. I need the receipt or I can’t do a return on your spongebob game. Seven days is the policy and that’s not going to change. We tell you when you buy it that you have 7 days to return anything there is a problem with. It’s not my fault you waited two weeks – I can’t do anything for you now. Next time buy the one year extended warranty.

Have good timing – Don’t decide to bring your items up to the counter half a minute after I, the only person working at the time, have stepped out from behind it with an armful of video game cases I must put out on the wall. If you do go up to the counter at that point, don’t tap your fingers on it, sigh, cough, make other noises. This only serves to annoy me and I will take my time making sure the wall looks perfect before I come and help you. Likewise, if I’m engaged in helping another customer in the store – be it finding a game, explaining a new system to them, helping them look for some random accessory – don’t bring your stuff up to the counter and expect immediate service. If you’re a jerk about it and I find what the person I was helping wanted, I’m going to ring them through before I bother getting to you.

Go to Wal-Mart – Sure we price match, but if you want the $49.99 game for $49.83 so fucking much, then just go buy it at Wal-Mart you cheap pain in my ass.

No means no – Just like when a girl says no to having sex with you, it means no. It doesn’t matter how many different ways or times you ask – if the answer is no, it will always be no.

Take a shower – How are you not aware of your own body odor? You stink to high heaven and I seriously want to gag. I have to force myself to breathe through my mouth while dealing with you just to avoid getting a whiff of your unpleasantness. Soap won’t hurt you, so get a bar and go to town. The public will thank you.

Why Minecraft is So Addicting

mc-beach

Many people get hooked with online games, and it’s not really a surprise nowadays, due to technological advancements. It’s no wonder why the internet is the preferred platform for activities like shopping, paying bills, and even playing sports and arcade games. Through the world wide web, you can already download many applications and games that you want. And in this regard, you might want to try one of the most exciting online games that’s called Minecraft.

Minecraft is an innovative sandbox game that caught the attention of gamers from all ages and locale. One may think the rudimentary graphics and gameplay are best suited for children, but the game also great for teens or even middle aged workers when they want to be relieved from all the stress and tension. Since many developers have already created tons of games that you can play without paying anything, there are naturally many websites where you can try Minecraft for free and play online. On sites like these, you won’t have to spend a dime and you can enjoy the game anytime you want to play.

The game can be played online and offline, and is played in one of the three game modes: creative, survival mode and hardcore mode. If you are in a multiplayer game, you can actually play all modes. The creative mode is where you start with an unlimited supply of blocks that you can use to build whatever you want. There are no monsters in this mode, so you don’t have to worry about getting attacked or losing your work. In this environment, you can really sit back and unleash your imagination as you build your personalized blocky piece of art.

In the survival mode though, you need to create tools, weapons, and other blocks out of necessity as you are being attacked by the monsters that come out during night. You will also need to build shelter or be ready to fight at a moment’s notice, because there are monsters lingering everywhere. This would be good for those who want an adventurous thrill. As you start playing this game, you would learn to love it more and more. It gives you a lot of time to explore your surroundings and is safe to be played by all ages, as there is no blood or true violence in this game (relative to games that involve explosion and guts flying everywhere).

Urban Myths About NoSQL

Dr. Michael Stonebraker recently posted a presentation entitled “Urban Myths about NoSQL”. Its primary point is to defend SQL, i.e. relational, database systems against the claims of the new “NoSQL” data stores. Dr. Stonebraker is one of the original inventors of relational database technology, and has been one of the most eminent database researchers and practitioners for decades.

Many of the virtues of relational databases described here are specifically about a new and highly innovative RDDBMS called VoltDB. VoltDB is made by a company called VoltDB.com, of which Dr. Stonebraker is co-founder and CTO. (There is also a good writeup about VoltDB here.)

The following are some comments about four of the six points in the presentation. I don’t consider any of these to “debunk” the presentation or anything like that, but they point out considerations that I feel should be taken into account.

#1: SQL is too slow:

This argument assumes a perfect (or excellent) query optimizer. If you talk to anyone who has ever done a high-performance system in Oracle DB or DB/2, and you will find out about serious problems in query optimizers. I am not saying that rolling-your-own C code is the answer, but query strategies often have to be provided explicitly by the developer or DBA.

Stored procedures have a serious problem: you can’t interleave your own code with database operations. This can particularly be a problem if each stored procedure is its own transaction rather than an operation within a transaction, as in VoltDB. Existing large systems may not be able to operate within that constraint, although new systems designed with that in mind might not have any problem witht this.

The “to go a lot faster” requires the whole database to be in main memory, as it is with VoltDB (the points on the slides here do not apply to RDBMS’s other than VoltDB.) The reason VoltDB can get rid of buffer management is that there are no (disk) buffers. VoltDB need not do lock management because there is no concurrency control: you just run every transaction to completion, since there is no reason to interleave transactions, since there are no I/O waits.

This is great if it works for your application. In point #5, he says that most OLTP databases are not very big, e.g. < 1TB, and for a database that size, using main memory is quite feasiable these days. The requiredment for the sizes of OLTB databases will probably rise with time. Of course, computers and memory are also getting faster and larger for the same price.

#3: SQL Systems don’t scale

If you have ever been in involved in benchmarking, you know how difficult it is to interpret benchmark results. Is it possible that these results were obtained by choosing a benchmark that is particularly favorable to VoltDB? The only benchmark that really matters is your own application: they are all different. Of course, the problem with that is that it’s hard to port your application merely to test performance. But by ignoring that and looking at other benchmarks, it’s like looking for a lost key under the streetlight because it’s easier to look there. I’m not saying that these numbers are misleading, and certainly not that they are intentionally misleading, but they are very hard to interpret without knowing exactly what was benchmarked, how everything was tuned, and so on. I say this from my own experience, having done benchmarking of database systems for years.

(Also notes that by TPC-C, he does not mean the officially defined TPC-C benchmark; look it up and you’ll see that it is a huge, major project to do it. He means a very simplified example based on the key concepts in TPC-C. (You can see this in the academic papers by him and others.) That said, if you do want a micro-benchmark that is as close to what people agree to be a good measure of online transaction performance, this might be the best one can do.)

#5: ACID is too slow

ACID is great for software developers, providing them a very clean and easy-to-understand model. Ease of understanding is crucial for achiving simplicity, which is the Holy Grail of software developement, enhancing maintainability and correctness. I’m all for ACID.

To clarify something often not explained well: the NoSQL stores are ACID. It’s just that what they can do within one ACID transaction is usually quite limited. For example, a transaction might only be able to fetch a value (or store a value, or increment a value) given the key, and then the transaction is over. That operation is ACID.

In a classic RDBMS, you can do many operations within one transaction. Your program says “begin transaction” (sometimes this is tacit), and then you can do computations that include both code and database queries/updates, interleaved. At the end you say “commit transaction”. (During or at the end of a transaction, the DBMS might have to abort the transaction.)

Right now, very few DBMS’s provide true ACID properties in the way they are really used in practice, for two reasons. First, they run at reduded “isolation levels”, which means that the “I” in ACID is compromised.

Second, one often wants to provide a way to recover from the failure of an entire data center. This is done by having a second data center that is far enough away that it won’t be damaged by the failure of the primary data center. This means you can keep going in the face of a “disaster” such as a regional power outage, a tsunami, etc.

The problem is that if the data center is far enough away to have truly independent failure modes, then the network connection will have latency so high that it is not feasible to do synchronous commits for every transaction that update the distant copy. Most often, commit results are sent asynchronously to the distant copy. If the local data center fails, any transactions that had beeen committed, but had not yet reached the distant copy, are lost. So these transactions were not durable, the “D” in ACID. So there is a tradeoff here. (People live with this by being willing to do manual fixups in the face of a disaster.)

As discussed above, VoltDB transaction do not allow you to interleave code in your application with transactions. (The stored procedures can run arbitrary code, in Java, but that’s not the same what I described above.)

#6: In CAP, choose AP over CA

I disagree that network partitions are not a major concern. Very simple local-area networks do not suffer from partitions and network failures much, but even a medium-size network is vulnerable, and networks in large data centers are quite vulnerable, as you can easily learn from network operations experts. For example, routers fail, or are misconfigured.

Both Amazon and Google have published papers about their large-scale data stores. The papers talk a lot about how they deal with network partitions. If partitions were so unlikey, why are these large companies taking the problem so seriously, and using rather sophisticated techniques to deal with the partitions? Also, the study of how to deal with network partitions has been a hot topic of research for the last 35 years; again, why would that be true if partitions were not an important concern?

So, as your network becomes larger and more complex, dealing with partitions becomes more and more of an issue. My impression (I may be wrong) is that the “sweet spot” for VoltDB, at least at the moment, is for distributed systems that are not at the kind of very-large scale of an Amazon or Google, and indeed for a much smaller scale, which makes network partitions much less of a problem. There’s nothing wrong with this at all; I’m just trying to clarify the issue and explain the reason for the controversy about this point.

Final Note

There has been an exciting explosion of innovative database technology in the last few years. Many different kinds of applications have different requirements. It’s great news for all of us that there are so many solutions at different points in the requirement space.

Luigi and Clans Returning

Well folks, for those who watched the last Nintendo Direct, will already know that Nintendo is planning on giving Luigi the spotlight this year, what with the upcoming New Super Luigi U DLC and Luigi’s Mansion: Dark Moon, Miyamoto hs recently spoken to MTV about Luigi, speaking about this past, present and what we can expect to see from Luigi in the future.

One rather interesting fact that came from the interview is Shigeru Miyamoto admitting that the definitive moment Luigi become his own character was in the Gamecube title, Luigi’s Mansion, which of course was a brilliant game, obviously by the time Super Mario Bros. 2 hit Europe and North America, Luigi was more than just a palette swap.

But Luigi’s Mansion was the first time since Mario is Missing for the NES that Luigi was given his own game.

More interesting points in the interview include discussion about the upcoming DLC, New super Luigi U, which is DLC for New Super Mario Bros U.

Miyamoto informs us that Luigi doesn’t get his own story, but the levels have been designed for his strengths, Miyamoto was hestant to say whether or not Mario will get an appearance, many of you are eaerly awaiting the release of this expansion pack, so if you are intrested in checking out the full interview, you can do so by clicking here.

In other news folks, regarding the sites Clans, we are bring them back, this year however we are changing things around slightly, there are going to be three clans, each representing a piece of the Triforce these clans are called;

  • Clan of Courage
  • Clan of Wisdom
  • Clan of Power

Now we have already found a Clan leader for the Clan of Power, our resident member, Queenie has taken up that position, those wishing to join the Clan of Power can now do so by inboxing Queenie on here.

As for Clan Signatures and the other two Clan leaders, those will come in time, for now though we are open to people applying for leadership roles with the Clan of Courage and Wisdom, so if you’d like to apply, simply send me an inbox on here asking to be leader and why you would make a good leader, nothing heavy though, It’s not going to be as tedious as choosing Clan Leaders back in 2011.

This years Clan season will start on March 16th during midday UK time, morning for those of you on the East Coast and in the Midwest of USA.

We will be making another announcement regarding the points system for Clans this year shortly in our Clan Community, so be sure to check that out folks if you are interested to hear how we are grading point wise this year.

For now though, I’d like to thank you for reading this news article.