skysight-inc/HackerNews huggingface dataset:
API (and modern web servers are API only) should:

1) handle route (read data, transform, prepare other resources, check access rights)

2) generate response with reading/writing to db.

First step is not so primitive. Reading request data is often boilerplate-rich code, so syntax which can remove tons of boilerplate is very welcomed.
There are a few more patterns as well if you use ServiceWorkers. Jake Archibald has a great "offline cookbook" article that lays out other common use cases and strategies.

[0]https://jakearchibald.com/2014/offline-cookbook/
edit: see replies to my comment. I mistook the Hyper pull request being merged for being in the latest release, but it isn't.

Rocket uses Hyper for its HTTP server. So I checked to see if the Hyper HTTP server was really production-ready. Particularly, if it could handle async IO / solve the C10K problem[0]. It looks like Hyper implemented async IO[1], so it should be adequate for production use in this regard. This is great news for users of Rocket because it means you don't need a separate HTTP framework to run your web service, as you would with, say, Django + gunicorn.

Sure, it's a dependency, but in this case, having a production-ready HTTP server out of the box is really nice!

Having said that, is there any literature on Rocket/hyper for security? The production-ready HTTP server is great, but it also means it has to be prepared to deal with certain security issues, like listening on 0.0.0.0 and handling file uploads. You could put HAproxy/nginx/whatever in front of it, but I think Rust has the potential to supply / manage all of this within one unit and simplify the stack / attack surface area.

[0]: http://www.kegel.com/c10k.html

[1]: https://github.com/hyperium/hyper/pull/778
> Sorry, you're wrong. First, it's asterisk asterisk locals(),

I meant what I wrote. Someone, in a rush to criticize about a topic on which they are ignorant, didn't consult the Python documentation:

https://docs.python.org/3/library/stdtypes.html#str.format_m...

> they don't show here for some reason.

Asterisks only show in code blocks. They denote italics in HN's markup. Double asterisks outside of a code block begin and end empty italicized text.

** no italics because we're in a code block

> Second, the parser at compile time pulls out the actual expressions and fills them in to a .format call. It __does not__ use locals!

I'll quote myself here, since you missed the first part of this sentence when jumping to a conclusion about why security is irrelevant, but we need to blacklist a well-understood and widely used builtin function anyway.

>> Technically, PEP-0498 states that we're not exposing a full locals() or globals(), but this actually matters very little.

But, while we're trying to be pedantic, let's actually be pedantic:

>>> import dis
>>> dis.dis('f"{foo}"')

1 0 LOAD_NAME 0 (foo)
2 FORMAT_VALUE 0
4 RETURN_VALUE

Shouldn't I be seeing some LOAD_CONST, LOAD_ATTR, and CALL_FUNCTION somewhere?

>>> import dis
>>> dis.dis('"{foo}".format("bar")')

1 0 LOAD_CONST 0 ('{foo}')
2 LOAD_ATTR 0 (format)
4 LOAD_CONST 1 ('bar')
6 CALL_FUNCTION 1
8 RETURN_VALUE

If you'd like, you can go ahead and examine what it is that FORMAT_VALUE does (hint: invokes PyObject_Format which is defined in abstract.c around line 670 in the Python-3.6.0 tarball).
This "domain fronting" trick could make Google suffer collateral damages if the regime is determined to block such encryption apps.
But if it's lunch time, everyone is waiting in the same fast line, which defeats the purpose ...
We (and several richest largest companies in the world which became that due to their native offline software) have no problems doing so.
Same way as that worked since 1980ties for all millions of home PC users.
Whose argument seems to be:

Being a proponent of natural selection, non-interference and laisser-faire is inconsistent, because who can be against protecting the innocent from injustice or healing the sick?
The Case Against Sugar
I've worked on everything you mention and more, and I find the simplicity of say node.js or SparkJava very refreshing when coming from metaprogramming frameworks. Once you go metaprogramming everything is suddenly metaprogramming. Data serialization is metaprogramming. Middleware is metaprogramming. Adding your own plugins to the framework becomes metaprogramming.

