skysight-inc/HackerNews huggingface dataset:
> nobody relevant uses Linode for production any more due to security and other issues

I'm not in the industry (I'm in higher education), but this is news to me.

Are there any use cases where Digital Ocean/Linode would be better than AWS? A small blog, website, perhaps?
Fred Wilson and especially PG have created a dangerous cult of personality around the narrative of the ethical hacker.

Young folks in their 20s and 30s have unfortunately fallen for this narrative hook, line, and sink.

It's very sad when you think of all the wasted man hours, much of it during one's prime, spent pursuing this startup game—inspired in large part by writings from VCs like PG and FW.

PG and Sama present this picture of YC and SV being a place of meritocracy, that aspires to be free of racial or gender bias, where everyone is working on ethical world/life-changing projects.

Old-timers know this is a lie. New-comers are starting to uncover the truth themselves. Those of you who live in SV... just ask yourself how important it is these days where you went to school, what places you worked at, who you know, etc. I was at a hip SF bar the other day. Reminded me totally of DC. Everyone you meet, the same questions:

So what do you do? Where do you goto school? Where do you work?
https://github.com/angular/universal
https://github.com/angular/universal-starter

Design doc:
https://docs.google.com/document/d/1q6g9UlmEZDXgrkY88AJZ6MUr...

It still seems like a WIP
Take a look at that graph:
http://www.theatlantic.com/business/archive/2015/02/why-the-...

Productivity is not the problem, productivity is one metric the US economy has been doing great on.
Stripe insiders have been leaking sales numbers and fraud numbers of stripe merchants to the press lately. (Without permission from the merchants).

None of those articles have been successful on Hacker News, despite the fact that they are materially important to many of our businesses. (When and why are businesses metrics and Stripe support emails leaked to the press? Was that against company policy? Has the issue that caused it been addressed?)

http://www.buzzfeed.com/josephbernstein/steal-a-credit-card-...
If you read the post, WebKit supports fast tap while enabling pinch zooming as well.
MVC frameworks took off because of cargo culting. Almost nobody who says "MVC" actually knows where MVC came from or why it was conceived.

There are many reasonable ways to split up responsibilities. I know this because many different usable frameworks split up responsibilities differently (although many of them all call themselves "MVC" regardless of the differences).
> Why have not zero bits then?

LenPEG 2 contains a bug that will cause it to corrupt images.

Let's say I have a custom compression algorithm (as allowed by LenPEG 2), let's call it "SurprisedBabyPEG"; it's steps are:

1. Is the image the "surprised baby gif"? If yes, write an empty file.

2. Otherwise, encode the input as PNG, and write that to the file as output.

LenPEG 2 allows us to choose an encoding algorithm:

> 2. Prompt the user to ask what other algorithm to use (GIF, JPEG, PNG, etc).

Take the surprised baby gif, and feed it as input to LenPEG 2. It's not Lenna, so step 1 fails. We proceed with step 2, and it prompts us for an encoding algorithm; we choose "SurprisedBabyPEG".

> 3. Use the user-suggested algorithm to compress the image and write it.

SurprisedBabyPEG outputs the empty file; this is the same output as if we run Lenna through LenPEG 2; on decompression of our surprised baby, Lenna is incorrectly output.

(This bug is correctable, and also affects LenPEG 3.)

Also,

(grep "`./smr`" < input || cat lenna) | xv -

The linked smr.c does not link.

This reminds me how you can communicate any finite sequence of octets across a network connection with only a two bits.
That actually carries over to most levels of management at Apple, the Managers are just really good Engineers with a few extra scheduling skills..
I love watching the pendulum swing back and forth in tech.

From mainframes to pc's
... to thin clients
... to server rendered HTML
... to client side frameworks
... to microservices

I'm sure I could come up with more examples. I was just thinking of re-architecting a heavy apache web head app into unikernel super light micro services. It just makes me chuckle as we swing back and forth and try to find the right balance. Each generation sort of saying "Hey wait there's a CPU over here on this side of the diagram and it could do X/Y/Z".

