skysight-inc/HackerNews huggingface dataset:
> Having a guard page is technically difficult in Linux since there's no virtual memory in the kernel, so you can't have an unmapped page

This isn't true.

The last line in the article links to patches that add guard pages to Linux: https://lkml.org/lkml/2016/6/15/1064

You absolutely have virtual memory in the kernel—that's how the kernel gets to live at a fixed high address in every process, and that's how it gets to read things from userspace when it needs to. When a process makes a system call, the virtual memory map stays exactly the same; the CPU just switches to supervisor mode and starts using a different segment that enables accessing kernel memory.

What you don't easily have, at least on Linux, is the ability to page things out (which is sometimes colloquially called "virtual memory" thanks to some customer-facing marketing in the '90s), but that's not an inherent requirement of monolithic kernels. NT, for instance, allows paging out certain parts of kernel memory (though obviously not the parts that are needed to page things back in), at the cost of a bit of mental overhead from driver authors. And this isn't necessarily solved in microkernels or exokernels: your swap device is going to be supported by at least a few userspace drivers. If you're using a machine with full-disk encryption, your disk encryption server isn't allowed to swap.

What you also don't have on Linux is different mappings for different kernel threads (all of kernel memory is mapped in every thread, accessible by kernel code only) and memory protection between kernel threads, but you don't really need that, and that wouldn't have helped solve this problem.

> kernel stacks have to be allocated contiguously

There's no particular reason that segmented stacks (like old Go or old Rust had) couldn't be used in the kernel. They're just complicated, and both Go and Rust found that they were bad for performance.

> It's a lot easier to write than kernel code.

I'm not convinced by this. Apart from the experimental evidence that monolithic kernels have been far more featureful, there's the inherent problem that you don't really know what assumptions you get to make. You're only in mostly-userspace code; there's the example I mentioned above of the full-disk-encryption driver, which doesn't get to swap because it would be implementing its own swap device. If you want your OS to support swap files, filesystem drivers can't swap. If you have syslog over local sockets, your socket implementation can't syslog. And so forth.

What is easier (as I advocated in another comment) is to keep the monolithic kernel model, but pretend that privsep within a single kernel doesn't happen, and run it all within VMs.
How  to Get Your Employees to Be More Curious
That's what we expected, but actually today hundreds of people are doing it and sticking with it.

I think the key things that have changed include:

1. The existence of a community who earn to give, which makes this effect work in the opposite way. (You can also seek out firms with a good culture.)

2. People making public commitments of their intentions to donate e.g. through Giving What We Can, or Founder's Pledge if an entrepreneur, or simply telling their friends.
The article starts of suggesting a strategy of working and then donating your money, referencing Bill Gates and a Google software developer as examples.

This strategy is basically, vacuum up a bunch of money and then pour it into doing good. But necessarily a lot of this money gets pulled out of places where it would do good, even if that good is simply putting food on the table of a poor family.

If you're an engineer or someone who creates things, it's probably actually creating value, not just moving it around and siphoning off some of it. But often that value you create is harmful: the Google engineers, for example, probably spend a lot of time working on ads, user data collection, partnerships with banks, etc.

And with CEOs like Bill Gates, the harm is much clearer. The money that has been spent by for example the US government, on Microsoft products could have been spent on building equivalent Linux products for a fraction of the cost, and the remainder spent directly on help programs. Bill Gates isn't some savior because he inserted himself as a middle man in the process of spending money on good. Sure, he's putting money into good now, but only after taking money out of good for decades, spending a lot of it on himself, and still keeping a sizable chunk for himself.

This applies to almost any rich philanthropist. They look good when they donate billions of dollars, but the world would have been better off if they hadn't amassed those billions of dollars in the first place. I'm not impressed when people decide to do a little good after building a fortune on a mountain of skulls.
Ask HN: Good MOOCs to fill in self-education?
Hello,

I am a self taught developer with a shocking lack of education. I'd rather not go into the why (for fear of sounding like a sob story), but suffice it to say i'm far older than my resume would lead you to believe. Despite all of that, i am very fortunate that a position fell into my lap in a startup, and i moved my way into an engineer position, to which i'm doing alright. I've been there many years, but now, i'm looking to move on to a new job.

With that said, i feel like a CS fraud. My knowledge of computer science is woefully small, and competency i do feel i have is purely in building apps and (thankfully) writing clean code. However, i fear that clean code won't get me through an interview process. Memory management, bit shifting, algorithm design and computational cost, these are the things i'm terrible at and would love to feel competent at. So, i am attempting to fix that.

I've picked up a book about interview questions as recommended by a friend (Cracking the Code Interview, for those interested), and now i want to get a more focused understanding of computer science.