Also, because the framework wants to create your classes you cannot simply send in the objects dependencies into the constructor anymore. You find yourself in need of a DI framework instantiating your classes. And suddenly the data dependencies of your app become very vague. Adapters get registered based on the presence of JARs and/or classes in directories which are scanned in runtime.

You have reinvented the work of the compiler and the language, and what do you gain? A big mess where you no longer have programmatic control. I cannot easily start parts of my application for testing, I have to rely on Spring or Jersey having some sort of metaprogramming magic triggered by some magic annotation supplied by a JUnit<->Spring integration module. Suddenly modules like JUnit and Spring aren't combinable without metaprogramming. You see this trend spreading like wildfire: "Is your lib Spring compatible?". We should instead be asking ourself why the heck unrelated libs have to be compatible with one another. They are supposed to be orthogonal, that's the point! To see an example of how ridicilous this can get, have a look here: http://stackoverflow.com/questions/35957287/cucumber-testng-...

I wouldn't go as far as saying that frameworks like Spring or Jersey are unworkable. But I believe you could acheive the same level of service a LOT easier if you wouldn't go metaprogramming crazy. Just consider the amount of time wasted trying to figure out why something isn't wired correctly, why some plugin is loaded, why your component isn't picked up, why some property isn't resolved etc. With normal programming, you fire up the debugger and step through the code. Solved in 5 min. With metaprogramming, it's a struggle on a whole different level.
Why dang if you like it?
It's propaganda on both sides. You are correct, there are many people who act like the natives weren't practically exterminated. However, on the flip side, there's a sort of revisionist history that ignores that the vast majority of natives were wiped out unintentionally due to disease. Many new frontiers for Europeans were basically empty due to disease preceding them.

Additionally, we tend to forget who the natives actually were. The Mississippian culture was forgotten, but so are the Comanches - a tribe that in the 1700s and 1800s had an uncontested empire and were described as the best light cavalry in the world. They had a massive striking range and were infamous for raids on European settlements. In these raids they had no compunction about rape and torture (infants included). It wasn't seen as wrong to them - their enemies the Utes would have done the same to them.

History is often much more nuanced than people want to admit.

Note, it's also crazy how empty America really was compared to Europe, China, or India at the time. If you look at maps of world population, you've got tens of dozens of cities larger than 1 million in population throughout Eurasia and virtually none in the Americas prior to 1800.
I would add the HP Spectre x360 (w0XX models) for a 13" equivalent, I just replaced my MacBook with it after growing wary of Apple's direction.

http://store.hp.com/us/en/pdp/Laptops/hp-spectre-x360---13-w...

Battery life holds up to Apple.
The problem I've found is that when we start using cute tricks like the old "xxx" % locals(), or the newer f-strings, is that we tend to start forgetting basics like escaping the strings that we're substituting in.

For the example above, this might be fine, but most examples that I see using this kind of thing are things like:

"select * from foo where id = '%s'"
or
"<input type='hidden' name='foo' value='%s'/>"
or
"rm -rf /path/to/customer/%s"

I tend to think that in general appending strings is more often than not quite a dangerous operation, and it behooves the caller to need to have a long think about exactly how the strings being substituted in need to be escaped - as it's pretty rare that they don't need to be.
I'm talking more about the Aero 14 and the GS63. Both of which are roughly half the price and have GTX 1060s which have 2x the GPU performance.
6 Best (And 5 Worst) U.S. Presidents of All Time
They clearly do manage "dependency versions" (that's what they do: that's the primary purpose of say, apt). As for the other things, I am pretty certain those are anti-features? I don't want the way I find and manage libraries and depenendencies to assume I am going to use some specific build environment, and the entire point of good package management is to be able to reuse packages so encouraging developers to "control how dependencies are built" is asking for trouble.
That cable isn't available on this side of the Atlantic, local Apple store only had a faulty DP adapter. For some reason not even the german Amazon had the proper cable in stock or listed.
Catastrophic Cracking Courtesy of Quiescent Cavitation
Yeah on second thought, it's all bad and not good.
The opening paragraphs of Spinoza's Ethics:

