Visual Studio Gets Achievements, Badges, Leaderboards
bonch writes "Microsoft has introduced a gamification plugin for Visual Studio that lets users win achievements and badges as they compete on leaderboards by writing code. The full list of achievements includes gems like 'Go To Hell' for using goto, and 'Potty Mouth' for using five different curses in one file. This is another example of Gamification, one of the latest trends to hit social media."
I know that the established programmer hierarchy would have me burned at the stake for even hinting at it, but I miss my old GOTO statement. Call it sloppy if you like, but a simple one line statement beats the shit out of the acrobatics I often have to do in Java to SIMPLY JUMP OUT OF THIS METHOD/LOOP TO A SINGLE SPECIFIC POINT IN THE PROGRAM.
break;} //shit, still doesn't go where I need it to
break;}
break;}
return;}
Now, cue the voices of 1,000 programmers looking for a non-existent "disagree" mod and screaming at the top of their girlie lungs on why GOTO is EVIL, EVIL, EVIL--as they parrot the professors who taught them that.
SJW: Someone who has run out of real oppression, and has to fake it.
It just makes them dull things with out of place social media gimmicks.
As a gamer, I am not pleased with this trend.
The idea of gamification is to give little awards for postitive behavior — or at least active engagement with the site/product/tool/whatever. A few of these fit that (the badge for working on a Saturday or Friday night), but most of them are labels of shame for doing things like writing a single line of code that is several screens too wide.
I know right? It is poor to think that only 5 'curse' words per file gets you Potty Mouth status. They obviously think that is a challenge.
*even grammar*
My -1 Troll is actually a +1 funny. And my -1 flame is actually a +1 insightfull.
I find this idea quite nice. Encourage people to have some fun while programming (boring stuff). This wont result in bad code. The gain for MS: create an account to store and publish your achievements.
It better have one for do-whiles, I always feel like I've made a great accomplishment when I use one. It makes a day a little less sucky.
x86, oh yes, I'm pro.
The opposite could be the case, someone might be using goto not knowing it's considered bad and learn that it is from this achievement.
You'd have to be living under a rock to *not* know that GOTOs are considered bad.
So, is this going to be a good thing to put on your resume?
* Stay focused and attentive to work.
* Hard worker
* Level 32 Visual Studio Achievements
* Stays on task
Uhhhh...
Huge hideous bugs!
I for one would find these badges nice:
On the other hand, IDEs like Netbeans and Eclipse are getting better and better at nagging users about such issues (and auto-generating code to fix many of them). Do we really need the badges?
The achievement for using goto is "Go To Hell". How is that encouraging, I have no idea :) . In fact, most of those achievements are just a funny take on amateur programmers. Just take a look at the list:
I rarely respond to comments. Also, don't ask for clarifications: a brain and Google are faster, believe me!
WTF is my first reaction. Second reaction is that that would have been awesome to work on the team that built that in because it shows that they have a bit more freedom with what goes in a program like Visual Studio. This sounds like a progressive step forward in the engineering team @ Microsoft. I can't give them kudos for this _exact_ application of listening to programmers but the idea that people are allowing for ownership and creativity is gratifying to see in a development firm. Its something different than the boring troll of debugging the application, fixing build errors, and building more.
There are many players who simply have to collect every single achievement. Considering what these achievements are like (use 20 single-letter variables, write a 300-character line etc.) I hope their behavior won't carry over to programming...
Clearly my code commenting technique is slightly different from the norm.
"achievements" ruin everything - games included.
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
There are plenty of individuals out there - including myself - that would go in a frenzy and would attempt to earn all the achievements, regardless if they're bad or not.
Achievements should be defined by management, not the software vendor.
I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
Taking inspiration from Dungeons of Dredmor (with NH homage, I believe):
Suddenly the Dungeon Collapses
Achieved when you manage to crash the program.
Why would I want my dev environment to have leaderboards and be "gamified"?
I'm glad it's only a plugin, but to me this is part of the annoying trend that everything we do needs to be tied into social media ... I mean, "they can also brag about their achievements on Facebook and Twitter". Why on earth does everything we do nowadays need to be tied into Facebook and Twitter?
I'm waiting for the first wave of toilets with integration to those sites ... then we will truly widespread "Twitter Shitters" and other bits of stupidity.
Then again, maybe I'm just old and uncool, and all of the cool kids are doing this ... but to me this just sounds like something which is utterly pointless.
Lost at C:>. Found at C.
Seriously, I have been trying to get over the MS hate that I've had since Windows 3. They're just another big company, trying to do what they can and at least they try to compete in new markets even though they routinely get shelled by the competition when they stray off the desktop.
But WTF?!?. Badges in Visual Studio? For real? They have no idea what they are doing. Are they chasing 15 year old developers to be? This is a company with 10s of billions in cash that can subsidize products like Xbox for years and years. This is fucking Bob in the IDE.
Maybe the real reason for the badges and leaderboards is so inept managers who know more about marketing than programming have some way to evaluate what the programmers are doing.
I'm 22 and I think this sounds pretty cool. I'm already addicted to achievements in videogames, why not be addicted to achievements in programming, too?
It's like the drug dealers who gave out free samples of crack with the heroin they sold.
I can't wait for achievement to be everywhere. I think they me the best way to get a populous to achieve an over all, non critical goal.
The Kruger Dunning explains most post on
When will Visual Studio achieve the "supports the C++11 standard" badge?
What if we had government gamification instead of taxes? Instead of taxing cigarettes, let's have an achievement for not smoking. Or achievements for eating healthy foods. Achievements would earn you points toward social security. Companies could offer achievements toward pensions and retirement. Maybe instead of a military, we could have achievements for killing enemy soldiers. Oooh, I see the makings of a dystopian novel coming on!
Smart men use the tool that makes the job the easiest.
The Kruger Dunning explains most post on
I'm many decades past 15 and this looks awesome.
If you stopped and looked around for moment instead of assume you know what's going on you would realize how powerful achievements are. There are many, many good outcomes to this. The biggest will be more knowledgeable and experience developers.
You can't have been around that long if you think this is MS Bob.
That said, MSBob had a great start, but someone future wife was put in charge and basically managed it to shit.
The Kruger Dunning explains most post on
Achiements will be in every job in a decade.
The Kruger Dunning explains most post on
Load up the linux kernel source code. you will get the "riddled with filth" achievement.
Do not look at laser with remaining good eye.
Meaningful coding achievements need to be task-oriented.
But this is a good idea for making sure you're familiar with all the features the IDE offers. Done right, with interactive walkthroughs and whatnot, achievements could serve as an excellent supplement to documentation.
I think 5 curses in a file indicates bad design. If you need more than one library for handling your TUI you're clearing Doing It Wrong.
You could put the variable declaration outside the block assigned to null and then test if the value is null inside the finally
Which would violate the commonly quoted best practice to make each variable's scope no longer than needed. That is, don't initialize the variable to null when you declare it and overwrite the null value later; instead, declare the variable where it is initialized for real.
maybe it's time to think about decomposing the code into more manageable chunks
Until the overhead of packing an inner chunk's return values into a return value object, passing it back to the caller, and unpacking them in the caller becomes measurable in the profile.
If only they'd put THAT in the damn compiler I MIGHT consider using it.
"I'm already addicted to achievements in videogames"
You are being played.