skysight-inc/HackerNews huggingface dataset:
LXC has supported user namespaces since 2013 and it works well enough. You could run unprivileged containers from Ubuntu 14.04. I think Nspawn supports it now too.

This is different from running the Docker from a user account. With Docker you are interfacing with the Docker daemon from a non root account but the container is still running as root. With Unprivileged containers thanks to user namespaces containers are launched and run from the user account.

But unprivileged containers need to be a simple no fuss experience and this can only get addressed in the kernel. On top of that the most popular user land container implementation Docker chooses to run containers without an init and since most apps you want to run in a container are not designed to work in an init less environment and will require daemons, services, logging, cron and when run beyond a single host, ssh and agents, just managing the basic process of running apps and their state adds tons of additional complexity for users. Integrating user namespaces on top of this is going to be non trivial.

Contrast that with LXC containers which have a normal init and can manage multiple processes enabling your VM workloads to move seamlessly to containers without any extra engineering. Any orchestration you already use will work obviating the need for reinvention. That’s a huge win but if you listen to the current container narrative and the folks pushing a monoculture and container standards it would appear there are no alternatives and running init less containers is the only ‘proper’ way to use containers, never mind the complexity.

A lot of problems related to unprivileged containers are in kernel namespaces and cgroups which are not going to be solved in user land. Cgroups are not namespace aware and only root users can manage them. Access to resources like mounts and networking require privileges and that won’t change. These are probably not 'sexy or fundable’ so the problems remain unsolved, and instead complexity deriving from niche use cases whether security or micro services is foisted on everyone.

A container is just a Linux process in its own namespace that anyone can create with unshare, iplink and chroot or pivot root. An ‘immutable container’ is nothing but launching a copy of a container enabled by overlay file systems like aufs or overlayfs, a ‘stateless’ container is a bind mount to the host. Using worlds like stateless, immutable or idempotent just obscures simple underlying technologies and prevents wider understanding of core Linux technologies that need to be highlighted and supported. But we choose to focus on wrappers and the narrative becomes about funding and standards. Without more focus and support on the filesystems, namespaces and other critical enabling technologies end users will not get a consistent experience. How much support do they have beyond the occasional article on LWN? These devs and projects work in obscurity with little support. This does not seem to be sustainable development model.
They should migrate to crc32c!
>Ralf-Phillip Weinmann had a good Black Hat presentation about this bug class.

https://www.youtube.com/watch?v=PqW8-MUu09c

https://comsecuris.com/research/slides-bignum-bhus2015.pdf
Sure, but whether or not there are universal preferences is also subjective.
It should be noted that this isn't using LetsEncrypt's client.
"No offense" is the generalized form of "I'm not racist, but"
Firstly, your typical shared space (dorm, apartment) is designed to be cheap and you probably hear your neighbors through the walls. This isn't a requirement.

Secondly (this is more a theory), having a roomie is often just too informal to settle on and enforce social contracts for public spaces.

Yeah man, I'll clean the dishes. (Never cleans the dishes).

Although in college, I used to have the apartment where people just showed up randomly and chilled / did homework / played a game for 10 mins and leave (or crash on the couch). They'd help clean the place, were free to leave some food in the fridge and such and were generally very respectful. Donate an N64 or a sound system to the cause.Turned out my roomie hated it and never said anything, but it worked well for me. I just don't like it when people feel like a 'guest' or I'm treated like a 'guest'. It's uncomfortable.

Nowadays it's rude (and time consuming) to just drop by and I rarely see my friends on weekdays. Then they offer me drinks and such and theres a weird formaility to it that I don't enjoy at all. I think we need a 'third place', effectively a community hangout where everyone feels they have some sort of shared ownership and you can also expect people to be there regularly. The closest example I've found is our local hackerspace, but the audience for that is somewhat limited.
> Note the distinction between birthday and birthdate

https://en.wikipedia.org/wiki/Birthday
That's how I felt with the 90 degrees bends.

