skysight-inc/HackerNews huggingface dataset:
> IMHO, that's just ugly, uglier than foo/foo or foo/foolib or foo/libfoo.
> I also think that anything which has commands other than a single-command project which will always be a single-command project (there are fewer of these than one might think …) should put all commands, even a single one, in cmd/.

It's this kind of inflexibility in the directory structure of ones repo that really turned me off of Go. It's such a trivial thing, and yet the fact that Go lacks a level of indirection (package.json, Cargo.toml, pom.xml, etc) to map a chosen directory structure to the standard build tooling causes problems that get really annoying. For instance, there's a ton of Go repositories out there that are not go gettable because the author wanted to put source code under a src directory and hacked that together using make. And good luck with organizing any repository that contains multiple languages where go is one of them...go's "code lives at the repository root" doesn't play well with others.

It all makes me sad since Go's decentralized dependency management (i.e. go get being able to pull/build based on a meta tag) is brilliant and I always hate having to rely on a single, centralized repository to deal with dependencies.
It's not just reporting. Editorial "news judgement" of what makes the front page has become much worse since news outlets started using clickthrough rates to drive article visibility. There are newspapers where the clickthrough rates are displayed in the newsroom. Some front page content in major newspapers now comes from Outbrain. The Washington Post has gone way downhill in news judgement in the last two years.

It's getting hard to find any news source with any decent news judgement. The Reuters RSS feeds are still reasonably good. The Economist remains useful. But it's hard to find a mainstream news source that doesn't suck.
Types aren't code.
Ask HN: Why doesn't Uber use UDP instead of TCP?
India has very bad mobile cell coverage and mobile tower/data congestion.

I remember playing Subspace (one of the first multiplayer internet games and now called Continuum) in mid 90's with a 14.4kbps modem and my ISP used a satellite link which delivered 850ms to server. It felt 10x more usable then Uber.

It's pretty easy to make your own error/sequence checking for UDP.

So what's the drawback of not using UDP?
Yes. It's unambiguous to everyone, and it sorts correctly without special treatment.
Just to add: the name comes from the convention of storing all those dependencies in a subdirectory named "vendor".
Charting the battle of man vs. machine in Education
CircleCI Docker Flow
A great anecdote in the 'we can't test this code' discussion -- for an aggressive two-week release cycle of this massively popular game, this level of testing has probably paid for itself many times over.
Yes, because standard business practice of fucking your customers over to the extent allowed by law is of course a result of regulations, and if governments didn't interfere then companies would not be fucking people over all the time.

Think about it. You probably owe your life to regulations ensuring your food is edible, and your medicine isn't poison.
>Note: This doesn't mean that type systems can prove _all assertions_ about a program, but type systems do indeed work as provers.

Type systems can verify certain properties about code much like a test does, but that's far from being a mathematical proof of program correctness (especially since compilers have, you know, bugs).

>This isn't necessarily true unless you test for all inputs (which tends to be infeasible in most cases).

No, it's necessarily true. The vast majority of type errors I experience get picked up during TDD. A small minority reach production.

It's very easy these days to write tests that cover an enormous range of inputs and outputs (e.g. see quickcheck).

I'd estimate that maybe 5% of errors I experience in production are type related (in a dynamically typed language). That's offset against quicker development time (which also eans ease of fixing the other 95%).

>I believe there is almost no overhead imposed by a static type system

I think that's wishful thinking.

>In practice I've never had a bug with the type system (that I'm aware of)

Which type system have you never had a bug with? I've dealt with several buggy, crappy type systems?

>In practice I've never had a bug with the type system

I've seen plenty of bugs caused by picking the wrong type.

>I've seen hundreds of bugs from incorrect test assertions.