Recently I've been working on Raspberry Pi's so much that when I logged into a nice medium sized EC2 instance I was "shocked at how responsive these are". LOL. I started on machines with 4k of memory and built systems that consume TB of ram across many nodes and data centers. It's fun to go back to my roots trying to cram something into an ESP8266 nodemcu device and thinking about how long I can run it on a LiPo battery. I think this back and forth is good for us, but I encourage everyone to spend time on micro devices to remember just how simple you can solve a problem when confronted with the reality of 20k of ram and 4M of flash storage.
The coach may not be using yelling as a tool. He may be stressed because he needs the win either to stay on as a middle or high school coach, or because he needs the school trophy for his sense of self worth. The kids may just be a resource for his own goals.
No, a rump kernel is not an unikernel, check the FAQ linked from http://rumpkernel.org/

However, you can use rump kernels as a major component of a unikernel implementation. A rump kernel provides environment-agnostic drivers, meaning you can integrate them pretty much anywhere.

Now, what is a unikernel? From my perspective it's essentially:
1) application
2) config/orchestration
3) drivers
4) nibbly "OS" bits

So from the bottom, the nibbly bits include things such as bootstrap, interrupts, thread scheduler, etc. It's quite straightforward code, and a lot simpler that the counterpart you'd find e.g. in Linux. But you can't do much anything useful with the OS when that part is written.

Drivers are difficult because you need so many of them for the OS to be able to do much anything useful, and some drivers require incredible amounts of effort to make them real-world bug compatible. Just consider a TCP/IP stack -- you can write one from scratch in a weekend, but the result won't work on the internet for years. Then you may need to pile on a firewall, IPv6, IPsec, .... A rump kernel will provide componentized drivers for free. The policy of if you use those drivers in a unikernel or microkernel or whateverkernel is up to you, but I guess here we can assume unikernels.

The config/orchestration bits are actually quite an interesting topic currently, IMHO, at lot of opportunities to make great discoveries. Also, a lot of opportunities to use the rope in the wrong way.

The applications depend on what sort of interfaces your unikernel offers. If it offers a POSIX'y interface, you can run existing applications, otherwise you need to develop them for the unikernel.

Now putting rump kernels and unikernels together: the nibbly bits are straightforward, the drivers come for free via rump kernels, and those drivers provide POSIX syscall handlers, so POSIX'y applications just work. That leaves the config/orchestration stuff on the table. There's a rumpkernel-based unikernel called Rumprun available from repo.rumpkernel.org. It's essentially about solving the config/orchestration problems. Due to the rump kernel route, the other problems were already solved in a way which can be considered "good enough" for our purposes.

Hope that clarified the difference between rump kernels and unikernels.

(edit: minor formatting fix)
Please do so :)
If you can't run standard JLS semantics, there's little point to writing the code in Java in the first place.

I'm an old user of GWT and hopeful for its revival, but I strongly disagree with this statement. There are two ways of going about this - one is to hew closer to Java semantics (the GWT approach), the other is to hew closer to Javascript semantics. Strict JLS semantics is great for bulk compiling huge projects, but sucks for interop. In the new GWT, does Long become a javascript number? In the old GWT it was an opaque object, which was a constant irritant when interacting with JS.

There is room for both approaches, but as a web developer, I need to interop with JS frameworks more than I need to compile Quake.
Geotargeted by the NY Times
ES6 does to if you use Traceur/Babel + config flag.
With the introduction of the t2.nano, not really. Even if you don't want to go Amazon, GCE is super useful for personal stuff too.

Old school VPS providers can't compete due to resources. Amazon and Google have far more people working on perf, security, and so on. Sadly, VPS providers are going the way of shared hosting.
So now we have Autotune for movies.

Oh boy.
Yeah, they obviously put more thought into this than I ever will. Although they offer instances with 40 (v)CPUs so I'd assume they could technically run 800 nanos on one of those and efficiently deal with such spikes? Either way, I suspect their reasoning is more economical than technical, in that they know full well that I can afford more than 5$/mo.

