skysight-inc/HackerNews huggingface dataset:
About ten years ago, I had a minor epiphany while working on a system that used a standard client/service architecture. We were having "stability issues" with the back-end (trans: it was going down more often than a two dollar hooker). If the back-end service didn't responding, the GUI just hung; there was no indication for the end user that there was a problem - it just hung until it timed out (and because of the nature of the system, the timeout was relatively lengthy).

This caused a certain amount of consternation amongst our users (because they were losing money as a result), who would far prefer to be told that the system wasn't working than to have to wait for a timeout. So I got the GUI developers to add in a little bit of logic along the lines of:

if the response received from the back-end service starts with the string "ERROR_MESSAGE"
then parse and display the ensuing text to the user
else continue as normal

We then knocked up a simple little service (using netcat, if I recall correctly) that squirted the contents of a text file back in response to any request, and echo >>'d the username supplied with the request into a text file. From then on, if the back-end service had a problem, we would redirect the load balancers to point to the mini-service so that any users would get a nice friendly error message (that we could edit/update) telling them that there was a problem.

When the outage was over and we'd confirmed everything was working properly again, we'd would simply re-point the load-balancers back to the actual service IPs/ports, grab the file with all the usernames and email/call them to let them know that the service was back up. (We had planned to build more logic into the GUI and add an "Alert me when the system is back up" button to the error dialog, which would cause the GUI to automatically/silently re-try every X minutes and alert the user with a pop-up when full seervice was restored but we sorted out the stability problems before we got a chance to implement that).

Maybe Dropbox should implement something similar so that, instead of being stuck at "connecting", users get an error message.
Can you elaborate? I don't see how you'd be able to come up with something 'simple' that still has a decent performance. Especially if the number of acceptable errors is configurable and 3 (or higher).
Looks nice.

Slightly OT, but can anyone recommend a high-quality Mac-friendly alternative to Wireshark? (Paid is okay)
For reference, the 15-minute law mentioned in the article is a restriction that companies like Uber have to force their customers to wait at least 15 minutes before getting a ride. Given that the average black car gets to a customer in 7 minutes, this is a serious handicap. [1]

This sort of law feels really backwards. It degrades the service of companies like Uber and imposes negative externalities on society--more cars pointlessly idling and waiting around, more traffic congestion and so on. The idea behind a market is to improve quality; trying to "improve" the market by arbitrarily degrading the quality of some competitors is exactly counter-productive.

Given that the taxis have gotten this absurdly protectionist restriction in place, it's even harder to empathize with their protest. Actually getting violent is even worse.

Of course, it's also important to remember that this is likely an extreme action by a single individual and does not represent taxi drivers as a group. In fact, there is no immediate link between the attack and taxis, although it seems extremely likely. That said, even ignoring the violence, I do not really sympathize with the taxi protests here.

[1]: http://techcrunch.com/2013/12/28/uber-lecab-and-others-now-h...
Jeese this is a tough crowd.
I thought it looked great and made the brand look great.
Kudos to the designers.
Glad to see the taxi drivers of Paris taking action. Uber are just another scumbag American company, trying to turn a skilled profession into an anonymous commodity service, and in the process ensure the CEO makes millions while the employees receive peanuts. This doesn't fly in a country with such strong Unions and solidarity as France.
Can we please stop that type of comment?
I guess...maybe I am wrong we are here because we share common interest in new technology and future, not racisme and old jokes :).
CodeAbbey - website for really newbie programmers
Hi, Friends!

Few months ago I've started developing a web-site with a goal to provide some help to newcomers in programming.

http://codeabbey.com

In its core it is a collection of programming problems - to solve them users should write some code, process random input data and submit correct result (so it is result which is checked).

After a while I decided it would be useful to allow people to see each other's solutions - of course only after the given problem is solved by this particular user - so one can learn something comparing other's code with one's own.

Later I came to idea it may be useful to allow comments under solutions, so people can write some messages pointing out potential problems or disadvantages etc.