However, you have the choice to draw it your own way.
https://github.com/twitter/labella.js/blob/master/docs/Rende...

renderer.getWaypoints(node) will give you the positions on the route and you can draw the connector as you like.
>"In order to estimate what is the true mean of our variants statisticians rely on the Central Limit Theorem (CLT) 6 which states that the sampling distribution of any statistic will be normal or nearly normal, if the sample size is large enough."

Wow, no. This is a very dangerous misconception. First sentence of the wikipedia page gives a much better definition:

"In probability theory, the central limit theorem (CLT) states that, given certain conditions, the arithmetic mean of a sufficiently large number of iterates of independent random variables, each with a well-defined expected value and well-defined variance, will be approximately normally distributed, regardless of the underlying distribution."

https://en.wikipedia.org/wiki/Central_limit_theorem
Fnv is fast because the code is tiny and hashing a few bytes is fast. xxhash uses multiple parallel streams and has very high throughput. They are fast hashes, each in their end of the spectrum, Fnv for 1-16 byte keys and xxhash for long data. It's better to call xxhash a checksum, since that's its purpose.
> Fighting for your morality is convincing others of its superiority.

Unless your morality includes letting others come to their own conclusions about what is right. In that case, trying to convince others that they should let others pick their own morals would be self-contradictory.
That's a misunderstanding. If you need a hash or checksum for very long data (megabytes, gigabytes), use xxhash. It's not the best for hash tables.
Show HN: What I've Made in 2015
Oh, it’s pretty simple.

Buy during sale at H&M, C&A, Vero Moda, etc. Normal clothes.

Normal people don’t have money to buy bags for $2k. Normal people are struggling to pay their bills while being a single mom with kids. Normal people can be lucky if they can afford clothes from ALDI, and don’t have to go to the Red Cross. That’s the reality for most of the former middle class.

My family luckily doesn’t have to live like that, but you are seriously not "normal person". You’re rich. Your friends are rich.

When your friends buy bags that are over twice the monthly salary of some people, bags that cost more than a vacation for 4 people in another country, then you are rich.
Yes it is. The old stuff just happens to still exist but it's obviously not "preferred".
Some algorithms are tricky, but there's a lot one can do without a GC via epoch-based reclamation schemes: http://aturon.github.io/blog/2015/08/27/epoch/ (I guess this could very well be regarded as a sort of application-specific GC, but, if anything, it feels closer to reference counting than a tracing GC).
Someone sent me a direct link and I had no idea what "Labels should be beautiful" meant.

The slogan should be changed to "Labels on a timeline without overlap", just like the hacker news thread title. :)
The intention of this work was to find ways to put labels on any axis (1D). So if you want to use this to label peaks of area chart you can run labella to get the x position and then figure out y position by yourself.

But it won't support placing label on a zigzag path.
Was just thinking in moldy old c code the two places to use ++ or -- was when either incrementing pointers or indexes.

The other is ++ and -- also map directly to old school assembly language instructions. Helpful when writing the back end of old school compilers.

Probably doesn't make much sense in a language with foreach() or dictionaries, etc.
Automatic GitHub Pages Deployment for Polymer Elements with Travis CI
It’s obvious he’s far above any normal person, part of the rich. His "friends" buy bags for $2k each, according to this post: https://news.ycombinator.com/item?id=10673865

I don’t think the struggles of normal people, or the fact that people have to save money, are understood by someone like him.