(which I'm taking to linode for now, but oy vey, AWS, we'll always have Paris)
Yeah. The skills aspect is important. That bespoke CMS/MVC product that you spent years working with... it's kind of worthless. Employers and recruiters have a list of requirements to tick before narrowing down the candidates.

Once you get to the interview and they want to look at the code from a project, then sure, it will help a lot - assuming you created it.
Why not just get two dedicated servers and have one be used as a backup?

For $60/mo you can get 4Tb space free, basically unlimited bandwidth and a permanent 4XL-equivalent instance that makes scaling up to that point extremely easy with no need to configure autoscaling, s3, inter-service communication, cloud formations or complicated fail-over strategies. Unlike AWS instances that die frequently, a dedicated server is much less likely to malfunction.
How is it the MVC framework's fault that aggregating data from third parties is expensive?

Lazy evaluation will help to some degree, as will caching data locally once you've retrieved it.

Extending your ORM to invoke third party pay-per-view APIs is obviously the wrong way to solve this problem. That does not mean that MVC or ORM are obviously the wrong way to solve this problem.

MVC will help you with the stuff that it is suited to, as will ORM. Neither are suited to optimising usage of expensive pay-per-view APIs. You need to build the API interaction part separately, and arrange for the MVC side of things to work with thst API-using-API.

Off the cuff, why not have a batching task that takes requests from the last fraction of a second and sends them off to each provider? How long can you stretch that fraction of a second without upsetting you customers? Are they willing to wait three seconds? If you get a dozen requests per minute, three seconds might halve your API bills.

As you said, MVC breaks when you do not control the data. So your job is to get the data into a form and place that you control.
Just out of curiosity, can anyone speak to what're the main complaints about developing for iOs, other than the well known byzantine labyrinth of actual app approval for the apple walled garden.
None of these people are bosses or gatekeepers!

Even if I gave you a magical power where anytime you wanted your site would simultaneously be posted on Techcrunch, #1 on HN and #1 on Product Hunt, it probably would make no difference in your success or failure. The bosses and gatekeepers are the people that try your product once, and decide if it is better than the 500 things they are already doing in their lives.

You can spend your whole life getting caught up in the perceived unfairness of it all, but that isn't going to help your company become any more successful. The tech press (and quite a few startup communities) are sirens that call you in and try to sabotage you in every way possible. Just ignore them, or at least minimize how much they are affecting your mental state.
> I'm not in the industry (I'm in higher education), but this is news to me.

They were hacked, badly, and tried pretty hard to pass it off as "no big deal" for a while. https://news.ycombinator.com/item?id=5552756 https://blog.linode.com/2013/04/16/security-incident-update/
More junk science designed by artists?

Wind I can see making sense since at high altitudes, it's more constant.

Creating and storing the hydrogen in the balloon triggers a strong, this is just fluff. We can't really even do this on the ground.

They are inventing two new technologies we yet don't have?

I going to go with, it'll be better covering the other 98% of roof space with solar first. And get wind powered balloons going for night time use if you're going down this route.
> I wonder how this compares to Docker or Sandstorm where the existing kernel API is used in a virtualized container instead of emulating a whole machine.

Short answer is probably: Better at security, but less efficient.

Xen bugs notwithstanding, the VM boundary has a better security record than the kernel API boundary. (Though Sandstorm -- my project -- has been pretty successful at dodging kernel bugs through aggressive attack surface reduction.)

The problem with VMs is that they're heavy-weight. The hardware interfaces were never intended to be a clean abstraction boundary between software. For example, it's tricky to reclaim unused RAM back from a VM, because within the VM the guest would by default assume it has a fixed amount of RAM that is exclusive to it. Communication probably has to happen in the form of network packets, requiring setting up and traversing a whole IP network stack in the guest, which is a lot more expensive (in both CPU time and memory use) than pipes, unix sockets, or shared memory would be.