This functionality was added only few days ago.

As you see, I'm a bit slowpoke in inventing features to my site. So I would be glad to be hinted with more ideas about things to be probably added to it.

For example right now I have no clear idea how to popularize comments system just implemented. Probably commenting should give some "compassion points" to user and some tasks should require spending some of these special points for solving. Not quite sure it would be good.

Thanks in advance for all your hints, advice and ideas.
No problems on Windows with i7 and GT 430.
Once you have no debt and a place to sleep, the rest of it is pretty cheap and easy to obtain. I own my house with no debt - a minimal income is quite enough for me.

(I'm in the UK, so the NHS deals with health care.)
The Mobile On-Boarding Myth
The luddism approach never wins, but there will always be people who will try.
Classic!

"There is no such thing as bad publicity" by Ionut Botizan

(Source: http://productforums.google.com/d/msg/chrome/mlAD1ygc0v0/1MP...)
I think the protest is not directed towards the right direction, but Parisian taxi drivers need to buy a license which is like 200 k. They see this investment go down the drain as new businesses like uber appear.
Here in Berlin living in shared housing post-college is quite acceptable. It doesn't necessarily mean that you share much, but it's always more communal than living alone. I think it's a very good thing, and I'm happy to see that this is becoming more common in other cities too (sometimes for 'bad' reasons like housing prices, but still).
The issue at hand never annoyed me too much. It can probably be fixed with a browser extension (I'm using HN Enhancement Suite, maybe contact the author and start a discussion?)
Oh man, you don't wanna take on the french unions. They'll protest when it's cold and burn paris to warm the place up.

Truck drivers starved the country of petrol a few years ago.

This ain't America.
Downvoted. I think the ";)" indicates pretty well that this is tongue in cheek. I wouldn't draw any conclusions about the Haskell community, which is very nice, from this.
This isn't really generics in the C++ or Ada sense. This is code replacement using preprocessor macros and the stringize operator to create homogenous containers.

Generic programming usually implies that a package, class, or function is parameterized by types. And a generic/template instantiation phase has been added to the toolchain after the preprocess stage but before the type checking phase.

I would have called this homogenous containers.

>> Now you can use generics with arrays and sets just as you normally do in Java, C#, etc.

I would have documented that as:
"Now you can use homogeneous containers with arrays and sets just as you normally do in Java, C#, etc."
replace the word unions by mafias
>If the GFW didn't block Facebook or Twitter, they would have market shares in the mainland similar to those that they have in Hong Kong and Taiwan.

They would have some market shares but not very much, just like Amazon.com is a small player and one of few foreign survivors in China although I also like its service. In the past, MSN messenger, Yahoo, Google, eBay, MySpace, to name a few, all failed in competition with local China players. That is not by chance.

As for management, the biggest problem of foreign companies is that decisions especially critical ones are always made in USA, which is normally slow and ignorant. And founders and top guys in China companies(still very young at their 20s or 30s) like Pony Ma at Tencent and Robin Li at Baidu can directly attention the specifics of key products or services even at pixel level.

Who will win?
Docker and LXC looks interesting. What is your experience of the performance overheads of using containers?
Bitcoin 2014 – Top predictions
> Of course the CIA doing its job to track down a murderous thug is somehow "messing with the biosafety" of the planet.

It is. Discrediting vaccination programs is far more dangerous in the long run than any single terrorist. Even if he is the mastermind behind 9/11. The fight against polio is more important than this war on terror, and also a lot more likely to be successful. And the CIA is discrediting it by compromising it for the search for Bin Laden.

It's great that they found him, but now a lot of people in one of the last places on earth where polio is still a big problem, know that the CIA could be behind any vaccination program. People will refuse vaccination, because it might be used to track down a family member, and polio will continue to exist. All because of the CIA's stupid move.
That was my point, as subtly as I hinted it. Some people just don't have a sense of humour though. Or maybe I'm not funny. Or maybe they're too attached to what I'm poking at. Who knows.

https://news.ycombinator.com/item?id=7049636
A news item a short while ago had the similarly phrased "router in PHP" and for a moment I thought someone had actually used PHP to write a layer-3 networking device.
However, Uber should be more aware of what they're 'disrupting'. Strong unions see this as a foreign company threatening their livelihoods and there will be push back.

Yeah, this isn't USA. There are actual employment rights and strong trade unions here.
This is interesting - a 'clever' trick to give the functionality of generics.

Although one could argue that its also fantastically stupid by using a macro in such a way that isn't obvious on inspection and might necessitate reading the header.

I do quite like it however...

I'd imagine that Objective-C prevents any of the performance benefits gained by the compiler knowing the types with its heavyweight super dynamic late binding golden sledgehammer of an architecture. I'd be curious to measure it when I get some time...
For example:

https://botbot.me/freenode/docker/msg/5836039/
I've been using Docker as a sandbox for an online contest judge. I'm working to add in SELinux into the Docker container as well. So far, its been working great for me.

I'm not sold on using Docker for development though. I haven't attempted to setup multiple Vagrant machines so maybe that's why I'm not seeing the value, but setting up single dev machines through Vagrant is just so simple and straight forward.
This seems like sarcasm, but if it isn't would you care to elaborate on how France or its citizens are harmed by Uber? You seem to have first praised the Taxi drivers for lashing out at Uber drivers, but then you claim that Uber is a "scumbag" because of the way it treats its drivers. Isn't that contradictory?
How to Recover Notes from iPhone 5/4S/4/3GS
From this detailed step-by-step guide, you could learn a rewarding method about how to recover notes from iOS devices.
Your facebook and twitter feeds aren't infinite, you subscribe to a limited number of other users. All the twitter clients that don't suck will show you your twitter feed starting from where you left off. When reading, you scroll towards the most recent tweeets, which is where your feed ends.

Obviously, as it is a live feed, it doesn't "end", but if your feed doesn't grow faster than you consume it, you will complete reading it in the same sense you complete reading your email inbox. It's a personal preference if you treat twitter like an email inbox (read everything) or like daytime tv/elevator music (a never ending stream of noise).

If you start browsing random tags on flickr, or randomly stumble through global twitter feeds of infinite depth, that is no difference from the streams of tv or radio that existed before too.
Improvements to Mathematics on Wikipedia
You don't need to be suicidal to call the SF Suicide Prevention line. From http://www.sfsuicide.org/get-help/call-us/: "Trained volunteers are available 24 hours, 7 days a week to listen and help you sort things out. You do not need to be suicidal to speak with us." I don't know for sure, but I suspect other prevention lines are similar.
yeah, meant in the kickstarter sense.
Anyway, thanks for the comments and putting time into explaining. see you around and have a beautiful day.
In the United States, student loans are almost impossible to get discharged, even in the case of bankruptcy. That is a large part of why people taking on massive student debt is so oppressive. But the original point I agree with even more due to that fact. People in their late teens and early 20s usually don't know enough about the world and where they want to be in it to sanely commit to the amounts and terms of these loans.
What makes a great mobile developer?
$ xxd -i some_file
Frontback is the new Instagram - But a lot more Awesome!
Eating off the Floor: How Clean Living Is Bad for You
Except for the part where what Self calls prototype has no equivalent in javascript (constructors are close to Self's `copy` message, but not quite the same) and what javascript calls prototype Self calls mixin (or traits, depending whether they've got ancestors up to the lobby themselves). And a Self object can have multiple mixins and add or remove them at runtime.
The one thing that never stops boggle our minds is the infinite. Nobody wants finite things, and I don't believe finite things are genuinely good for us.
http://hestia.typepad.com/flatlander/2012/01/action-func-voi...

I fail to see how it is an "obvious critical flaw" :)

You have to create a separate overload that takes an Action instead of a Func,
and has an identical implementation except for omitting the return keyword.
Granted, that’s not much work for a simple helper like the above,
but what if it were more complicated?

No, it's simply not true that you need "an identical implementation except for omitting the return keyword"...

Eg. this would do the trick without repeating the implementation: http://pastie.org/8628864

Just two one-line overloads as entry points.
Really cool website. I've noticed that really cool brand websites for large Fortune 500 tech. companies tend to be done by a high end agency rather then the companies' own teams.
This calls for the police to get involved and bring these attackers to court, plain and simple. How anyone could imagine this is a valid form of protest is beyond me.
As a French, I hate taxis as much as other people. I guess the taxis drivers only have other taxi drivers as friends. Even the government is acting out of fear. I suppose the government could lead a battle, but they have to pick them wisely since they have low ratings, and gay mariage have already quite strained the support in a very conservative country. Moreover that would be seen as a movement to ease the entry of a foreign company stealing the money from french ones.
Times are changing and people tend to resist change.
Unfortunately many times it gets violent. Unions are a dangerous thing to mess with, but in the end the customer convenience should win.

All they need to make sure is that Uber pay their proper taxes in France. ;-)
Would it be of any benefit if Uber cars were less identifiable?
> This is like Hotel owners hitting home owners for being host on Airbnb?

Hotel owners are typically a bit above minimum wage.
Almost no one is "pulled over" in the UK for speeding. You get caught by a speed camera and a letter with a fine and possible court summons drops through your letterbox a few days later.
fn add(a: u8) -> u16 {
let u15 t: a+7
}

I admit it looks more wordy, but I think this is a good thing. It might be nice to allow it but issue a warning about widening types.

As for the others, I kinda disagree. Enums allow for some nice syntax with match. Compare:

match error_option {
Ok(Some(a)) => {},
Ok(None(a)) => {},
Err=> {}
}

with

match error_option {
Error.Ok(Option.Some(a)) => {},
Error.Ok(Option.None(a)) => {},
Error.Err=> {}
}

See? It would get tedious fast with match pattern.

I had never had problems with mut. The syntax is clear and unambiguous. It's fine as is really. I actually like knowing which pointers are mutable, by keyword instead of typing arcane stuff like @~ptr, @&ptr. Seeing how @ was a sigil for pointers this would make most people do a double somersault in fear of the GC pointer returning.

I like macros with ! It tells you magic happens here beware. Not having those you'd have serious problem understanding where errors are once macro expands :?

Ternary operator? Wth? You can just use if as a superio ternary (endless chaining) operator.

let ter_demo = if a.is_none() then 3 else 2;
Not a fan of unions or labour rights? Why call them mafias?
I suppose it depends on who you are. If you have a family and a mortgage, the answer may be yes.
There are lots of startups that simply couldn't exist without early investment - anything with high upfront costs combined with economies of scale. I founded a payments processor 3 years ago - this is a good example of such a business.

It's possible we could have bootstrapped, but it would have been a very different kind of business.
> I would have documented that as: "Now you can use homogeneous containers with arrays and sets just as you normally do in Java, C#, etc."

... and nearly nobody would have a clue what you meant.
The email refers to a hole having to do with bitly. Anyone have more info?
Singularity: The robots are coming to steal our jobs
Does anyone else have an i7 4702Q with a HD4600 running Chrome (Windows 8.1)? Is smooth scrolling, actually smooth for you? It doesn't for me, and even Internet Explorer (which surprisingly runs most pages 60fps smooth) runs the page really badly.

edit: firefox runs the page smoothly, but on other pages, still can't top IE's smoothness. What a weird world it is now.
Is “Lean Startup” Right for Your Idea?
>Promote you? Why would you expect that?

Because that's what happens when you spend five years in one job and spearhead a large project independently.

You've successfully proven my point: it's an apprenticeship. The problem is, apprenticeships are supposed to be followed by a career as a master practitioner of the craft you apprenticed in. If there are thousands of apprenticeships in science each year, and no permanent jobs as scientists, then the guild structure is unbalanced and the guild is responsible.
are you saying that being on minimum wage is a justification for violence?
But also criticism of taxis. Have a look at http://transports.blog.lemonde.fr/2014/01/12/pourquoi-je-nai... for an example.
Chris, I don't agree, it's you that should be ashamed: Expletives say the most about those who use them, not much about anything else.
Not even 100 years before even the most powerful man in the world could do nothing to fight this disease, now even the least fortunate can avoid having to suffer from this. A great victory for humankind.
> It degrades the service of companies like Uber and imposes negative externalities on society

What are you complaining about? This is just the french way.
I have a 3y old 1.3GHz cpu with integrated graphics only on Gentoo, but it's so smooth, I can't believe it's not a video! How do they make it so smooth?

When I click the last page button on the right side, it runs smoothly through all animations, same when happens when I scroll around. Can't wait to see someone make a blog post on: "This is how Sony exploited HTML5 to run Smooth Parallax Effects on their Page".

I ran it in Firefox with about ~100 tabs open having over a dozen addons, an IDE opened and npm install running in the background.
I'm also in France and I am very happy that workers actually have rights here (as opposed to my native land, the USA).

But you always must keep diligence, because unions can devolve into a mafia. The taxis here in France are an example of that. I have never had a single ride that was the correct price, and after many attempts I gave up. I'm certainly not alone. People have been trying to disrupt and get around them for ages but they fight as mafia do: fiercely.
I know, I am from Paris :).
But my point is "why not accept it's maybe time to change some "things"".
Why we use Uber? it's geek (ok its a point) but mostly because:
-nice and clean car
-nice people
-good service
-moderne (phone, payement,...)

