skysight-inc/HackerNews huggingface dataset:
Yes as an European I find it really odd how Americans get to put up with consumer abuse, just because "this is the way things work".

And this is the country where supposedly everything is done in the name of consumer.

And listing taxless prices and hiding the cost of service from me by expecting me to tip waiters.

This is also the reason why I find this article distasteful. So if you are really that sure about your position, why the hell don't you raise your prices 20% or even 30% for that matter. And when people ask you why are you so expensive, you can tell them that you pay your people fairly.
Let’s talk about Percona Server 5.6: Enterprise Grade MySQL (webinar)
Appeals court strikes down NYC's big-soda ban
UK: ushering in an age of institutionalized censorship of open information
OP here. Awesome story - thanks for sharing. I really hope you get back to where you were. Best of luck.
So why are they trying to stop the FOIA request if they did nothing wrong, as they claim?
Oops. Well, in that case, I don't see a lot of service fees at restaurants that don't have a notice of it on the menu ("18% for groups over 6"), which I would assume covers them.
They still have http://gu.com set up to redirect :)
Exactly. I share a very very similar story with the author, execpt that I am not successfull yet. His story had everything to inspire me, someone who followed my exactly same path and made it.

Then, after reading it, I feel that he is more interested in creating a brand, building an audience, than sharing his story and inspiring people. I think I will have to find out some other "learned to code and created a company" role model.
Anyone complaining about Android fragmentation should ask themselves if they would prefer if every device would go the "Apple way" and make their very own operating systems for their device. Would this really solve fragmentation?

Here is how I see the "Fragmentation issue": My customers are using one of maybe 800 or so different devices, with maybe 100 different software systems powering them. That number was about the same before and after Android came about.

Now if I want to write a program for all my customers, I need to theoretically write at least a hundred different applications. That sucks. But today, thanks to Android, like 95 of the available operating systems are based on the same development kit, Android, and so instead of writing 95 different applications, I make one and then adapt a little if necessary.

Android is a defragmentation platform. What we call "Android fragmentation" just means that the defragmentation works 90%, not 100%. People can use Android to build lot's of different operating systems, which are either very similar or very different that what is available in the Android open source project. But because it's all based on the same code base and runs against the same compatibility test suite, a developer like me can target many devices and many operating systems with a single code base. That's awesome.

iOS and Windows are fragmenting the market for me. They are not compatible with Android, so I have to write a separate application for these systems. Often from scratch.

A few notes to further explain this position:

"operating system" is a very generic expression. For most people today an operating system is the software that is installed on the device minus applications that the user installed himself.

E.g. the app store, itunes, Location Services, the User Interface and the push notifications system are considered features of the iOS operating system. But on Android based devices there are independent from the Android system. You can make your app run Holo no matter what Android version is installed on your customer's device.

When speaking in iOS terms, you can say that 90% of all Android devices get updated once per months or so, when another update for Gmail, Google Voice Search or GCM arrived.

You do not need to depend on Google if don't want to make your software compatible with Android. There is no dependency from Google in Android, all their influence comes from the fact that they own the most popular third party app suite that every OEM wants to license on their device. If and OEM wants to go their own way, like Amazon, Google has no way to stop them.
QUIC is the prototype; if you build an experiment that doesn't work in the short term then you never learn from it and you can't fix the flaws you didn't learn about. Once it's finished maybe it could become a real protocol instead of layered on UDP.
It may be coincidence, but it would be naive to think that there is no sophistication or planning in the public relations of a large organization.
You're ignoring price discrimination. Many who would pay $10/month for unlimited streaming would just go back to torrenting if you took their shiny toy away, they're NOT going to spend that $10 on iTunes instead.
Although the author with the Indian name doesn't mention it, Denmark, among Western European countries, is known for its racism toward non-white immigrants.