However, if you're designing a kernel specifically for use in a VM, you can probably do better on these things, e.g. you can define some virtual hardware interface by which the kernel marks RAM pages unused so that the host can take them back, or you can define a cleaner communication interface. But as you define these interfaces, your "virtual hardware API" ends up looking more and more like a kernel API -- and has greater risk of security bugs.

So one way (containers) you start out with a wide interface and high efficiency but a large attack surface, and you try to narrow the interface to improve security. The other way (VMs) you start with a narrow but inefficient interface which you try to widen to improve performance.

Eventually they will probably converge.
This is somewhat true. There are far more former founders in the VC ranks than 15-20-30 years ago when it was dominated by old-crust finance, old money types.

That said, the vast majority of the new incoming class of VCs (think associates, VPs, etc.) are mostly freshly minted MBAs with 2-3 years of post college experience, typically spent at a management consultancy, investment bank (or related prestigious front-office work at PEs, HFs, etc.), or in corporate strategy for a F500.

These people are definitely smart, with great pedigrees from the best schools. I'm just not sure they know a damn thing about the nitty gritty work of building a company. These are people who sat in boardrooms hunched over excel models and used to scheduling a million meetings to discuss strategy. Not rolling up their sleeves and executing.

I say all of this as someone with this background and with many peers who fit this mold.
There's an optional Http client that uses RxJS Observables - see http://plnkr.co/edit/UQJpd5dA6x45T4PPZRWW for a basic demo that also uses the `async` pipe to subscribe from the view. Of course, the native fetch API works fine too.
The bar.
"We would like to explain how; but the proof is too long to be tweeted within the 144 character limit!"
This is awesome that you're stepping up to this chalkenge. Stuff like this is what I truly love about the internet.
Peake Nationalism
GeoIP is unreliable. Just as an example of this, freegeoip.net reports that my IP belongs in a city 50 miles (80 kilometers) away from where I actually am at the moment.

With data so inaccurate, why even bother?
A few weeks back I was looking though some java code and I was hopeful I'd be able to transpile it in order to run it in the browser. I'm very experienced with JS and its ecosystem, and I figured that java was so popular that it should be straightforward to achieve this. But unfortunately, after 2 days of screwing around, I didn't have any luck.

I'm not sure if it's due to my unfamiliarity with the java ecosystem or if the tooling or documentation were just poor.

In any case, this tool looks friendlier than GWT, so perhaps I'll give it another try at some point.
Rdio to shutdown on Dec. 22, 2015
I had never heard of Product Hunt. If I had heard of it, in the absence of information to the contrary, I would have assumed it was corrupt.

It appears in this instance my general cynicism of all-things-Marketed is confirmed.

But what would an alternative world look like? Is the industry trapped in some product placement local minimum?

What if we could trust online reviews by default? Would the same industry make more money or less, or would it just go to different people?

Often, defenders of invasive advertising say "it informs people of products which are relevant to their interests". Shouldn't then advertisers promote integrity in their other Marketing venues as well?
The next Target data leak
Exploring the App Store with TSNEJS and Scikit-Learn
The web app behind PH is trivial. You still need a human to curate and build hype around the thing, and therein lies the problem. PH is rigged because Silicon Valley is rigged.
I'm always baffled why it's so common that the person in charge of something is often the person with the least direct knowledge about how it actually works.

It makes more sense to me that companies should be taking quality employees and providing them management training, as opposed to hiring somebody with a "management" degree who has little to no knowledge of the actual work that's done.

I guess that's just a symptom though of workers changing jobs more frequently.
>2. Most other instances of this problem do not generate unequivocally good publicity.