EDIT: I don’t usually read through comment histories, but here it’s to provide a context, not to judge the person, and these earlier comments from him, a few weeks ago, harden my belief: https://news.ycombinator.com/item?id=10288459 https://news.ycombinator.com/item?id=10124135 https://news.ycombinator.com/item?id=10049439 although this comment https://news.ycombinator.com/item?id=9195212 goes in the other direction.
It's a wonderful feature for writing DSLs, but it's also confusing when you intermingle DSLs with the standard language. It really tends to balloon the amount of information you need to know to read others' code.
Some may indeed not have a real choice for whatever reason but to live in a very high cost-of-living area. However, many do have choice but choose to live in core urban areas of a handful of mostly coastal cities. This is a somewhat new thing in SF and has certainly intensified in recent years. However, the new grad who lived in squalor in Manhattan because they couldn't imagine living in Queens or (heaven forbid) New Jersey goes back decades.

And many, many people don't live in those most expensive cities. There probably is an increasing concentration in some industries. But there's often a choice nonetheless.
Facebook bows to Belgium, will stop tracking non-Facebook users
Ha! This is great. Might consider putting together something similar. Thanks.
The law also protects you from harming yourself.
Wether it be by denying you freedom to do so (e.g. forcibly institutionalize some one for attempting to commit suicide or when they declare their intent to harm them selves) or by suing you for damages you cause to yourself (e.g. If you ram your car into a wall and only hurt yourself you will be tried for that in many countries).
Oh god, the lawn. I'll never understand the lawn thing. Space to hangout outside is good, a garden or landscape is a cool hobby, but a lawn is a time/money sink that doesn't look that great, is a poor use of water and I'm allergic to anyway. It's also a great way to get passive aggressive letters from the home owners association.
lots to look into, thanks!
Eric S Raymond, wrote The Cathedral and the Bazaar, co-founder of the OSI (Open Source Initiative)
The first thing I learned when programming was GOTO and raw pointer handling. Both are simple. Both are pretty stupid.
Mark Zuckerberg’s $45B Loophole
Oh, so "slippery slope" then. See, I can throw out logical fallacies like they're candy too.
A little digging (as this is interesting to me as well) brought up the Pointer Assertion Logic Engine: http://www.brics.dk/RS/00/39/BRICS-RS-00-39.pdf
Well in that context the next question should be does growth need to be distributed evenly for the economy to be considered 'healthy'. But for individuals such as the person mentioned in the article this is less relevant, they shouldn't make financial decisions or life choices as if everything is good because the macro-level is seeing positive growth.
If I am the sole owner of a work, I can change the license of newly distributed copies from any previous license to any new license that I want to, even if the new license is more restrictive. The new license doesn't retroactively apply to copies that were distributed under the old license, only new copies distributed under the new license.

However, my original question still stands. If I hack privately on a git repo and never distribute it, and then I only add a license in commit N right before first releasing it publicly, what is the license of commits 1 through N-1, which do not contain a license themselves (or perhaps contain a different license) but were never distributed separately from the license contained in commit N?
Backfire effects in monitoring workers' internet usage (2009)
The Foundation stuff is a complete Swift re-implementation of Foundation (fairly impressive goal) and is still in-progress (basic classes like NSArray and NSData look complete but none of NSURLConnection is implemented). They are targeting Swift 3 to have them complete. As the Core Libraries project page says:

"These libraries are part of the work towards the future Swift 3 release. They are not yet ready for production use, and in fact are still in the earliest stages of development"
This is not reingold-tilford. The algorithm has two parts. The first part is a heuristic to distribute nodes into multiple layers when it won't fit in one. Then for each layer, it is a physics simulation with the labels. Each label has attraction force to the desired position, but they also push each other.
which isn't an exaggeration

Suppose, then, that you quote for the class the specific average quantity of transfats in, say, a 6 ounce steak serving... and how that qualifies as "laden with".
Holberton School [0] & Make School [1] are very good alternative to college.

[0] https://www.holbertonschool.com
[1] http://www.makeschool.com
For anyone wanting to see this explored further, William Gibson's latest The Peripheral deals heavily with the idea of people going places via telepresence.
White mana cards are cheap and stupid: Querying every Magic card ever made
As stupid as it is at least it makes sense now. Our political system has certain reached similar levels of insanity as well. They might have even been correct in their thinking in the past.
x = x + 1 isn't so fun when you're writing