I. By that which is self-caused, I mean that of which the essence involves existence, or that of which the nature is only conceivable as existent.

II. A thing is called finite after its kind, when it can be limited by another thing of the same nature; for instance, a body is called finite because we always conceive another greater body. So, also, a thought is limited by another thought, but a body is not limited by thought, nor a thought by body.

III. By substance, I mean that which is in itself, and is conceived through itself: in other words, that of which a conception can be formed independently of any other conception.

IV. By attribute, I mean that which the intellect perceives as constituting the essence of substance.

V. By mode, I mean the modifications of substance, or that which exists in, and is conceived through, something other than itself.

... I mean, this kind of book is very hard work to even get a cursory grasp of, which might explain why many readers prefer clearly-explained contemporary texts by experienced people from their field of work.
That's fair; I withdraw the libertarian comparison and I apologize. But what's to say we can't pay attention to both at once? I feel like this is kind of a false economy.
Still, the computer costs thousands of dollars, and most people's purchase decision will be informed by their 15-minute experience of using it in the Apple Store.

I tried it, the keyboard was uncomfortable, and I decided not to buy it.

It would be nice if Apple would make an international version of the 15" that has more than 100Wh!
Where are you getting that number from? I can find stats on individual types of parasites on the CDC site, but not worms in general.

I am seeing 13.9% with Toxocara antibodies[0], so past exposure. That's fun.