Are there any CS MOOC courses that you would recommend? I am hoping to find not only a good course, but one that will also teach me the fundamentals i'm missing. In a perfect world, it would skip much of the tedious setup that a lot of classes go through, but i suspect i may just have to bite that bullet.

I've heard good things about CS50x (on edx), but i fear it focuses to much on real world applications - something i have a fair handle on already. I need CS understanding, for interviews.

As an aside, feel free to recommend any MOOCs you think might help. I seek knowledge to fill my shortcomings.

Thanks to any replies!
> The Hessian is too expensive and too big.

Not necessarily, often derivatives are analytically known in ML.

> MPI is not great at even high hundreds of cores

? You realize that Sequia, which I have run on, has codes that scale to all two million processors.
> Meanwhile, the middle middle class and lower middle class, as well as the middle class as a whole, are not. And the top 1% take home 49.9% of all income.

No, they don't. The top 5% have a little over 20% of all income [0].

[0] https://www2.census.gov/programs-surveys/cps/tables/time-ser...
I don't know. A lot of fast food tastes good. Like a fresh McDonald's plain hamburger which doesn't have any MSG or gratuitous fats or oil.

And it's "principle."
Most people aren't in your or my position, where we might know (sometimes personally) the management at an ISP. Most people aren't in a position to build their own server. Heck, the vast majority of people who want to host any thing aren't in that position. And who wants to spend $200+/m to on their personal email?

The number of colo providers who refuse to allow customers like VPS hosting companies (who buy rooms not just rent a piddly little 2U from a shared cabinet), is pretty small.

All in, your advice isn't tenable for the majority of technophiles, let alone your slightly-more-technical-than-average user who wants to setup a mailserver. The barrier to entry, your way, is insurmountable.

Maybe it's time for a startup in the "DIY mailserver" space, that offers clean IPs for personal use mailservers and hand-holds through the process?
This is a noble effort. Animal agriculture is pretty terrible. It's massively wasteful in terms of land use and water use. It's incredibly inefficient when it comes to energy use (beef cattle production requires an energy input to protein output ratio of 54:1 [1]). And, of course, there are the animal welfare concerns.

Even given all the problems, I'm convinced that people won't stop eating meat unless there is a market alternative that's at least equivalent in terms of price, taste, smell, texture, and nutrition. While the plant-based alternatives are getting better and better and I'm a big fan, I'm much more excited about the cultured meat alternatives.

Basically, you can think of a cow as a biological machine inside which certain processes occur which lead to things humans like to eat (milk, meat). If you can replicate those process in the lab instead of in the cow, you can get real meat without the negative side effects mentioned above.

Until very recently, this field had been relegated to academia, but there are now several companies working on commercializing it, like Memphis Meats, Mosa Meats, and Modern Meadow. In my mind, this is the only solution: give people real meat, made without the animals.

[1] http://www.news.cornell.edu/stories/1997/08/us-could-feed-80...
[2] disclaimer: I'm an investor in Memphis Meats (http://www.memphismeats.com/)
> Without a GUI, mainstream computing probably wouldn't even exist let alone mainstream programming.

As a child growing up, learning to function in society by speaking, reading, writing, and generally understanding English was a much harder task for me than learning to program in BASIC. BASIC is simple, predictable, logical and downright easy compared to English.

We take learning to read and write for granted, but its a messy, difficult, and often illogical affair. We have such high literacy rates because we start kids on it so young, and because its everywhere.

Its easy to imagine a version of our world in which children learn to interact with computers without GUIs, if CLIs were the norm. Children would learn them faster than adults.

Consider those children for whom learning a CLI was prerequisite to playing video games. All of those kids who I knew quickly memorized the requisite commands.
Family member made me watch Cowspiracy on Netflix, a documentary on the effects/unsustainability of large-scale animal agriculture. I'm sure someone on HN can prove the movie wrong, but it did scare me into wanting to reduce my meat consumption. If these faux meats can be produced large-scale sustainably and with significantly less negative impact than raising the real meats, I'd say that's a win.
The 2010-present "growth" (under 2%) has been bankrolled by a massive increase in debt, rising rapidly from 2010.
The chart below [1] shows the national debt of the US, but the overall debt of the population is just as depressing.
(Yes, credit card/mortgage debt is down from 2010, but college and auto loan debt have skyrocketed)

[1] https://en.wikipedia.org/wiki/National_debt_of_the_United_St...
Even if carbohydrates aren't bad, I prefer foods that are low in them when possible because other foods have disproportionate amounts. Eating a low-carb protein allows you to eat a cookie later and still hit your macro targets.
Chart which nicely shows this at http://marginalrevolution.com/marginalrevolution/2016/06/the...
I eat meat, love the taste of it, but would be the first to switch to a plant-based alternative.