long_variable_name = long_variable_name + 1

That's the problem being solved in a modern language. The ++ and -- operators don't add much. They're the perfect a combination of rare, unnecessary, and often ambiguous. Not to mention that their semantics are often different in subtle ways between languages.
Good to know. I was using FNV to hash spam signatures which are typically small. Glad I chose well.
These days yes. But when C was first being developed, when you might have had 64K of memory for everything? Back then it might have been a sane choice.
">>there is NO proven link at all between dietary cholesterol and blood cholesterol
>
>Surely you jest?

Here's a clear example of your intellectual dishonesty. You specifically cut out the "absent carbs" term when quoting me and then rattled off studies that specifically did not control for carb consumption.
Are you arguing that the scientists who developed the first atomic bomb share no moral responsibility for the (positive or negative) effects of its use?

Dr. Rogeway is morally responsible both for the use of his encryption for cyber ransom and for the use of his encryption to allow private democratic and economic discourse.

If you think the negative effects of publicly available encryption outweigh the positive effects, it would be immoral to be working on making better encryption publicly available.

Obviously, there is a complicated moral calculus behind which effects are foreseeable/likely relative to your other available actions and their foreseeable/likely effects.
Well, Swift and C libraries via sysmodules actually.
Standard where, and in what cultural context?

I'm sure I've never worn a $1000 outfit in my life, and that includes a made-to-measure three-piece suit.
Recently it seems to be better about respecting download settings. The download size also seems to be an upper limit, for example Team Fortress 2 pretty much always showed up as a 10gb update download, but spent less than 5 minutes actually downloading files. Not sure if that estimation has been fixed recently, but it used to be the case.
That can still be done without a GC, e.g. the following is sketch of lazy evaluation in Rust:

use std::mem;

enum Lazy<T> {
Thunk(Box<Fn() -> T>),
EvalInProgress,
Forced(T),
}

impl<T> Lazy<T> {
fn new<F: 'static + Fn() -> T>(f: F) -> Lazy<T> {
Lazy::Thunk(Box::new(f))
}

fn force(&mut self) {
*self = match mem::replace(self, Lazy::EvalInProgress) {
Lazy::Thunk(f) => Lazy::Forced(f()),
Lazy::EvalInProgress => panic!("forcing while evaluating"),
Lazy::Forced(x) => Lazy::Forced(x),
}
}

fn get(&mut self) -> &mut T {
self.force();
match *self {
Lazy::Thunk(_) | Lazy::EvalInProgress => unreachable!(),
Lazy::Forced(ref mut x) => x,
}
}
}

fn main() {
let mut lazy = Lazy::new(|| {
println!("evaluating");
10
});

println!("first: {}", lazy.get());
println!("second: {}", lazy.get());
}

Output:

evaluating
first: 10
second: 10