[0] https://www.cdc.gov/parasites/toxocariasis/gen_info/faqs.htm...
For some reason I got redirected to this after a while: https://goo.gl/Vmnf
My first response to a statement like "youtube views are down across the board" is that Google is being more effective at catching ad fraud. Just recently we had the "$5M a day ad fraud story" (https://news.ycombinator.com/item?id=13219871) on video ad fraud.

Ad fraud is prevalent because it is the perfect "victimless" crime. If you build a system that defrauds advertisers the ad platform won't prosecute you because they don't want to admit to the fraud, they will just figure out how to detect and block you. They might try to take back money but there are lots of ways to move money through the banking system so that you get to keep most (if not all) of it. There are billions of dollars in play so stealing .01% is profitable and essentially "noise" to the players. And everything is already set up to automatically send money around so you never have to meet face to face. As one person put it, "It's a giant money of river flowing right by your doorstep, you're telling me you won't step out and dip your cup into it now and then to pick up some walking around money?"

The effect of Google being more effective was they massively suppressed the ad revenue from things like AdSense for content which both made legitimate small scale sites no longer even making beer money, and the required infrastructure to defraud AdSense a bit more expensive.

YouTube has been trying to get profitable for years, and they are trying to get more advertisers on it, and it has a huge click/view fraud problem (as evidenced by the Forbes article and elsewhere). So if they clean it of viewbots then views will likely "go down across the board."
The OS X Terminal integration is quite spiffy...amused they had an engineer specifically working on Terminal Touchbar integration!
I think you hit on the critical point where this theory goes awry, which is the idea that there is something special about human or animal intelligence which puts it in an entirely different category of other types of information gathering and synthesis. Another option is that the way people gather and synthesize information is just an advanced form of the same processes common to other dynamic systems, localized in layers of biology to create extreme forms of self-referential analysis. It's been a long debate, but the development of artificial intelligence is likely to significantly change the dominant perspective. If we continue to create ever more complex systems that behave intelligently but don't have the same kind of self-awareness as people perceive, we might be able to untangle the concepts of perception, intelligence, creativity, and the sense of self.
The Specter was excluded because it doesn't have a 4C (8T) CPU.
>Unless you're running a very unusual OS setup, any native app by default has read and write access to all of your files without asking.

That's partially true. By default, it cannot access any system files, or change any system settings without admin privileges. Admin access is also required to authorize a firewall exception if it wants to use the network. And you have the choice to arbitrarily restrict a software's read/write access to locations of your choosing. You might call that unusual, but such restrictions are common in managed environments.

>I feel pretty comfortable assuming that www.randomwebapp.com isn't reading and uploading my ~/.ssh and ~/.gpg, otherwise I'd be terrified of using the web at all.

Your comfort is misplaced. There are FAR more browser vulnerabilities (including chrome, firefox) allowing code execution than there are OS kernel and CPU vulnerabilities allowing you to break out of the native apps' sandbox.
You don't have to look as far as ants to make the analogy you are making. Almost no animal, and even some plants cannot reproduce without some minimal number of "tribe" members. This is true for anything from chimps to probiotics.

This all depends on how you define "life" and "individuality": slippery concepts. And it's hard to not confuse those with emergent behavior once you do get millions/billions of individuals together. Sure you could treat NYC as its own autonomous living organism. Or you could treat it as millions of individuals. It certainly doesn't make sense to treat it as gazillions of cells.

The idea of having free will has been debated for centuries, but intuitively I think it's obvious that a human has more free will than an ant.
How about "supported?"

You may have also missed the other features from 3.0 to 3.6. Cumulatively they are substantial.
If you don't like routing being done with metaprogramming, you can manually create routes yourself similar to this example[0]. I think the author is trying to show appealing APIs.

[0] - https://github.com/SergioBenitez/Rocket/blob/master/examples...
Hyper is not yet async, the preliminary work in the PR you linked to is for a version which has not been pushed to crates.io and is not finished yet.
I think this is a great idea. Hope it works out for you and is mutually beneficial
>As an owner of a Mac Mini from 5 or 6 years ago, I am fairly confident in guessing that this refers to what Apple calls “Mini DisplayPort with Audio”. My Mac Mini can use a Mini DP to HDMI adapter just fine — but it won’t include audio. Newer Mac Minis do support audio over Mini DP.

your sibling comment said something totally different... (no mention of audio.)
>> Is this actually true? Like...is there a material population of customers who really care about this?

Based on my memory of mac-related laptop threads I've seen on HN, I believe it is. It sorta begs the question - if it wasn't worth some marketing appeal, why would Apple keep making devices thinner?

Personally I prefer a bigger laptop for a Macbook Pro (think 2012 and earlier unibodies), but I tend to think I'm in the minority.
There's no major money in play politically, so they are able to do the right thing.
Will you post some results/thoughts to let us know how it went? Nothing specific about the conversations, obviously, just some general conclusions.
A good lse lecture about the role of luck in success and failure, and how people interpret it asymmetrically
(my success was due to hard work and talent vs I failed due to bad luck/didn't get a break), with some interesting social experiments that showcase this:

http://www.lse.ac.uk/InternationalInequalities/Videos-Podcas...
SRT?
The Radar Handbook by Merrill Skolnik often comes up as a basic reference covering some of these topics, radar and radio being intimately related. Plus the pdf is usually around: http://airspot.ru/book/file/961/radar_handbook.pdf
It is standalone though, not a library, and should not be an impediment to others, unless I'm missing something.
VanDeGraph has an interesting video basically agreeing with this: infants with iPads are watching toy videos and clicking randomly for hours on end: https://www.youtube.com/watch?v=m0Q5jO8I59w
Astronomers unveil the farthest galaxy
> I have to keep my phone plugged in all the time, which means I have a dongle on my laptop pretty much permanently. This is dumb.

I don't understand what you mean with this point? Why does your phone have to be plugged in permanently? Why wasn't it necessary with your previous MacBook?
Sure! Part of my goal for running this 3 weeks in a row is so that I can iterate on the process a little bit. E.g. is 25 minutes a good time, or is 15 or 45 better? I also want to see what the most popular topics are. I'll write a summary post in January.
I am getting a Database error.

Cached version:
https://webcache.googleusercontent.com/search?q=cache:9-w5CD...
Sorry, but you're wrong about iOS not supporting security fixes, and you're having to create an artificial situation to justify your argument: the situation where a user doesn't stay updated to the latest iOS, when in fact, the user has every motivation to do so.

Meanwhile, in your Android world, there are basically NO devices that are able to stay fully up-to-date with current Android for more than about 12-18 months. Apple wins here by a wide margin, supporting devices for 4-5 years, universally, no need to get lucky and have one of the 2-3% of Android phones that actually get updated a tiny bit longer.

iPhones are just as easy to replace the battery and screen in as any modern Android device; in addition, Apple provides screen and battery replacements.

Did I mention that Apple's warranty and warranty support are also vastly superior? Because they are. Especially with AppleCare, but even without.
Netflix, Amazon: Is This What ‘Peak TV’ Looks Like?
I used the ones in Chennai and it was pretty good. When the Vardha cyclone hit Chennai, most of the local ISPs went down (the internet in my area is still down). The internet at the railways was working good.
For games specifically, there's Unity or Haxe.
> but the cases of that at this point in time seem relatively rare

What, like the largest US mobile carrier injecting supercookie tracking headers into every unencrypted HTTP request? [1]

Yeah, I guess that's only 144 million people.

[1] https://www.eff.org/deeplinks/2014/11/verizon-x-uidh
That's not true. First, for example Dell's dock works fine with the Mac, second the chip is not Apple's but from Texas Instruments and the non functioning devices are not compatible with this chip. So Apple blocks nothing and devices don't have to go through any Apple certification program.
I can totally believe that Apple might have an internal consensus that it must be true. I am less convinced that it is true, though, y'know?
It's probably a wash. For the VCs that aren't on vacation, you likely have a higher chance of getting a meeting since their schedules are emptier. But the decision-making bar generally won't move up or down much regardless of how much free time investors have.
Wrong; iOS 10 support does extend back to the iPhone 4S. Just Google it for 10 seconds and you will see that.

Further, this proves my argument, not yours. Even if you were right and the iPhone 5 was the earliest model now supported, that device is more than FOUR YEARS OLD. There are zero Android phones from 2012 which can run the latest Android version. In fact, I'm not sure that there are even any 2014 devices that can fully update right now.

Meanwhile Apple's still supporting a device from 2011, FIVE generations ago.

Apple wins here, and it's not close.
Vi is the best editor
Ask HN: What are prime examples of quality code in open-source projects?
I read something recently on HN recommending that reading code is one of the most effective ways of improving your programming skills.

In light of that (and with a new year's resolution in mind), which are the open-source projects or libraries that you consider to be at the pinnacle of coding style for the particular language that they're written in?
Given Beale is described as a climate change expert in the headline and the first sentence, I was hoping to find a description of why he's considered such in the article. There is none. From the (admittedly limited) reading I've done elsewhere, describing him as such is not well justified. He was an EPA administrator and in that role worked on Clean Air Act regulations, but doesn't have a background in climate change in particular.

The juxtaposition of "climate change expert" and "fraud" in the headline also give the impression that the fraud is related to climate change, when in fact it's due to his claiming to be a CIA agent, making fraudulent expense claims, and failing to do his job.
Thank you. Actually, that underlying API looks great. I would prefer it any day of the week.
> They are on their mothers devices.

What?
Apple is losing focus again – with no Steve Jobs coming to the rescue this time
No, it's true, it's my problem. But I don't know what. I have good hygiene. I did a lot of research into fashion and purchased a well fitting wardrobe. I think I might come across as odd for reasons nobody will be honest with me about.
Mobile App Icon Design Tips for 2017
I've meant special relativity.