I know it's tough to acknowledge it, but lots of people like me are a bit hypocrites when it comes to meat: we hate killing animals, but we love the outcome.
Where does "with a couple seconds of highlights posted on a monetized YouTube channel" fall in that? No longer a hobby?
So.... is it racist for people to say white judges are being harsher on non-white defendants? Because in that scenario, it is usually the white judges that are viewed as being a problem. I don't see any difference here. Full stop.
Having BEAM specifically designed for Erlang concurrency gives it a number of specific benefits. Specifically in how it schedules and handles the VM processes to do efficient concurrency. For example, since the processes are in the VM, it can count the number of function calls to preempt a process that is taking too long.

You can learn more about BEAM here:
https://www.youtube.com/watch?v=_Pwlvy3zz9M&feature=youtu.be
http://www.erlang-factory.com/upload/presentations/708/Hitch...
Microsoft: Nearly one in three Azure virtual machines now are running Linux
They have, and they haven't. Income in at least the US is two seperate Pareto distributions added together. One has grown, the other has not. And two people have "left" the middle and "joined" the upper distribution for every person who "left" the middle and joined the lower one.
They've renamed OS X to macOS. That's it.

Always read past the headline before getting upset.
I prefer (and am so far practicing my self) population control to bring the number of humans inhabiting Earth towards a /sustainable/ level with all living humans having the quality of life we'd like to see.
There has always been things like Codea as well, for a long time now:

[1] http://twolivesleft.com/Codea/
Not really. If you move to Mogadishu you're not going to be able to get a home equity loan. Choosing good neighbors is important online or offline.
This appears to be the report on which the story is based: http://www.urban.org/research/publication/growing-size-and-i...

This WSJ article (paywall) has a fuller write-up and links some other related research: http://blogs.wsj.com/economics/2016/06/21/not-just-the-1-the...

Marginal Revolution has a write up with an interesting graph that is credited to the WSJ but I didn't see there: http://marginalrevolution.com/marginalrevolution/2016/06/the...

In case you don't want to click through the definition of upper middle class used is $100,000 - $350,000 for a family of three in today's dollars (adjusted for inflation and family size as appropriate).
This sounds pretty sensible. I wonder if there's a simple way to reproduce it. Maybe:

I. Build your app as a thin JAR, with:
a. a Main-Class entry in the manifest
b. Class-Path entries in the manifest
c. a file containing a list of dependency coordinates (group, artifact, version) in META-INF
II. Write a shell script (for whatever value of 'shell' you like) which:
1. takes a Maven repo URL and a Maven coordinate (group, artifact, version)
2. downloads the JAR from the repo, extracts its dependency list, then pulls its dependencies too
3. (optionally) somehow records which JAR is the main one, say by writing a tiny shell script or a symlink pointing at it

You might be able to use a standard embedded POM instead of a dependency list, which might reduce the work a bit, but that would then require doing transitive dependency resolution at deploy time, which is probably a bad idea.

Phase I is something like 10 - 20 lines of Gradle, tops. You could pack it up into a plugin easily enough. Phase II is a similar amount of shell script, maybe more.

For extra safety, add SHA3 hashes to the dependency list file, and check them when you download the dependencies.

I've described this as using a Maven repo, but that doesn't mean it has to hit Nexus or whatever; you can just put JARs in S3 in the right layout. A while ago, i was doing this by maintaining a repository locally, and just pushing the whole thing to a Bitbucket website:

https://bitbucket.org/twic/twic.bitbucket.org/src/14ac48d4c4...

You could do something similar, perhaps going from Nexus to S3.
Diary is one of the best ways for self-reflection. One can also follow own mind-changing over time.

It is also some kind of self-development where one can improve self-expression and ability how to express own thoughts. Its very important in various nowadays job positions. Especialy in creative one.
From my observation, I notice that a lot of younger generation Chinese adults are likely to be taller than their older fellow country people as well. I have many Chinese coworkers and even the female coworkers are at least 5 feet 5 inches or taller (for young male coworkers, they are usually at least 5 feet 8-10 inches). Nutrition certainly plays a big role in determining one's height.
The short answer is yes, training neural networks it is compute bound in the sense that substantially improving computational throughput would enable bigger models to be trained on bigger datasets than is currently possible. The speech recognition models we train at Baidu commonly require tens of exaflops of work to train.

The long answer is that there are actually many performance limits, including compute, memory bandwidth, communication bandwidth/latency, memory size, and several others. Some neural net models are more sensitive to specific limits than others, and increasing computational throughput alone would benefit some types of models more than others.

