skysight-inc/HackerNews huggingface dataset:
You like the corruption strategy of a politician whose entire career is corruption. His "charitable" foundation pays his legal bills FCS.
I don't really get it. What's the big deal? I see a lot of dramatic language about the "strenuous objections of many external contributors", but what exactly is so bad about this proposal?

There was even a comparison to `goto`...? What am I missing?
It's reasonable compared to the old way of having three layers of callbacks in Node.js.
Well, taking the "shut the fuck up" incident, the scale was used at the maximum level (an example of the commit breaking a program was provided, with a patch fixing it) and the maintainer insisted it wasn't really a bug because the app was holding it wrong. Therefore, your scale needs an extra level.
Guetzli – a new more psychovisual JPEG encoder
> Really, we're arguing over whether we want our preemption points to be explicit or implicit.

It's not even that!

It's not like you actually get to decide where to await in async/await code - you have to await on any call that is async, if you expect to get the result.

Now, if the underlying framework uses hot tasks - meaning the async operation starts executing as soon as it's invoked, and not when the returned task is awaited (as in e.g. .NET/C#) - you can choose to omit async to, effectively, fork your async "thread". So NOT doing await on something is just a fork operation. It's the reverse from regular sync code, where thread forks are explicit, and sequential flow on a single thread is implicit.

One other case where you wouldn't await is when you need to await on a combination of any or all tasks at the same time (i.e., wait until all tasks complete, or wait until one of the tasks completes). But the first one is equivalent to a thread join in sync code, and the second to a condition variable. So, again, you get a case where something more explicit in sync code is more implicit in async code, and vice versa.

Now note that all this is solely about syntax! You can take the C# compiler, and change it so that every awaitable statement is automatically awaited, except when the newly introduced operator "taskof" is applied, in which case you get the raw future instead. Voila! Cooperative future-based multitasking with implicit preemption points. Yet it works exactly the same, and will even be able to call into and be called from any existing C# code compiled by the original compiler.

I suspect that this will be the next step after async/await, once enough people notice that the default (non-await) behavior is something that they need very rarely, and figure out that it's better to rather change the syntax so that the much more common thing (await) is implicit. Similar to how the use of =/== for assignment and comparison has won out over :=/= in imperative languages.
MySpeech.js – small library for web speech API
I just started playing with Perl6 a couple weeks ago, and I am completely loving it now. It's the strangest process to get used to. I haven't had this much fun programming in a long time. Some frustration every one in a while until I can wrap my head around some new concept, but that's to me what this language is all about. SO much conceptual stuff in it. Very, very rich.

I've been converting some old stuff to it to learn it, and it crazy how much more compact things can become. Working with grammars has been amazing. And I'm just now getting hit over the head with how flexible class roles with parameters can be to consolidate methods that do similar, but slightly different things.

I haven't even started into the concurrency bits yet... something about "promises" and "supplies". But I'm actually looking forward to it at this point. And that's really a surprising thing to me ;)

Anyway, my 2 cents on it at least. I'm not sure it matters if Perl is ever a poster child for anything. I think it kinda just doesn't matter.
Thanks, this is what I thought.
Hint: https://godoc.org/golang.org/x/tools/cmd/gorename
Usually the gyms I've been to, they spar only a full day/week so I just don't show up that day. Other times I just sit out and watch. Though that only happens when I don't want to, I've sparred many times.
> There is absolutely no reason to not be answering emails

Sometimes there is.

You can express your disappointment in how a project is managed without implying that someone else isn't living their life properly.
Looks like you're just as aggressive, waiting for someone to finally "offer" threats.