So have I. Different types of bugs though. The kind which static typing doesn't help eliminate.
Url changed from http://www.securityweek.com/cisco-finds-backdoor-installed-1..., which points to this.
The judges take turns in one week duty cycles (http://fas.org/irp/news/2013/07/fisc-leahy.pdf). One can assume DOJ is smart enough to avoid the judge who says no.

Page 8 of the PDF is worth a read. The head judge of the FISC is claiming that non-government entities have the opportunity to be heard by the court because they can (1) refuse a court order which (2) triggers a contempt hearing if (3) the DOJ permits it.
> But what about all the other tests that you still have to do?

You should do those too.

> Which typically also coincidentally check the types (if I check that a value is > 2, I am also checking that its type is number

~$ python -c 'print "foo" > 2'
True

Now, on the bright side, Python 3 fixes that one:

~$ python3 -c 'print(2 < "foo")'
Traceback (most recent call last):
File "<string>", line 1, in <module>
TypeError: unorderable types: int() < str()

But most popular dynamic languages seem to have more where that came from. And if you have a sufficiently robust type system not to, then it starts to look a lot like the type system of a static language, minus the compile-time error detection.

> what is the value of "compile time", if the all this type checking makes the compiler so slow that just compiling is slower than compiling + running unit tests in a simpler language?

To the best of my knowledge, type checking is hardly the slowest part of most compilers. Many dynamic languages have somewhat faster startup times because they don't have a compiler, or they use a JIT at runtime. In any case, for many non-trivial programs, runtime dominates. A sufficiently thorough unit test suite may take significantly longer than compilation. And even if not, someone has to write the unit tests that handle what static type checking does for free.

I'm not going to claim that static typing is universally better; for instance, it's a lot harder to provide a good REPL in a statically typed language. But personally, I like dealing with as many errors as possible up front, rather than discovering them later on.
Yes, I use Safari! I actually have cookies set as "from current website only" - I wrote the wrong one and edited. I suppose it's possible that one of my contacts entered in my personal email in some new website/app referral and that's how it was mined, but I clear out my cookies fairly often and don't remember clicking on anything in the recent past.

Here is the note on the bottom of the email from Tradesy/Criteo:

To opt-out of receiving Tradesy emails, click here.
This message is personalized by Criteo Email based on your previous browsing behavior. To understand why you received this email and access Criteo Email privacy policy, click here. If you want to opt-out only from Criteo Email personalized emails, click here.

When I went to their email privacy policy, it doesn't explain how they got my email address.

I am very disturbed by this kind of stealth data mining. Is there a way to set up my browser to become more anonymous on the internet? Clearly my ghostery and ad block is not effective. I deleted my Facebook and Linked in after Linked in somehow spammed me to link contacts that I sold random crap to on craigslist (and probably spammed them too.) Somehow they both still deposit cookies. I am willing to pay someone who is familiar with this landscape to block trackers from invading my internetting. Or block websites that use criteo and similar. Is this possible?

I'm not one of those people that wants to go "off the grid". I use credit cards, I use amazon, I know what I'm getting into. It just seems like Criteo has crossed a line.
what would you use go for then?
Does the bulk hacking have anything to do with these Rule 41 changes? Sounds like a judge could issue a warrant for a thousand computers under the existing rules.

The real issue seems to be what evidence you need to have probable cause to search a thousand computers. I'm willing to believe the standard being applied is too low, but the Rule 41 changes don't change that standard one way or the other.
substack’s studio[0] deserves a mention! Quite minimalist but full of gems (if you can find them)[1].

[0] http://studio.substack.net
[1] http://studio.substack.net/-/recent
> It's pretty easy to make your own error/sequence checking for UDP.

At which point you've just re-invented TCP - and likely without the 30 years of weird/odd edge condition handling that TCP currently contains.
Sorry can you explain where his analysis is wrong?

He's not advocating for investing based upon animal spirits. He's explaining that it does exist and is a problem. Do you not believe that financial bubbles or manias occur?
Why do you presume that they are not lobbying? This recent articles would suggest that tech firms are spending a lot of money on lobbyists:

http://www.wired.com/2015/07/google-facebook-amazon-lobbying...

http://www.fool.com/investing/general/2016/02/09/which-tech-...

And this database would suggest some tech companies fall into the 5th highest spending industry: https://www.opensecrets.org/lobby/top.php?showYear=2015&inde...

So, a better question is, why, despite these efforts are we still seeing this? A few reasons, I'd guess...

1) Lobbying efforts by other industries and groups (law enforcement has a vested interest here, for example)

2) A tendency to wanting to look tough on crime and terrorism, especially going into an election year. Moderation and wise restraint are always a tough sell in politics

3) The Unbearable Asymmetry of Bullshit - politics edition. http://quillette.com/2016/02/15/the-unbearable-asymmetry-of-...

4) A propensity on the part of many in government to want to hold more power (closely related to point 2, but more self-serving).
Thank you very much! Corrected.
Research at Google and ICLR 2016
garkimasera's comment seems to be shadowbanned, so I'm re-posting his comment for visibility.

Ideally, I'd go to one of the top 4 departments: Stanford, MIT, Berkeley, CMU. Graduates of top universities with decent skills don't have a hard time finding jobs. I'll probably add Columbia and Harvard (middling departments, strong lay prestige) as (irony here) "safety schools". A quant fund isn't going to know the difference between a Harvard CS PhD and one from MIT (or might put Harvard higher).