One of the takeaways from this work is that recurrent neural networks are actually more compute intensive than they may appear to be because they reuse their parameters over many time steps, and the reuse factors are actually higher for RNNs commonly used in speech recognition than the convolutions commonly used in image recognition.
Ive been an atkins follower for... 20 years. I eat mostly meat.
The few things I indulge in other than meat are mama lupe low carb tortillas, blue diamond almonds almost all flavors, and some veg like cauliflower because its LC. And cheese. I am a cheese addict. :/
Other than that I don't touch anything from a grocery store.
I do make paneer cheese and butter from raw milk I get from a sweet lady that has a small farm 30 minutes from here. Love paneer! And let me tell you if you have NEVER had butter made from RAW MILK by hand your missing out. That garbage in the store called "butter" will seriously make you rethink what the EFF you are eating if you taste raw milk butter you make yourself. It's not a subtle "eh I can kind of tell the difference." Its more of a "HOLY SH!@# What the @#!$ have I been eating?!?!" moment.
But to be fair, MSG is amazing.
https://www.google.com/insights/consumersurveys/home

10 cents per question for minimum 500 people.
I think what they wrote is an indicator that they know something about hiring.

I've been on both sides and the key lessons the parent laid out are good. They're related more to being a professional in interviewing and whiteboards, not key lessons to ensure you hire the best people available which is what you are discussing.
Your stated aim is to change career plans. Why is that?
Pretty sure that's Konami you're thinking of :)
I don't speak German and I already know Swift but I'd go to see that!
If Nexus doesn't have that functionality, you can probably put an Nginx reverse proxy behind it that will always serve local files if available.
Yes, everything is bad if taken excessively. I am asking is there any evidence that "normal" levels of carbs are especially bad?
This must be the first actual meaningful change to the site since the whole "we're a startup again" and "tripling our headcount" episodes.

And it only took a year!
A good step in the right direction. I wonder who/what it would take to get a waver from these regulations. As a drone pilot myself, it's good to see training requirements and background checks, and hope they will do more to clarify the legitimate privacy concerns that people can have.

The one part that I found very interesting is 'First-person view camera cannot satisfy “see-and-avoid” requirement but can be used as long as requirement is satisfied in other ways,' opening the door for some wiggle room on how the line of sight and see-and-avoid rules get applied.
I would buy Sony products again if they would just allow that functionality again. I still have my PS3 which I used as my primary desktop for a while, and the data is still there, but inaccessible, so it should be sufficient proof. The money is kind of nice, but by now it should be clear that it poses no threat to Sony to allow people to run their own software, especially with the hypervisor intact. I'm not aware of any new vulnerabilities that came up in the last six years because of OtherOS, and people have even managed to get Linux running unofficially on PS4s without causing any problems to Sony's business.

Imagine if Apple did something like this and decided to disable Bootcamp on all Macs and make your Windows and Linux installs inaccessible if anyone updated your computer. This is probably the most anti-consumer and anti-developer move I can think of in computing history (although the rootkit Sony CDs were pretty bad too). Sony had a whole developer community working for them for free, making software, supporting their system, and evangelizing for them before they decided to shut them down and even pursue them with legal threats for doing what Sony asked them to do, experiment and create.

Even if they somehow can't fix the PS3, just adding some official support for OtherOS on PS4 which uses conventional hardware would send a huge message that they actually care about their fans and would help to counter Microsoft's move opening the Xbox to Windows apps for expanded utility.
Making progressive web apps even better: ambient badging and “pop into browser”
fwiw, HK is in private beta: https://stripe.com/global
I feel badly for the person who didn't realize you were sarcastic, passionately defended the idea that git != github, and got down-voted as their congratulations.
There's an old saying: "the best way to get rich is to help a rich person get even richer."

If a small handful of people can create and sell a product that is profitable and scales well enough, they will be rewarded.

However, the employees brought on after the company is profitable and/or has a high valuation (>$100m) are simply seen as costs. They have to be on-boarded and given the relatively low wage ceiling compared to the early employees, they have ample reason to quit and move after a year or two, so they become a turnover headache as well. Not to mention, the newbies are often the first to go if a layoff is necessary.

So, in short, don't let yourself become expendable.
We maintain and check SHAs of the dependencies for that reason.
I am pretty surprised by the general lack luster comments bordering on negativity here. Personally, I think it is great to see a major retailer take even a misguided stab at improving child tech education which has quickly fallen behind demand (in America).

Do I think the approach is more than a little bit wrong? Sure, GUI programming a non-useful task wouldn't be my choice.

Would I prefer a more robust longer-term program? Absolutely.

Does this fall well short of actually being useful/addressing the original problem? More than likely.

But despite of all that, I would much rather have Apple try this and hopefully improve on the offering pending demonstrated interest than not have it at all.
Imagine the Komodo Dragon on a continent. Yikes!
Because you need glasses?
>hope they will do more to clarify the legitimate privacy concerns that people can have.

I suspect that the FAA would not see that as part of their mandate. They're primarily concerned with aviation safety in this context.