Cyclist are no angels, either. I always find it fascinating how they clamor for at least a meter space next to them when cars are passing, but when traffic is slow (not standing still – that's a different story), mere centimeters to my side mirrors are enough to pass cars themselves.

I think a drastic re-education of traffic participants would be necessary: de-emphasize small, inadvertant and temporary infractions and punish vindictive and deliberately dangerous behaviour much more aggressively.
There is a lot of things we can do with highlighting, but that is not one that we should. An online linting tool should tell you that a variable is shadowing another (and I personally believe that it should not be possible at all). If you make a syntax highlighter that can color differently based on scope, you're only one stop away from a tool that can warn you about shadowing anyway.
is this because Go handles dependencies itself?

What's preventing a tool like pip, npm, or stack from working with Go for versioning?
That video is showing someone (presumably you?) scrolling through the date picker. It does not appear to provide any evidence to support your claim that the device resets to 1970 when it cannot get a response from NTP. As I said before, literally no device would ever behave that way, because not being able to get an NTP response is not a particularly uncommon occurrence (it happens any time you don't have internet), so any device that reset to 1970 would be extremely obviously broken as literally every single person would hit this many many many times.
Hi Josh,

I have sent my resume for Embedded Systems Engineer role via the general role category to Aclima. Let me know if you want to talk.

Thanks.
Why not just submit the iFixit article itself? The submitted post doesn't look like it adds any value.

https://www.ifixit.com/Teardown/MacBook+Pro+13-Inch+Function...
Even then they don't give a flying duckling, have you seen that segment? Before the interview they've asked people on the street and they didn't knew who the fuck Snowden was, people who watch LWT are already a tiny privileged portion of society.

FYI Same goes for Real Time, The Daily Show, and the Colbert Report.... You are literally preaching to the choir....
Toshiba was my first laptop back in 1999.

One of the reasons I went with them was that besides being famous for making good laptops, was that they had a dedicated Linux web site and forum for supporting Linux on their laptops.

While most other OEMs couldn't care less.
I think in the GP's post, "you" = "the listener", not the other member of the conversation.
Well, you have to also keep in mind that a lot of those reserves were proven at an oil price of >$100/barrel. I don't remember offhand the numbers for what percentage of proven reserves are commercially viable today, but I spoke to someone in Shell a few weeks ago about North Sea developments. He said that in unconventional plays, basically only polymer-EOR is profitable at current price levels, while ultra-deep fields, CO2-based EOR and arctic fields are generally all unprofitable. My guess is the same goes for Gulf of Mexico ultra-deep fields, as well as Brazilian pre-salt.

I also know that several of the small brownfields in the North Sea are being operated now at a loss, because that costs less than plugging and abandonment.

So it's perhaps not that far fetched to think that 2/3rds of current proven reserves will not be developed if the current economic situation persists.
Interesting question, is it better to mine it now and store it, or tear down the industry and rebuild it if we come to need it again in the future?
I'm amazed someone wouldn't read their diffs, just for their own sanity. It's a great summary to remind yourself what you just did to resolve an issue. And what if your cat just walked over your keyboard while you weren't looking? Your diff will tell you this. Silly but meaningful example.
> whose entire career is corruption. His "charitable" foundation pays his legal bills FCS.

Meanwhile... From https://twitter.com/wikileaks/status/795284806510714881

> Chelsea Clinton used Clinton Foundation resources for her wedding -- email from top Bill Clinton aid Doug Band https://wikileaks.org/podesta-emails/emailid/52046#efmABYACC
A small testing tool:Bash script+Httpie+jq
I've been writing async/await code for the past 2.5 years, and no, it actually is typically this dense, if you count tokens (real identifiers are obviously longer, so it's not as bad character-wise, and awaits are not quite as prominent).
Am I the only one who just completely ignores `and` and `or` in Ruby in favor of `&&` and `||`? The boolean keywords do look nicer than the operators, but given that there are some contexts where you can only use the operators, I just don't bother using the keywords at all
I like the points he mentioned as a specific policy proposal here:

https://www.donaldjtrump.com/press-releases/donald-j.-trumps...

Please let me know which ones you disagree with.
Not really. People die unexpectedly. Things come up. Adopting a project with a bus factor of one and expecting things to just work out, and blaming that person instead of yourself when they don't... I think that's pretty close to "entitlement", with a dash of wishful thinking.
Thank the gods for small blessings.
To me this alias proposal is pretty much the way it's been done in Java forever, so whenever you call for "foo.bar.Baz", the classloader is free to give you back a different implementation, including vendor/foo/bar/Baz, or even a mock implementation.

I think in any large scale dependency chain, you're eventually going to have two transitive dependencies D1 and D2 that both use dependency E, but different versions.

Inside Google we have the OneVersionPolicy, because we control everything in our repo, but in the external ecosystem, this is a frequent occurrence, that has to be solved by either classloader isolation, or upgrades.
Python History
I see that you logged in successfully. Do you still need assistance?
I'm utterly confused by your use of footnotes. You seem to have used two footnotes in your text (with the second one bizarrely being "3"), and then put three citations at the bottom, only one having a corresponding number in the text
They've made a handful of contributions back. Arguably, a lot of the changes they've made they couldn't share anyways (AMD licensing agreements) or were built on top of it as applications.

FWIW: I, for sure, appreciate the GPL3 and copy-left licenses.
Reading

To improve knowledge and answer question on specific topic on discussion form.
> The whole point of Golang is that every library and every project that uses Go will support coroutines and channels.

Of course, this also means that Go is making it hard for its libraries to be used by other languages. So it's probably a bad candidate to write something like a cross-plat UI toolkit, if you hope for its wide use.

In contrast, threads and callbacks are both well-supported in existing languages; so if you write a library in C using either, pretty much any language will be able to consume it.
12 is the most optimal and usable base for humans - James Grime explains it at Numberphile:
https://www.youtube.com/watch?v=U6xJfP7-HCc
A Brief History of Distributed Programming: RPC
It depends on what you mean by "bad idea". You've got three choices, basically: analyse source, analyse the AST, or analyse bytecode. There are advantages and disadvantages of each approach, but for what Google's trying to do - allow people to write their own checks - there are clear advantages to analysing the AST.

I've written checks in both error-prone and Findbugs and error-prone is simply more natural. Part of that is the Findbugs API, for want of a better word, is godawful, but the AST is simply the best representation of the program for analysis.

If you're going to analyse the AST, you then have a further two choices: build your own AST, or hook into the compiler. Building it yourself is dangerous here: firstly, it's repeating a lot of work that's already been done, but more importantly you want to be absolutely sure that what you're analysing is what you're actually building. Either way you have to do updates when the language changes, as any static analysis tool needs to.

Are there costs to this decision? Yep. Is it going to be the right tool for every job? Nope. But that doesn't mean that these decisions don't have reasoning behind them, and compelling reasons to go this way.
Me too, I use unsplash images in a lot of client work. When I saw Unsplash licence my first thought was that I'd have to use a different service.

Seems silly to change the name when it's essentially the same thing.
I spent thousands with them on teeny teeny computers, including the OQO. Worth it!
I used this to make my own webshop software for a client. Lots of ajax features but only 80 lines of javascript in total. Intercooler is great to update the shopping cart in the sidebar when pressing the add to cart button. This makes the shop feel a lot smoother.
>most C++ developers don't think anybody will (ab)use 'const_cast', and so on.

These constructs are opt-in. If you don't want them in your codebase you can find their location by a simple text based search and remove them. In C everything is "unsafe". You can't opt-out.
HEDGE: Liberal Institutions for the Entrepreneurial Age
A few weeks ago, I published a paper under the title “Enough With This Basic Income Bullshit”, which was extensively discussed here on Hacker News: https://news.ycombinator.com/item?id=12473112

This new one is a (long-form) follow up to the UBI piece. It is meant as a contribution to a grown-up discussion about the future of progressive politics in a more digital economy. Looking forward to discussing it.
Wasn't there already Jabber or IRC? But they don't make money. Sad world where we prefer badly coded shit that makes money, to awesome tech that don't.
https://netin.co/faq

Heading "Secruity"
The energy problem is mentioned almost in passing, but it could be a deal breaker for this type of farming.
Ventilation, heating and delivering light for photosynthesis require vast amounts of electrical energy, which, according to the article, comes mainly from diesel.

Averaged over a day, the sun provides > 12kWh per m^2 in farmable regions (estimated). It takes 70 days to grow cabbage, so for 1m^2 of cabbage that would amount to 168$ at 20cents/kWh.
How unique is @gavanwoolery? Would something like 'reverse kickstarter' be viable for building an engine and small game out of this? I for one would happily donate for any programmer building this towards an OSS-engine and demo game. If we 'instruct' the programmer to build MVP-api's could something like that work? Then others could pick that up and build from there. I know I am massively underestimating the thousands of hours put in and to be put in, but somebody any ballpark on hours etc?
Nondrinker so I didn't consider that. Thanks
N=1 counterfinding, but I find myself incredibly frustrated if I "concentrate entirely on the task at hand" while doing household cleaning. Instead I try and think of anything else.
It lets you easily write responsive UI apps without worrying about things like threads - you treat your app as a single conceptual thread, and use async IO operations on it by awaiting them. Since in practice every operation callback is a new item posted onto the event loop, this doesn't block said loop at any point, and UI remains responsive. So the developer can think in simple terms like "if this button is clicked, [await] download this file, then update this label and [await] send this email", instead of background worker threads with condition variables etc.

In particular, WinRT heavily promotes this approach for UWP apps.
Here's why this article is not FUD.

First of all, everything with mechanical parts needs regular maintenance, and almost always will reach a point where it should be replaced. If you aren't maintaining it, you are opening yourself up to unnecessary risk.

Second, these are maintenance-related issues which are required by law and are not being followed up on, so they're not following the law, even if the FAA claims they're hunky dory. They're clearly not.

Third, when a vehicle like a car has a maintenance or human operator error, a small handful of people's lives at risk. With planes, it's a couple hundred people's lives, and you can't just pull off to the shoulder of the highway to change a flat. Not to mention the things you may hit when you "unexpectedly forceably land".

Planes are designed to withstand multiple serious malfunctions, because there is no alternative: you're 30 thousand fucking feet in the air going 500 miles per hour. So just because there are major failures that have not yet killed anyone is not because there is no problem: it's because planes were designed to be bomb-proof and they are barely holding on to their shakey safety record.

Airline safety is incredibly important because even a single safety issue can cause a large impact in the public's perception of the industry's safety, which affects how many tickets are sold. So from a selfish perspective, you want them to be safe so your ticket price doesn't go up.

Finally, there's the whole point of the article: THE AIRLINE IS TWO TO FOUR TIMES LESS SAFE THAN ALL THE OTHERS, WHAT THE FUCK ARE THEY DOING?!
Curious note, Shell has at least in Denmark sold or closed all of its gas filling stations. source http://www.business.dk/transport/shell-saelger-danske-tankst...
- Hey guys we wrote gofmt so all code looks the same.

- Great! Now we can finally get things done and stop bikeshedding!

- Now about that syntax highlighting of yours...
What % of laptops in Japan do you think developers buy?
Feels to me like the Stockholm syndrome thing (for lack of a better term). You can't avoid the bug, so in order to keep your sanity, you start to treat it as a feature. Similar thing as with treating death as a "natural state of things", ergo good.
I have the 15 in. current gen MBP and had a fair few issues with the hardware. A few kernel patches fixed most of them, but that's more effort than should be needed, and there's still some lingering audio driver issues I haven't resolved.

I'm under the impression that the 13 in. model works without issue.
Type aliases have been useful in many languages for many reasons. I also don't understand why the author is so upset.
Not sure if it was his point but certainly I noticed most restaurants hand washed rather than use a dishwasher and other inefficiencies.

I often wonder if much of the automation that does exist in Japan is more about not dealing with people.
I've frequently seen motorcyclists acting like they're suicidal (just not quite deliberately riding under the front of that lorry), drivers acting like they think they're invincible, cyclists acting like nobody else on the road is actually there so they don't need to bother trying to avoid being run over by them, and pedestrians who think the traffic will just magically avoid them when they run across the road in the dark while dressed all in black.

There are terrible people in control of all vehicles.
There are definitely the types that seem to think the streets are a racetrack and are very wreckless. I'm one of the 'other' types and I ride like a grandma and try to stick to open roads.

BTW, there are good reasons why motorcyclists don't always drive in the center of the lane. One main one is to position the bike so you are visible in the left mirror of a driver you are passing on the left, meaning you ride in the 'right track' of the lane. Another is oil and gas tend to be spilt in the center of the road, and most bikes don't have ABS. Riding in the left track will help prevent a driver passing you on the left from cutting their pass short into your braking zone. It all depends on the surroundings and riding defensively.
I'm intrigued by this line of thinking though - for the most part, you're not buying hardware per se, you're buying a product, which is a function of hardware and software. As much as I'd love everything to be open and easy to tinker with and change as you see fit, just because it's a physical item doesn't mean you have any extra right to use it any differently to the way the product was intended.

Obviously a tutorial online shows at least a small fraction of demand for open hardware, but as you say, the choices become limited if you care about it, probably as a result of such a small number actually caring enough to vocalise/put money where their mouths are.
I think this example doesn't match the point being argued. You assume the implied rudeness to mean that arguing parties insult each other - but insults are just on one end of the spectrum of "rudeness".
If you argue on the premise that rudeness is the disregard for the opposing party's feelings, there's plenty of opportunities for rational arguments that will provoke a very emotional reaction and thus be discarded without further scrutiny.

So, I'd argue that while the premise that some direct and blunt statements can be rude, that doesn't mean that any rudeness (esp. insults) is a better argument.
Yeah, if someone e.g. gets my complete hw fingerprint, I'm identifiable. But it's no worse than I'm already uniquely id'd by visiting pretty much any website today. I don't like it, but I also don't see a point in being outraged when my music player does it but not when my favorite website does it.
Show HN: Chrome extension to browse Wikipedia in a single tab
CTCSS fingerprinting: a method for radio transmitter identification
Setting up auto-reply takes 10 minutes. All modern email clients allow creating auto-reply rules based on who the email is from or the words the subject line or body contain.

"Thank you for your email. This is an automated reply to let you know that active development of this project is currently on hold. If you have any questions, please email bob@project.com, who is the current maintainer."

That's it.
In his talk about threads (https://www.youtube.com/watch?v=Bv25Dwe84g0) Raymond Hettinger made a point: when you have a codebase with many locks the result of composition is often a sequential program.
Interesting, thanks for sharing that insight. Do you feel that your work is representative, or is there some reason that the code you write would have a higher than usual density? It seems like a lot of code, which is just business logic, would not use these constructs other than on the io barriers.
All About Sky Siberian Husky
> I just don't understand why people use the git CLI. Git is too powerful a tool, using the CLI limits one of two things: your capabilities, or your productivity.

That's fine, but on the other hand, a typical GUI limits both your capabilities and your productivity.

About the only interface I prefer over git CLI is magit in Emacs. It's unlike your typical GUI, because you don't have to click at anything (keyboard-operated), and it exposes like 99% of git inside a well-thought-out text-based UI that adds just the right amount of interaction and editor integration. Using magit is incredibly efficient, much faster than even using CLI git.

> I just don't understand the fetishization of source control via CLI. In all likelihood it doesn't make you more productive, and it's probably less accurate unless you really know you way around git.

If you don't know your way around git, chances are you're going to seriously screw things up via GUI and you'll have no idea what happened or how to fix it. Starting from CLI is a good way to actually learn the tool, which I believe is crucial regardless of what interface you'll eventually be using.