`stopthelies comments brings the "unequivocally good" into question (maybe not to the general public, but certainly here in this thread), which makes this bit seem a bit handwavy if I state the circumstance like this: Even though we help enable organizations, whose methods are based on questionable ways of classifying what is going on to continue in order to attract funds/status/etc which can skew how resources are allocated and how certain populations would be negatively affected, this is still unquestionably a good thing to do. I wonder how many times "victims" are "helped" when "every country offers counselor services where they'll print them a new temporary visa and even a ticket back home"[0] and makes sure they're on the flight? We'll probably never know until everything isn't jumbled into "human trafficking" tag.

>Palantir works with Polaris and NCMEC because they actually care (IMO), Polaris/NCMEC needs align precisely with Palantir capabilities, and they're a rare opportunity to be somewhat public about the company, if not the software.

If I pass this through an altruism filter, the 2nd and 3rd remain. I can say sure to 2 because anyone with ability to generate such plots and access to the data could do that, but I think 3 is the most interesting. Can you elaborate on the benefits of this? The last bit makes me think someone could plausibly construct this as some kind of recruiting gambit for the company and not the unequivocally good cause (which of course would be a valid benefit, but only as far as others choice to perceive such as unequivocally good [i.e. act as a negative signal of sorts, kind of like whiteboard interviews for experienced devs]).

[0] https://news.ycombinator.com/item?id=10740546
Because it's a BuzzFeed story. BuzzFeed still isn't taken seriously as a real source of news even if that isn't fair any longer.
California Has a Huge Gas Leak, and Crews Can’t Stop It Yet
If you are ever doing anything political for which there might be retaliation, put yourself under constant surveillance... these days this can be done for a few bucks maybe $50/month and multiple camera all around you can watch your every move and send everything to the cloud. Make it much more difficult to get you without leaving behind plenty of evidence.
I guess the most obvious question is: Did Target fix this yet?
Emulation is a matter of degree. There are certainly many places where GWT takes a shortcut or doesn't support a feature compared to a real Java VM. But the idea is to get it right for most of the code a Java developer is likely to write, so you have a chance of writing portable code and getting it to work everywhere without a wholesale rewrite.

In particular, mapping Java longs to doubles doesn't make sense. If it's your own code, why are you using long instead of int (or double) which perform much better and interoperate well with JavaScript? If it's someone else's code, how do you know it doesn't need the full 64-bit range?
Yes you do. Come on now.
PG may be a bit over optimistic about good triumphing but personality cult seems a bit inaccurate, certainly if you look at the Wikipedia article https://en.wikipedia.org/wiki/Cult_of_personality
The oversubscription model actually works, just like insurance does. We consume massive amounts of bandwidth on a continuous basis due to thousands of servers checking in. (We're not spikey in our bandwidth or CPU -- we're surprisingly rigid at 87% to 90% continuous.) We're anomalous, which kinda proves the point.

What is ironic about your statement is that t2 CPU allocations are massively oversubscribed in the same way. (but far more aggressively!)
Right, these are presumably running on boxes with many CPUs each. Whether instances migrate, I don't know; due to NUMA concerns they might be pinning instances to cores.

The other issue to consider is correlated spikes: When you aggregate 800 instances, you're probably going to see a pretty clear diurnal cycle. (And quite possibly middle-of-the-night spikes as synchronized cron jobs all kick off, too.)
It is important to note that big o notation is not a measure of "how fast will it take". It is not a measure of time at all, but a matter of how many discrete steps are required to solved the problem as a function of input size. Each step could take longer, which could effectively give it a longer run time. Solvability by the algorithm and the big O notation assumes unlimited time. They are all " theoretically solvable". The constant time and size of N would determine which implementation would be practically faster in a given situation. Lower asymptotic bounds algorithms are faster, given a sufficiently large (and specific) N. But that depends on the implementations. It may be that N is larger than most GI problems compared to the programs that currently run. The current algorithms run in polynomial time for most graphs (just like many sorting algorithms run closer to n rather than n log n the closer you get to pre-sorted input)
Being rejected from the top tier of technology companies and then landing in another top tier company doesn't seem so much like a genuine expression of angst over rejection but rather a bitter leer. But sure, the way work rejection is delivered is typically insensitive, and getting rejected sucks-- companies have no compassion for assets they don't want to use, and it's dehumanizing to realize you are utterly replaceable and plentiful as far as they are concerned.