(There's a pile of tweaks/optimisations that can be made, like making `force` truly a no-op for values that have already been forced and removing the need for the lazy object to be mutable, but the above demonstrates the core idea.)
Seems like a strange argument to make given RMS' gigantic impact on the world.
Forced? Dude. People move to the big city because it's where the fun happens. Sure, it's expensive, but you get what you pay for and then some.
Society will evolve around them and they'll be bread out within a few generations of gene editing can lead to such drastic changes.

Considering that even today intelligence isn't that important as far as what limited natural selection we might still be experiencing it might not be such an easy task to accomplish.

Also because natural selection has considerably become less effective as we became a technological species gene editing might be our only way to continue our evolution.

That said widespread gene editing also decreases the genetic diversity so don't expect anyone to promote it anytime soon until controlled mutation can be successfully added to the process.

And while this is an interesting philosophical exercise we are probably at least 5 decades away from it becoming a reality and by then the overall standing of society will change drastically.
Seems like it needs more ground clearance. Surely someone at Wired can hack on some thicker tires.
Ask HN: Frustrated with recruiting Manager
I applied for a position sometimes last week and strangely,i got a call from the recruiting manager few days ago while i was doing some consulting work.He said he would like to chat with me briefly if i have the chance.I told him i was busy now but i would send him an email when i am done.So,i gave him two dates that i am available.He picked the earlier on.Strangely,one hour to the schedule interview,he emailed that he has changed to the second one.

Now,the second date came,he called but complained after few minutes that he could not hear me well,even though,there was nothing wrong with the phone and i was speaking loud and clear and i could hear him well.
So,he asked me that he would have to reschedule for another date.I must say, I have never experienced stuff like this before. I am thinking whether to just move on and save myself all this headache as i applied to more than enough places(23).
I need solid advice.
Thanks.
I asked him the same question in this thread, here his answer:

"Honestly, [$1000] is cheap as fuck. Have you met a regular person? Regular people go shopping every week for different shit, its unbelievable. I have friends that buy bags for $2k each, hats for $200, etc. Just because I literally only bought a few sweaters, a jacket, and boots a decade ago does not in any way make me inefficient. I am also not burning money by buying $50 sweaters." https://news.ycombinator.com/item?id=10673865
Yes, I am sticking with F# and Typescript. I still love PicoLisp and Shen for my own projects, and as Lisps. Shen runs on everything, and is very versatile, but has minimal libraries and community. I find both very readable months later, but then again I also love the J Programming language! Clojure/Clojurescript are too convoluted with their purposeful tie-ins to the JVM/JavaScript. Cleaner Lisps, Common Lisp, are easier for me to deal with later on when reviewing code I've written, although, I have not written anything medium to large.
> Observe any abandoned or unused commercial structure in your town, such as the old building Walmart vacated to build a bigger Walmart 1000 feet down the road. Did the price of building either structure include the cost of cleaning them up?

The cost of cleanup typically falls upon the person who builds there next.

If that new Walmart is built on a property that already had a strip mall, first they tear down the strip mall and bear that cost.

The new Apple campus is a great example. They tore down a bunch of old HP buildings and had to bear that cost. They reduced the cost by grinding up the old buildings to make concrete for the new building. Also, they probably discounted the purchase price of the land to account for the cleanup, so in some respect, HP bore that cost too.
A Life Ruined by Feminists and the State: Only the Internet Can Save Gregory
Yes but the Avatars cost like $1B each and were neurally customized to exactly one person. I was thinking more of Surrogates[1] where you could remote into a robot pretty easily.

1. http://www.imdb.com/title/tt0986263/
Install pipelight, then install the silverlight plugin

http://pipelight.net/cms/installation.html
I wonder about how much of the MOIC is driven by follow-on funding. Figure 4 indicates most of the value created came from early stage investing, but it indicates that that's the "initial" deal stage. So it may well be that most of the deals were really 25x+ MOIC deals at early stage - but the net fund MOIC for most investors was lower because they did extremely strong follow on rounds when they identified the company as a winner. If that's the case, the implied message about "VC investing is NOT a power-law" may be misleading.
All the examples where they're useful are contrived.

And simplicity is an actual goal of computer language design.
Thanks so much for your offer to help - as soon as I figure out the best course of action I might contact you. The fact that they took the page down gives some hope - maybe they're not as reckless and understand that the public won't be happy about this. We'll see what happens next.

>In all honesty, make investors and bankers afraid and any government will shut up.
This is a great idea in general, but it requires a strong corporate/investor establishment that is independent from the government. Unfortunately and unsurprisingly, 90% of the Kazakh Forbes list are either 1) straight up politicians, 2) politicians' close relatives (offspring and in-laws), 3) those, whose involvement with government is "open secret" (e.g. someone rumored as being a president's personal banker), or 4) those doing in oil and gas, heavily regulated industries where government's cooperation is required to make it work. :(

Anyways, thanks for all the insight!