So if Denmark is in some way "better," it's only better for those who are allowed to join the club. Of course, that doesn't mean others can't adapt Danish ideas about education and redistribution to our country.
Microsoft Excel: The ruiner of global economies?
Someone had this argument (can't find the link) - for every ace Java developer out there you have hundreds of companies with a relevant position to compete over her / him. For a Scala developer position, you are competing with less companies, so you might as well be able to fill the Scala developer position faster than the Java one.

Regarding speed, I don't mind about the runtime speed as much as compile speed, runtime speed is getting very close to Java, and is much faster than popular dynamic languages, I think it's a great alternative to JRuby, Jython or Clojure in that aspect.
AngularJS and Password Managers: Can’t we all just get along?
Unlimited free cloud storage through your email.  Fast, simple, free.
Firefly announces partnership with Olark (YC S09)
Having spent time in Bavaria, I know they really enjoy Kren, which is horseradish. Generally you can buy a plate of cold meats with grated Kren. It will set your eyes watering.
There's plenty of discussion here (and the original thread back in March) about the social/moral/ethical issues behind this. What about the legal side? Is there any way he's doing this legally - in such a way that the SEC, FTC, or similar gov't entities wouldn't shit all over it if they decided to pay attention? Even if he created a corporation with real stock, is it possible that he's actually legally bound to it?

In other words, does the continued value of the stock hinge on your faith in his word, and your faith that the government won't someday intervene?
It sounds like profit sharing may also be a solution to the inequity of wages between the back-of-the-house and the servers.

It seems to me that if everyone in the restaurant (or perhaps just those in the kitchen) made a percentage of the profits of the restaurant, that productivity would increase all around and the sidebar between the kitchen and the servers wouldn't carry nearly as much weight.

Is profit sharing prevented by regulation?
The screen size diagram misses an important extra complication: the same pixel counts and screen sizes do not always match up. In this room right now there are ~7" devices with resolutions of 800x<whatever> (where "what-ever" varies depending on aspect ratio), 1024x? and 1280x?. When the G2 Nexus 7 turns up there will be at least one at 1920x? too. Similarly resolutions of 1280x? can be found on devices with physical screen sizes from 4.3" to 10.2".

Of course for many apps, if written properly, this simply doesn't matter - but if you try cram too much on-screen assuming 1280x800 means a 7" device your app may be difficult to use on 4" one.

Most of the people you see complaining about Android fragmentation are people that are avoiding Android because they are scared of it (rather than having tried to deal with it) or people who would prefer you to buy an iOS device that their app is already available for instead of an Android one that drops you out of their target market until such time as they port to Android.
Building an iOS Group Messenger App
And if they were to enforce your rules, next week we'd have a fantastic article blasting Facebook for "Suppression of an Open Forum". We, as a society, took a hard stance long ago: People can say what they want, regardless of how much you whine and complain. Nobody has to listen, and Twitter still has a "block" button, but when you get your knickers in a twist you're usually giving the trolls what they wanted.

The other option is for those marginalized groups to be completely silenced. You can't have it both ways. "Community Standards" that are just your standards lead to tyranny.

From a profit standpoint: Is Facebook really going to give up the 17% of US voters who think Obama is a dirty muslim just because it offends you?
The promise of Android was to be free and open. Did you not expect fragmentation?
So demanding extra money to do their job with a smile just seems too weird for me.

It's funny how famous Americans are for disrespecting other cultures while Europeans feel free to call anything American that differs from their own cultures "weird" or worse.

There's plenty of things about Denmark that I find "weird" but I was raised not to insult other people's culture so I won't call them out.
the tipping phenomenon only occurs because the resturant industry gamed the system to legally pay their wait staff below minimum wage. So now I got to tip the wait staff because you can legally pay them 4 bucks an hour? OK... Ohhh and tip pools are illegal most places because why?, ohh yeah because management consistently takes the wait staffs tips and takes a cut or redistributes as they see fit to incentivize their business. so thats why its illegal many places, so instead they call it a service charge to get around the law AND take a cut or redistributes as management sees fit to incentivize their business...

the whole reason for tipping is because management can pay the wait staff less than minimum wage, cooks dont get tips because cooks cant legally be paid lowball rates, so why is it good that this guy is STILL paying his wait staff under minimum wage and then not allowing them to be tipped so he can incentivize his other staff?

Why dont you just charge me for the food however much it takes to make your business stay profitable and not force the customer to worry about the details?
I do that as well. It's a belt and suspenders approach.

Also, by leaving cash there's never any math involved either as the pre-tip total is the final total.
> An alternative that worked really well for me is "do not push broken code". Linus is saying "If you pull at a random time, you might get cruft in your local tree". Why is that?

It's not about pushing broken code, it's about having a very complex code
base and you just can't foresee how each change will behave before it has
been tested by a lot of people on a lot of different machines.

A linux release is a pretty good point in time to get a quite well tested
version and therefore it's a good base for your changes and to be able
to test how your changes - only your changes - behave.
Microsoft doing well.. where it counts.
SmugMug Revamps Its Site, in a Challenge to Flickr
To be fair, you get terrible service in all aspects of French, Italian and Spanish society. I can't speak for the others though.
You're in the wrong story. You want this one: https://news.ycombinator.com/item?id=6127246
Why Robots Are Stealing Your Dinner Reservations
It may not be meant to make any sense. I worked in retail (probably like most people, ever) and we seemed to have a variety of signal-type words that made no sense to customers...or management. Makes the job more fun.
Speaking as an android app dev there are some challenges but your instinct is right. I've rarely run into device specific issues, android has decent support for building flexible layouts, there are official libraries for bringing some newer version ui components to older versions, etc. Overall while certainly more challenging than writing for a single known device its not dramatically difficult at least for basic apps.
I prefer what I tend to call "micro ORMs," for lack of a more formal classification. From my point of view, a micro ORM does not attempt to fully replicate the entire breadth of a data model in code--that is, it does not automatically traverse relationships; does not enforce the constraints of the data model; does not require that your object model align with your data model.

Often, a micro ORM will allow you to quickly construct a list of objects from the resultset of an arbitrary SQL query and provide some programmatic way to handle relationships.

I don't think the performance penalty of high-performance micro-ORMs is great enough to justify avoiding their use on performance grounds [1] (see ORM column at right of charts). In the linked test, several micro-ORMs fair quite well, and incidentally, Wicket is using Hibernate, which I consider a full ORM. Not my particular cup of tea, but just goes to show ORMs are not necessarily a huge performance penalty.

Edit: Using our test implementation [2] as an example of what I mean, our in-house micro ORM will fetch World objects from a World table as so:

@Entity
public class World
{
private int id;
private int randomNumber;

public int getId() { return id; }
public void setId(int id) { this.id = id; }

public int getRandomNumber() { return randomNumber; }
public void setRandomNumber(int randomNumber) { this.randomNumber = randomNumber; }
}

public class HelloHandler
// ...
{
@PathSegment
public void multipleQueries()
{
// ...
for (int i = 0; i < queries; i++)
{
worlds[i] = store.get(World.class, random.nextInt(DB_ROWS) + 1);
}
// ...
}
}

I've seen similar approaches in other micro ORMs. "Put" and other operations are generally provided, but composing joins using nothing by Java code? That's what a full ORM does.

To answer your questions:

The chief advice I would provide for writing clean database access code without an ORM is to use prepared statements as much as possible. Doing so allows you to avoid the potentially disastrous outcome of not correctly escaping user-provided data.

1. I wouldn't agree with the premise of the question. I would use an ORM for simple CRUD and then use an ORM's "build objects from a resultset" feature for complex SELECTs.

2. I think you do want at least a micro ORM to deal with this scenario. To be clear, a micro ORM would typically automate the work of constructing objects from a resultset using reflection (or similar) but probably doesn't come with much baggage (no external configuration files and no attempt to replicate the full complexity of the data model).

3. In my experience, cursors and read-write resultsets are not as high-performance as one might expect. If you're considering using those features in order to gain performance, I'd encourage you to do some simple tests to confirm they yield the performance benefit you are being promised.

[1] http://www.techempower.com/benchmarks/#section=data-r6&hw=i7...

[2] https://github.com/TechEmpower/FrameworkBenchmarks/blob/mast...
That's maybe a culture difference.
Here in italy we prefer to not have the waiters constant near to you but to call them only when you need them. They are "allowed" to come near only when they see all the people in a table have finisched their dishs.
Also, it's rude if the waiters give_you/ask_you_if_you_want the bill before you ask for that.
As someone who writes for a company, I understand the goal is to get a person to read your article, but I feel uncomfortable by the disingenuity of the title. It tells me one thing, then the article ends with the opposite conclusion.

Sure, you got me to read it, but it felt too forced/contrived and salesman-like.

Anyway, I'm a beginner in programming/coding/scripting. I take courses online. After work. On the weekends.

I'm sure there is certainly a group of people for which what Vinicius says is true, so in terms of that, it's good to have someone write this out. However, it is more important to see/analyse if what he says applies to you.

What he says does not apply to me. I am 30 years old, have just started learning to program, and my birthday is a week away.

I am genuinely interested in it. My mind always worked in ways which help when programming. While I spent most of my life in the (liberal) arts, I think there is a strong correlation between my excelling in my previous endeavours with my capability to grasp programming concepts. I can't say my approach is the only way to do extremely well in it, because, as they say, there is more than one way to skin a cat. But I guess this middle-ground type of writing is not very good copy.

All that aside, congratulations to Vinicius for learning to code.
It's true that there are all sorts of interagency entanglements, but MIT doesn't have to participate in them if they don't want to. They could take a more cautious approach to which police end up on campus, at least for the parts of the campus that count as private property (excluding public roads going through the campus, for example). Unless in "hot pursuit" of a suspect or with a warrant, the only police that can enter MIT property are those that MIT gives permission to.
Agreed. It's amazing the conditions of some of the Cessna's that come in to where I work... It's often insanely difficult to tell how old it is just by looking at it (Though not every aircraft is taken care of the same).
I'm quite certain this is a cultural difference. What you find to be rude or inattentive is considered polite in some European countries. For a waiter to be appearing at the table often, unsummoned, is rude in Germany, for example.

If you want the waiter, so etiquette says, you'll summon him/her.
Isn't the real problem that the industry has driven itself into a corner by charging unrealistically low prices and giving consumers a distorted view of how much restaurant experiences should cost? A well managed restaurant should be able to pay its staff a decent wage and turn a profit based on the prices it charges for its dishes, end of story. If a 20% tip is basically mandatory in the USA why don't all restaurants unilaterally up their prices 20%. And then that would allow the odd generous guests to tip/overpay in the somewhat rare scenarios where the establishment has genuinely excelled. Sounds like you got yourselves into a right old mess.
Then there is this: It is things like Angry Birds that provide the economic engine which funds cancer research.

If there were no Angry Birds, or countless other "does it matter" products, the amount of money that would be available for charities or research of all kinds would be drastically reduced.

These "does it matter" products create wealth that did not previously exist. Yes, create wealth. They don't steal from research. They create economic value that did not exist before.

There is nothing systematically broken here. However, the system absolutely does break when some authoritarian power decides that they shall decide which products shall be produced, and how any existing wealth shall be apportioned. It has NEVER worked in the history of humanity. Call it unjust if you wish, but one's sense of social justice does not change the way economies function. An economy is based on human action. Humans act on fundamental needs. Sometimes they act irrationally. Nevertheless, on a scale, they act in ways that are predictable and consistent. The principles of human action cannot be changed. They can only be observed and exploited. Any economic system that is predicated upon changing human action will fail.
Not working for me either, but I have to imagine the combination of image processing and HN front page isn't terribly kind to a webserver.
I know what you are saying, and agree. But consider: I have state that I truly need to be global - something I read from an INI file, the command line, or internally calculated, it doesn't much matter. Is not the alternative to a singleton having that state replicated all over the place? And then you introduce model/view/ signals, have to deal perhaps with race conditions, and so on. Then, just try to grep for the existence of that state in your code.

Like anything, it's a tradeoff. Let's say I have an app with 10 OpenGL windows, and I want to simultaneously control the lighting model for all at once. A singleton gives me an easy way to do that, but then the windows have to poll in some manner (which is perhaps not an issue, since they are in a render loop anyway). But I am brittle - introduce the requirement that each window handles light differently and the singleton is toast. OTOH, introducing a signal/slot or model/view architecture may be overkill for what I am doing. This might be a small corner of the code, and I just want clarity for the few times I go in to read it. I find it extraordinarily hard to understand messaging code - where did this message come from, what was the state of that object that caused it to fire the message, and so on. I think complexity goes up at least by 1 order of magnitude when you have to maintain state and time in your mind to understand a program.

Perhaps not the best example; so consider command line arguments. It's read only, set once, but perhaps needed to be accessed by many different parts of my code. A singleton or 5 seems pretty darn clean to me. Again, not without it's tradeoffs, but the alternatives, to me, seem worse. You can pass, pass, pass, the data through methods and constructors until it gets to the code that needs the info - in which case you have infected a lot of code with rather superfluous (to them) knowledge about command line settings. That's brittle, and you end up touching a lot of code when you add something to the command line. You can do a signal/slot or model/view, which can be quite powerful, but you may be forced into a specific design by your sw stack (they have a model/view architecture which you are using for GUI or something). So your code is brittle by being coded to a specific API, and again, it rather obscures where this data comes from. Plus, this forces the command line reading code to know all about your specific API, how to format the signal, when to send it (command line reading is often done well before the whole stack is started up and going, so you can't send a signal yet). That's very brittle as well. Can you take that code, put it in a test harness, and trivially write tests for it? Probably not.

Maybe I am missing some obvious technique. But a few things in an app are in fact global. Trying to obscure that fact, to my mind, just makes the sw more brittle and a lot harder to understand and debug. Which is not in any way an argument for making non-global things global for convenience.
Mate Linux Desktop : When the Past Meets the Future - The Tech Veda
In case anyone tries this: I called customer service (via Skype) to find out when I could expect my server to be online, and was told that OVH has temporarily discontinued Kimsufi sales to the US. The rep confirmed that it is a temporary ban, but had no information on when it might be lifted.

So I guess it was too good to be true.