skysight-inc/HackerNews huggingface dataset:
My girl and I stopped playing because of that. It went from playable to unplayable literally within a week or two.

It would lose our moves (returning to "Your move" when you'd submitted something hours before).

It would give strange errors "You're using this on more than once device"... erm, no I'm not.

And once it forgot who I was and showed no active games once I logged in again... effectively losing the games I was involved in from my account perspective, but my girl could still see the game and when she nudged it re-appeared on my phone.

And then there is just the non-responsiveness of the server. The start-up splash used to show for less than a second, but now it takes 5-10 seconds if it works at all.

For such a simple app and game it went from being a pleasant distraction to a chore very quickly. As such, our use has plummeted in turn.
Google uses Google Moderator very frequently. IO questions are filtered with it. The Android team makes public hangouts every week and answer questions filtered by moderator. I've even been in a dart hackaton where the creators of dart would answer questions filtered by moderator.

I don't think I've ever seen a bad question embarrassing the speaker after being filtered by moderator. The closest to that is sometimes the speaker will just skip the question. Since it's much more impersonal, it doesn't feel rude.
"Halo 3 looses 5 Million Users 1 Month After Release" ... well of course it did, because most games get old pretty quickly.

To understand if Zynga overpaid, you'd need to know if they bought OMGPOP for a single hit title, or if they see them as a creative group with many hits to come, like Blizzard or Valve.
I've updated the article to use data that does not (generally) change from year to year: country and area instead of city and population. This should eliminate the semantic issue and make it clearer.
Well you can say the same for windows vs Linux or visual basic vs any other language, and you can also continue using paper glue to attach paintings on the wall.

It is not a matter of what you need, it is a matter of using good tools that will help you do good work, understand better what you do, build durable products, and so on.

Just one example: MySQL will not complain if you add a check constraint but will not actually add it to your schema. That's a very Microsoft-y way to handle things, and should give cold sweat to any coder.
Have you heard the question "Is this a feature or a product?"

When you see something that is put together by less than 6 people in a 24hr to 3 months how much there is really there? Less than a single person year's worth of work. Look at more durable companies, they are more like 100 person years of work. So you build something with two decimal orders of magnitude more challenge, it is harder to clone.

I completely agree that copying the Javascript off a site and hosting your own version on AWS or some other service is really sleezy. Just like painting the same mural as the guy across the street, making the same dishes as the restaurant down the street, Etc. But it is the nature of things that if you can easily copy it, well there will be copies made. Go for the concept that requires a bit more setup.

As an entrepreneur, expect to be cloned. People will see what you've done, they will copy it, fight that by being on the 'next' thing as the current one releases. Following a fast moving company that executes well is really really really hard.
Most of the post _isn't_ strictly necessary. You don't need a database to get your feet wet. You don't need to care about XSS for your first throwaway app (though, arguably, you should). I pimp Mako precisely because there's no separate language to learn: the core syntax is just Python.

I tried to describe the _ecosystem_, and I assume any serious PHP application will care about most of the same things.

Here's all you really need: look at http://flask.pocoo.org/ and do that thing it says right there. You don't even need to install a separate web server. (Yeah, yeah, 5.4, I know.)

A "quick dynamic page" is a deployment problem. If you're already running Apache and mod_php, you already have an environment ready to go to serve PHP, so of course it'll be easy for you. I don't run Apache, so PHP doesn't really help me there. (mod_passenger promises to, but I haven't tried it with Python yet.)
"I only know PHP"

"I just trashed PHP rather harshly"

"I want to learn python"

Well, you're doing it wrong. How can you trash PHP if you know no other languages ?!

You're following articles, posts saying PHP is bad and.. you decide then that's right it's bad!

Ever though about thinking on your own first? Like, actually trying a language (python, why not) then deciding if it's better?

This kind of stuff always amaze me. You know, sheepish.
I tend to prefer Python/Flask for Web dev to Python but if you are inclined to use Java there's only really one framework that doesn't make me want to tear my eyeballs out.

That framework is Spring MVC.

It is DI, adapters for vendor-specific libraries and utility. It's probably not the easiest thing to start with just because it is so flexible that it can be hard to know where to start. A good "Hello World" Spring MVC 3.1 app would go a long way.

I really would like to use the Play Framework and it's so close to being great but it just falls too far short.

I really liked Play 1.x with Groovy templates. It was simple and it pretty much just worked.

Play 2.x has gone in a radically different (and backwards incompatible) direction. It is now part of Typesafe and the goal of Play 2.x is to make Scala a first-class citizen.

The problem is that many of the niceties of Play are either harder to use or just outright missing in Java Play 2.x (eg AppEngine support and the OAuth client were all present in 1.x and are slated for a future 2.1 release).

There really is a niche for a Java Web framework that like Play ditches the JEE/servlet model in favour of the Rails/Django way of doing things (including dynamic class reloading) but doesn't do it in a way that makes me want to stab myself repeatedly.

This would include playing nice with the Java ecosystem (seriously just use Maven and to hell with SBT).
Nice littel overview, but...

"Unicode sucks. This is a universal truth."

And here I stopped reading. Unicode is the best thing around, what sucks it that Py2 does not implement it very well. Py3 does, and that is the main reason I really would like to use it and hope Django will soon fully support it. (Because: there are other languages beside the European ones)
Isn't the purpose of fines like this meant to punish and deter this type of behavior? Well then why don't they fine an entity by a percentage of it's value to make it actually "sting" Google a bit?

Sure $10Mill may be more than they would have charged DuckDuckGo if they were doing this, but I don't think that they would fine DuckDuckGo $100 (would likely be much higher) on a relative scale though, this is about how much they are fining Google.
I noticed that about a week after Zynga purchased Draw Something, all of my friends stopped playing. I no longer play either.
For a companies like LinkedIn, Facebook and Twitter, where the value and competitive advantage is in the network and API, I would really like to see them open-source their clients entirely. I think there is a lot to be learned by everyone by being able to read the entire source code of a very well done javascript app in a native wrapper on Github. On top of that it gives people a great example of a project leveraging your API and using it in advanced ways.

I really can't see what any of those companies would have to lose by opening up their client code.

A general opening up of javascript based client code in cases like this where it doesn't really pose a thread for the company would help further the web app ecosystem and hammer the nails into the native coffin faster (I'm not saying native will completely go away, but for most apps it's unnecessary.)

I know that for myself (and many early adopters), nothing helped us learn more about Backbone.js than being able to read the entirety of the DocumentCloud source unminified/unobfuscated.

If anyone at those companies is reading this, I'd love to hear your thoughts on this, and if you agree it'd be great to raise awareness within the company that this is a worthwhile thing to do.
MySQL was a lot worse before 2004 or so. It wouldn't do transactions, nor proper joins, if I remember correctly.

I think the bad reputation still sticks to it.
SEO Sweat Equity: Advice for Do-It-Yourself Business Owners
As NotJim already mentioned, I really appreciate the new ways of content discovery, yet I still value the old approach of a bunch of music loving people hand-picking releases. This is one of the jobs labels do very well and some startups hooking into the EchoNest API can't replace that functionality yet, however it adds additional options to the discovery process.

Other things labels do well is marketing and artist support - again, we're talking about the smaller, passionate labels here. While I am very involved in music and may find and listen to your bandcamp releases, others rely on third-parties to get recommendations. Now try getting your bandcamp album reviewed by Pitchfork - it can happen, but it's not very likely.

With easier access to production tools and simple ways of sharing and showcasing your work, there is a lot of noise when it comes to searching for music. Bandcamp won't mind as that's of course the nature of the service and absolutely ok. However there's value in a place that filters out the noise and provides the good stuff only.
It's more like starting an ice cream company and saying you're not making cars. The two companies are in completely different businesses.
Learn Python. It's easy. It's like Internet Fortran.
This is a lame move by Pair Networks. It reminds me of the days when Sun went around threatening random businesses that had "Java" in their name. I'm glad someone is standing up to these thugs.
Fair point. Correction: working with encodings sucks.

Py3 isn't magnitudes better with Unicode; it's better about converting incoming bytes, and it makes literals into real strings. But the former isn't necessarily a good thing, and you can get the latter with a `__future__` import. Always dying on implicit conversions is definitely nice, though.
Deploying a PHP app is as easy as using FTP, deploying a Python app can be -- but doesn't have to be -- complex.

Easy != Simple && Easy != Good

See "Simple Made Easy" (http://www.infoq.com/presentations/Simple-Made-Easy).
This is part of an FAQ series. The bolded part ("I only know PHP...") is the question I'm answering.

I'll leave you to contemplate the irony here.
16 startups to compete in GMIC Beijing on May 10th-11th
Show HN: My first web app - Resumonk - A beautifully simple resume builder
It's a chicken-and-egg problem. Best I can do is encourage more people to write more Python software, so those crappy free hosts are more inclined to support running it.

Until then, I don't think it's terribly unreasonable to pay twenty bucks a month for a server to play with. That's less than AT&T wants to charge me for sending a thousand 160-byte messages.
This is down to Jobs, actually.

He died just in time to cement his legend. If he'd lived, he'd have gone down in history as a zero-sum grasping capitalistic jerk.
Anyone have technical insight into the issues? Non-responsiveness sounds like performance scaling issues.
"New"? Thanks for wasting 5 minutes of my life...
Nothing in the title or article implies that the Zynga acquisition caused the decline.
It's very lax by default, it's full of strange corner cases that are often forgiven because they're documented, it guesses what you mean with disastrous results when it's wrong, and its biggest feature seems to be its own inertia.
The first time I've ever seen open source hit Wall Street hard
The market for CDS (tradeable insurance against bond defaults) boasts one of the largest outstanding notional values in the financial markets. In order to facilitate easier communication between traders, they made the standard CDS valuation model open source. Very cool that FLOSS is finally penetrating a world besides high-tech!
Please write that list. I'd be very interested in reading it.
yeah really didn't like the switch to js
See "The Wettening", an Invader Zim episode.
"some kind of Internet company" was probably specific enough that I would agree with pair Networks...if it were 1992, not 2012.

It would be basically impossible to have a new company of any kind today which didn't have some connection to the Internet. There's a reason the trademark law recognizes many classes of trade, and lets trademarks be re-used across them -- otherwise we end up with really unwieldy non human friendly names for everything.

Neither pair Networks nor Pair the app would qualify for "well known" status in any sane world. I agree Coca Cola probably would have an argument (under well known status) to prevent Coca Cola the app from being developed by someone doing drug-fueled foursome matchmaking, but that's because Coca Cola is well known.
Their history does not indicate a repeat performance, so if they bought them for the reason they made a really big gamble.
I agree on the simplicity of php. The barrier to write php is low. All you need is notepad and browser. This may be a transition from writing html.

Compare this to other languages where you need multiple tools before you can even begin.

This doesn't make php better. It just may explain why less people make the jump.
My biggest objection is what you noted above: coins are big and heavy. This is not so much an issue when coins have relatively little value, like in the US, because there are tip jars everywhere and the value of the change is small. I round up tip jar deposits to the amount of change I want to discard.

In many other countries I find myself carrying an annoying amount of metal. Not only does the coinage add up to real money such that I would be more reluctant to discard it but in many other cultures there is not the equivalent of the ubiquitous change jars.

Of course, there is always plastic.
I've known about Pair Networks for at least 10 years. I didn't for one second think that a new social networking app named Pair had anything to do with them.

I can't say I'm totally unsympathetic towards Pair Networks though. If I was Pair Networks I would probably be annoyed that a Pair social networking app was getting popular. Then again I'd probably be hoping they became a billion dollar company so it would make sense for them to trade me a $10M+ chunk of equity for my domain.

I definitely wouldn't sue them though. Being annoyed doesn't justify being a bully.
This was in part a talent acquisition but a huge part of the sales price was definitely for Draw Something. A more appropriate/typical TA price for OMG would have been in the tens of millions.
One of the first industries currently being disrupted by the Internet was societal governance. We see it happening more slowly than any other industry because the "Governmental clock" ticks much more slowly than any other industry.
Miniminecraft implemented in Minecraft
I have to disagree with your assertion that this animation wouldn't be pretty.
Seems odd that a company of that size and experience would stand back and allow such a massive drop. 5 million of 15 million in a month. Ouch.

This drop is " active " users. This is not the end of the world but suggests something bad happened.
All we need is to be able to drop an .erb file in a server and have it instantly rendered with the same magic of .php files. How hard would that be?

Anyone here know how to write plugins for Apache?
One of those products which is super simple yet solves a deeper pain point for job seekers. Have used it & can recco it too.
Alternative method to deploy and test your Android app on hardware devices
Ask HN: What to consider when deciding whether to go back to school?
I've never been a great student and I'm not sure that I want to go back to school in the Fall. I've done two years at a university and I just don't think it's for me.

On Monday I will start a new full time job that could allow me to make a living while simultaneously bettering myself as a programmer. Assuming everything works out, I will have to decide in 3 months whether I want to go back to school. Because of the situation I'm in, I would have to work full time while taking a full course load, leaving virtually no time for programming.

This is obviously a big decision and I was hoping the lovely folks here at HN could shed some light on what I should consider before choosing.
This is actually documented behavior:
"The CHECK clause is parsed but ignored by all storage engines."
From: http://dev.mysql.com/doc/refman/5.5/en/create-table.html

I believe it was left to support certain migrations(?). You can create a trigger instead.

I'm pretty certain many people will consider MySQL a good tool with which they produce good work. While it may have its quirks, it's present on virtually all shared hosting environments, just like PHP, so it's very easy to create and deploy an application powered by both these technologies.
In python, stay away from default arguments for methods/functions.

EDIT: yes, mutable default values:

http://effbot.org/zone/default-values.htm
The entire concept of status codes is odd to me. Responses already have arbitrary string-keyed headers. Isn't that good enough? Why have an extra blessed "Status" key with special syntax? If there was a useful bit of information to convey (I also don't see any for 428), what's wrong with adding a new header?
Yes, I set those keyword searches myself. So the difference seems to be that with DDG, you just have to learn which shortcuts exist rather than customizing them yourself. That doesn't really sound like it saves much time, but it sounds like the real advantage of DDG is that the act of reading through the DDG list of keywords would probably give me ideas of useful time-saving shortcuts that I'd never think of making on my own.
Advice-for-annoying-Facebook-girl
What languages, libraries, hosting and database did you use? What editor was it created in and on what operating system?
For me, just couple of queries was enough to see that results were bad.
What is religion
“What is religion” is a very vital question to know. We usually belong to a wrong meaning of this word.
Sentence on your Go PRO! page:

"Check out the PRO version, we are sure that you'll love it."

The fact that you don't contract "we are" and then later in the clause contract you will to "you'll" sounds weird.

Also, you may just want to rewrite that whole bit. It comes out like a ShamWoW ad or something..
I keep a list of my favorite (vaguely) CS-related quotes. At some point I stumbled upon this:
"I think Microsoft named .NET so it wouldn't show up in a Unix directory listing."

(It was attributed to "Oktal", and I believe it was from the StackOverflow page linked by the article, which no longer exists.)
Ask HN: How does Threadless prevent frauds?
Does anyone know how Threadless prevents frauds from their voting system? I posted this question earlier on stackoverflow, but somehow it got deleted.

For Threadless, users are part of their business model. Threadless prints shirts based on its users' votes, at least from my understanding, so they can eliminate any unnecessary costs on producing products that few people demand. That makes the voting system one of the most important features on the site. And if that's the case, wouldn't bots/frauds be a serious concern to Threadless's voting system? I mean, the only way I can think of to prevent people from voting designs multiple times are either using IP log or cookies (or both). But I've already seen bots that bypass these restrictions on some other sites. So how does Threadless actually prevent bots/fraud which can potentially bring the company down?
They must defend their trademark in order to maintain it. Maybe this is enough of a grey area that they could have let it pass, but letting your trademark go generic can be bad for some companies. I don't know if there's a way to do this without suing, but maybe contacting trypair directly and getting something in writing that trypair recognizes pair Networks priority in (hosting, etc.) classes and will never enter those classes under the name Pair, would be ok.

(in practice, I don't think pair needs rely that much on their trademark -- people don't really shop for hosting services casually, and the canonical domain pair.com is an adequate identifier).

This seems like a reasonable civil disagreement where no one needs to actually pitchfork either side.
Yes, but they also give the worst advice; the trick is distinguishing the one from the other.
I have no idea why web2py gotten such a bad rep. I am a beginning webdeveloper and seriously: web2py is a pleasure to work with. Simple to start, deploy, port and hack. It's backwards compatible and has a template language that really is non existant as so far as its pure python.

Compare that to Rails - which is (comparable) hell to set-up and breaks with upgrades etc.

If you want python web development to be simple, web2py is the way to go. Since I don't have a CS degree and I have often been wrong before - there might be a real problem somewhere. But I don't think so. One of the reasons for this is that Jakob Moss removed his web2py bashing from this thread. Didn't edit - removed it: https://www.quora.com/Is-web2py-a-good-Python-web-framework/...
About Compatibility and Fragmentation of Java (Oracle v. Google)
It sounds nice, but in practice, this advice is basically a more positive way of saying "Choose a horrible name that's impossible to remember" — because those are pretty much your only choices. All simple words are taken. A huge amount of sensible phrases are taken. You can get creative and go the Dribbble route, but now you get the downside of not owning the domain most people expect and the downside of having a horrible name.
I would love to switch to Python from PHP but I can't. The reason is I keep getting told to learn Python 2. Python 3 has been out for ages!

Basically I am concerned that I will learn something and create app's which within a year will be out of date. I am confused why Python developers are advocating that newbies learn an old and presumably soon to be legacy version of the language.

I remember when this kinda happened with PHP and versions 4 and 5. I still run across hosts who default to PHP4!? WTF? Its 2012!

Is PYthon3 really that new that you shouldn't pick it up or is this developers still refusing to update?
"Whatever happens with the game now, they’ve made out like bandits."

Am I the only one who thought 'and jolly good luck to them'?
Keep the $10 bill because it is very commonly used in restaurants ($6-7 meals + tip). Nobody will miss $2 or $50. I personally won't miss any coins except for quarters.
I don't understand. Is resume formatting that big of a deal for job seekers? I assumed (perhaps wrongly) that formatting a resume was trivial, but that managing your job search effectively was hard.
So, you are telling me that it is a good thing, a normal behavior for a reliable tool to just ignore instructions I send to it and do nothing with it, not even a warning? So when I migrate a database, I have to carefully check each and every instructions (schema and data) and make sure MySQL did not "decide" it was not worth it and just silently threw it by the window?

I have hard time to believe you are serious here...
Iran makes its own anti-virus software - would you buy it?
If by "all the functional idioms" you mean "doing stuff with functions and whatnot", then by all means, recommend JavaScript.

However, once you get done playing with maps and folds, you'll find that there's a whole world of more important things that the functional paradigm gives you. And these depend on types, and referential transparency.