Anything below the top 20 (and it's top 10 in the rest of STEM and top 1-2 in humanities) has to be purely for the education, though. You're right that a #40 PhD, while the educational program is probably fine, won't fix your career.

Also, the academic job market is terrible and that does not change if you have a PhD from an elite department. That's not what I'm aiming for.
Oh me too - my setup is usually split screen IntelliJ and iTerm2. But as projects grew larger, (and I wasn't a vim-er) a lot of the tools that come with a full fledged IDE became nice-to-haves (definition-on-hover as source code, click-to-definition, tree and object graph always open, and so on).

I know my setup isn't for everyone, but if you're looking for a good Go IDE experience, especially if your projects are of any size, don't pass over trying IntelliJ. I spend 95% of my time in Go now, and IntelliJ has been surprisingly good.
Given how car media consoles are so different and poorly coded, this is a worrying point! Would be good to make a protocol for cars to communicate intentions to each other. Xbee mesh networking maybe!
Successful auth is the issuing bank telling the merchant - 'yes, the customer has the funds and the money is yours for the taking via the capture request against this auth.'
Which is a GUARANTEE. Yes, as a means of customer protection it expires if the merchant did not request the capture within a certain timeframe which is at least 2 weeks, 4 weeks in most cases.

For digital goods (and POS) this is a non-issue since the capture request is combined with the auth request. For physical goods - well if I'm a customer and the merchant hasn't shipped in 2+ weeks it's fair to me to get the hold removed from the funds my bank GUARANTEED to the merchant.

6 conf is a rule of thumb bitpay (and other bitcoin payment processors that I'm aware of) are following before GUARANTEEING the funds to the merchant. sure, if this is a P2P transaction and I was personally selling you $10 worth of merchandise I'd be ok with 1 conf, when talking 'industrial' scale payment acceptance things work just a little bit different.

So now in this particular case - steam can revoke the license if the payment eventually fails which is precisely why I think this sort of market is perfect for BTC (I commented on this in this thread).

And finally since you're claiming high tx fees are 'a far stronger guarantee of settlement than a cc authorization as it's way harder for the customer to reliably cheat you' - how would you cheat the merchant after the auth (let alone auth/capture) went through?
Also, how does full unit (!) test coverage prevent a situation where unit A passes some type to unit B that unit B doesn't expect but happily runs with, but with different semantics?

Documentation of interfaces in dynamic languages usually always specify the types of arguments and return values, and the code very often looks like this:

def foo(arg)
raise TypeError, "Integer argument expected" unless arg.kind_of?(Integer)
# ...
end

Yup. That saved me a lot of typing (no pun intended) compared to

void foo(int arg) {
// ...
}

Reading (and writing) code in dynamic languages (including the tests!) always seems to me to disprove all of their purported benefits and underlines the need for a strong type system.
Why would I care? Honest question.
Tell people to upgrade their browsers
I've interviewed at Intercom in Dublin and they gave their whole process upfront. Including the questions they made in two steps.

It's all in their website.

I didn't get the role, failed the last step but really enjoyed the interview process.
We could use help with translation too! https://github.com/evantahler/old-browser.org
#AirbnbWhileBlack
I explained why: "because we asked you not to post these". Brevity and transparency are not incompatible.

When we ban someone and they email us, we simply ask them to promise not to do it again, and if they do, we unban them and welcome them back.

Edit: abhi3 emailed and is now unbanned.
You could get a virtual machine somewhere cheap for $5-10/month and use that as your canonical storage reference.
Can someone please put the file colornet.t7 on the torrent network or a high-volume service somewhere? I'm probably not the only having a hard time downloading that file.
as pointed out in the comment dang has requested he stop posting 'these' types of comments

and if you showdead:yes you'll see 'these' types are 'TLDR' summaries

a previous example:
https://news.ycombinator.com/item?id=11537818

also, dang even gave him an out if just requests it.. all seems very reasonable
use go install to cache packages
True, but if you're hosting 52 crud apps, it becomes very appealing.
Sure, it's possible, however unlikely, that a mistake of this sort fell through the cracks, but I wouldn't place any bets on it
‘Lost’ songs from the Middle Ages are brought back to life
Why can't the map serve multiple functions? I guess I wasn't overloaded by the detail.
"If you do have the misfortune to have to work with SPARC"

So true... I work with the LEON (GPL implementation of SPARC) and have the occasional very bad day of SPARC asm code.
It's really pathetic how HN has degenerated from an actual community of builders / startup founders / creators to reddit-style vitriol and populist complaints about the 1%.

Every comment right now is complaining about billionaires and the problems with of capitalism. Not even about the technology, much less being happy about this being funded.

Genuine question -- is there a community somewhere which is actually full of not-shitty people? I would like an invite.
It's a more loosely coupled way to test than unit tests. That has certain advantages.
My first thought was that an electricity cost at maybe 20% of what it is now would be result in a good economic uplift but not a seismic change.

But the interesting cases are those where much cheaper electricity unlocks new opportunities. Imagine the coast of sub-Saharan Africa transformed by the agriculture enabled by cheap desalinated water.
> They publish LaTeX-templated Word docs as paywalled PDFs.

Somewhat tangential, but do CS academics actually write papers in Word? During my grad school days I did not encounter a single paper 'typeset' in Word. Writing was usually done with a LaTeX and and a makefile in a git repo.
If you exercise upon getting hired, there is no tax bill, because there is no spread between FMV and your exercise price. There's only a tax bill later, upon liquidation.
Is there even code to publish? I am under the impression a lot of papers from Bugzilla data are of the form "we imported the data into Excel and had a hand-crafted one-off spreadsheet".
I don't much care if police or fire is dispatched while we're out of the house. That's what insurance is for. I much prefer having the ability to monitor myself without an exorbitant monthly fee (I'm guessing it varies, but in my area it's typically about $100/month). It's mostly just to ensure I didn't drive off and leave the garage door open again anyways.

I bought several high-end 5 or 7 day programmable thermostats. Looking at Home Depot right now most of those are still pushing $200. And they're "Indiglo" pieces of junk that will be almost entirely illegible in a year's time IME.

The Honeywell Lyric for example can't turn on/off the fan on the device. You also can't schedule on the device. Need the app for that. And the app appears broken for a lot of users.

Nest just got a lot of things right. My only real complaint is the scheduling UX is kinda goofy. But it does work, and it's much quicker than any other I've tried. Otherwise it does everything I want and it's saved me money. That's a convenience and utility worth paying a bit more for to me.

This stuff mostly comes down to saving money to me. In the same way I buy my iPhone outright and spend $45/month for a 5Gb/unlimited-minutes phone plan, I like the idea of spending a bit more up-front to be more liquid later.

But back to thermostats. After reading the reviews this morning, unless you want to buy into a Kickstarter or something (with it's own risks), the market still seems to be mostly "garbage" IMO. Maybe the Ecobee is a decent Nest alternative? I dunno. I've had my Nest for about 5 years now. It's paid for itself. Hopefully I don't have to find out what else is out there anytime soon.
Maybe not exactly on-topic, but this is the kind of digression we welcome here: specific and intellectually curious.

It's only the generic, predictable discussions (typically flamewars) that we try to weed out. Tangents that go someplace interesting are fine, and weirder is usually better.
Pain Points at 7nm also an interesting read http://semiengineering.com/pain-points-at-7nm/
The IEEE Transactions on Education prefer submissions to be in Word format, which suggests that is how they typeset it.
Meja+rias+anak+perempuan+minimalis+pink+MRI-014
It's completely founded. This article is about the issues of people that started out when Uber was giving out options.
"those parameters should be part of type constructors"

I'm not sure if this is a nit, a misunderstanding on my part, or a difference in terminology, but I think what is meant here is "value constructors" (or more commonly, just "constructors"). As I understand the term, "type constructors" construct types.
Guess What? Developer Ports Windows 95 to an Apple Watch
Nielsen and Chuang certainly isn't slim, but chances are you won't need to read every chapter. The style is certainly what you're asking for though.
I believe the parent mistook NSLs for warrant requests.
I'd argue this is why you should distribute your app on the App Store, but don't rely on Apple to handle the payments. Make your app free, with a payment to your site directly, where you then provide an activation code or password, etc, to run the free iOS app. One additional perk is that you don't give Apple 30% when you do this.

For the App Store to approve your app, you provide a test username/password or authentication code in the notes to the reviewer. After the app is approved, you can then deactivate that test account.

This requires more development overhead from the developer, certainly. But the extra 30% you get in revenue and the comfort of being solely in control of your payment process can be worth it.

There are a few apps that do this, but not many.
Once we hit the wall of general CPU performance we will probably retrace a lot of old school custom hardware design. Expect a lot of the parts integrated into a CPU today to move back out, but simultaneously we will have to start shipping more sophisticated cooling solutions for denser CPU chips (since the main reason bridges were integrated were because dense cores were getting too hot for copper / aluminum fin heat transfer like most heatsinks).

It will take a really long time to actually squeeze out CPU optimization. We are still contending with most software not even properly scaling to four cores, let alone well implemented job queue systems for arbitrarily scaled cores. And once the chips start dropping in price as the node standardizes and companies can lay off the intense R&D investments, we can start introducing more heterogeneous compute clusters to drive performance cheaper even when the silicon itself is stuck until graphene takes the market.
oh yea, I remember your blog. As a matter of fact, it was one of few variable resources to learn about Acme's "API". Thanks for your work =)
getcontext(3) / setcontext(3). Not standard, but exists in both Linux and FreeBSD.
A recursive descent parser.
This is a great point. Additionally, you're fine if you pay 110% of your prior year's tax bill. For most employees referred to in this article, this amount should be payable.
The slides are available online as well, btw:

http://de.slideshare.net/japh44/lets-build-a-quantum-compute...