I am sure it's possible to modernise cabs of Paris (and other cities)(hmm maybe time to think about a new project! ;))
Free screencasts to learn Go
I don't think we should compare the taxi lobby to an union. French politicians are scared of them for one reason : they keep talking about politics to their clients. Violence isn't a such a nice way to get what you want.
I'll share this - not that I'll be any help (no where near you). Hope he turns up ok!

My friend disappeared before and it's amazing to see how many people we reached with just facebook and twitter. In my case it sadly didn't have a happy ending - but the support you receive from complete strangers is just mind blowing!
> I would also note that the taliban were against vaccination before this happened. So let's not pretend that this is the reason they're against it

They may have been against it, but now they have justification to be against it. The CIA has given them a much stronger argument to warn people not to get vaccinated: it's a front for the CIA to find and kill people.

The CIA has politicized vaccination, and that was recklessly irresponsible.
The way I think of a union, it's an organization of employees who bargain with its employer.

Unless the entire taxicab industry is nationalized by law in France, it makes no sense to me that a taxicab union is protesting against another company disrupting their business. That's just being a thug.

You should have the right to organize for bargaining of salary. Imposing an artificial handicap on another business model is really backwards.
Many investors are not very kind to founders with families and mortgages. YC itself is a horrible deal for anyone that's not a college dropout. Move out to SF for 3 months, leaving wife, kids, and property behind to fend for themselves, shack up in a tiny apartment with a co-founder, and get paid nothing for $20k and 5-7% of your company? That's alright man, pg can keep focusing on his college dropouts (of both sexes!).

Even more traditional investment arrangements put a great deal of focus on "equity compensation", i.e., only paying founders and employees the bare minimum for survival and "making up" the lacked payment with equity. Not a very realistic deal for an engineer with a family and mortgage who makes 120k-150k in the job market to take a startup gig for 60k (multiply numbers based on local cost of living).

The startup community is missing out on a lot of extremely useful experience and maturity with these cheapskate shenanigans. Of course, the investors are happy to lack this, because exploitation of naivety in founders is one of their primary mechanisms to maximize profit.

I've sought funding a few times myself and always backed out because I was getting offered a sucker's deal. Yes, it's much slower and much harder to bootstrap, but unless you're desperate, taking investment is not worth it, because investors are going to rake you over the coals. And that's the long and short of it.