skysight-inc/HackerNews huggingface dataset:
The low level formatting does include a sector number, but it is not part of ECC. I am not sure what your point is. Your theoretical description of how hard drives could work does not reflect reality. Research by CERN and others has confirmed the existence of misdirected writes. Deployed ZFS installations are detecting corruption in situations where the drives report everything is fine. Even if the storage hardware improves, having end to end checksums in the filesystem will continue to make sense.

That said, I think you are fixating on one way that things can go wrong. Another way that misdirected writes can occur is a bit-flip in the micro-controller's memory. This also allows for misdirected reads as well as reading/writing data that has a single bit flipped. These devices micro-controllers do not have ECC memory. Even if it were added, you still need to prove that there are no programming bugs via formal verification, but given that these devices are black boxes that cannot be inspected, you cannot rely on the claim of a proof even if one is done and there would still be the possibility for errata in the micro-controller. It is far easier to just use end-to-end checksums in the filesystem. Even if you think the device is trustworthy, end-to-end checksums give you the ability to check that it is doing what it is supposed to do. You simply do not have that with traditional RAID.
Evolution of the desk
I agree that global warming attracts religious types. As a result, it is generally hard to have a serious conversation about it. HN has a better ratio of science vs religion, luckily.
OP here, thanks a lot for the overwhelming suggestions, I'm trying to slowly digest all of them.

To give a little bit more context about the problem. This is related to our data analytics infrastructure that we're building (we did a technical writeup of it here - http://engineering.viki.com/blog/2014/data-warehouse-and-ana... )

If you look at our data infrastructure diagram (in the posted link), the thing we're trying to improve is the hydration system (where it takes in a record in real-time and try to inject more time-sensitive information into it).

E.g. When a user watches a video (thus a video_play event sent), we want to know if it's a free user or a paid user. Since the user could be a free user today and upgrade to paid tomorrow, the only way to correctly attribute the play event to free/paid bucket is to inject that status right right into the message when it's received.

Building the system this way (using the hydration service) makes our service very prone to error and indeterministic (since you only have a short window to hydrate the message, and you can't replay a hydration).

That's why we're looking at building a historical lookup service that remembers all the different changes of a data object over time, so that replaying a hydration becomes deterministic.

At the moment we're processing around 100M records a day and growing. That translates to about 100M read requests. The key size should be around 1M. Not a lot but still at some scale that puts us in the position to think about scalability and performance.

Before asking this question, we did look around and also looked into how we'd build it using existing database technology. We thought of 3 different ways using relational DB (PostgreSQL), simple K-V store (Redis/Riak), and Cassandra (with column family). Yet we want to get more opinions of you guys :)
The Creative Act: Marcel Duchamp’s 1957 Classic, Read by the Artist Himself
Look, I appreciate your point, but shitting pants is not an argument. Not a scientific argument.
In reality it's likely a comparatively small supply. Flying it would also present less issues.
You can configure ports the way that you like on one system. Then tarball /usr/local and bring the tarball to every other system. Just wipe out the existing /usr/local and replace it. This is supposed to be a feature that reduces time spent.
It almost looks like COBOL with all the keywords changed:
http://lh6.ggpht.com/_sQvdFWqMlMg/S0Q1IKSR7_I/AAAAAAAABv8/Tp...
So people are night owls to abuse the tiredness of the early risers? It sounds a little to pat. What use is it to be manipulative of people that say "Talk about that tomorrow. <Yawn>"?!

For instance, what is cause and effect? Many people become night owls when they get disconnected from normal society (studying/working alone for more than a few days). And the Dark Triad people are disconnected from other people emotionally, by definition.

(Another question -- is it only Machiavellian people that think sick people should have a right to their own lives and be allowed assisted suicide?! I call that bravely showing mercy, despite having to face horrible facts about the situation? Or is that what Machiavellian people do?)

Edit: I am aware of the definition of Machiavellian,
6d0debc071. The example I took up in parentheses was from the article.
One thing struck me as odd reading this: he skips over the implementation of the Make functor, which is the interesting bit. But looking at [1], I realized it was a bit hairy. For a maybe more approachable example of a Make functor, you can have a look at [2] around line 1181: given a module with a type t and a comparator function, it creates a module for a set of elements of type t.

That said, it's a really nice set of posts, and they're the initial reason I started to get interested in the language.

1: https://github.com/0install/0install/blob/master/ocaml/zeroi...

2: https://github.com/janestreet/core_kernel/blob/master/lib/co...
I've taken courses on supersymmetry and string theory and this is mostly incorrect. The details are fairly complicated, but the general idea is that there are a few essentially unique supersymmetric theories in 10 dimensions that can be "compactified" to a vast variety of effective theories in four dimensions. From a purely phenomenological point of view that can be ignored however and people have come up with various supersymmetric extensions of the standard model of particle physics in four dimensions going by names like MSSM (minimal supersymmetric standard model), basically introducing aditional superpartners of known particles by hand (like the selectron and photino you mentioned) and "completing" the model by computing the deficit for it to be supersymmetric. Those completions are not unique and can be distinguished by the energy scales they introduce new particles at. One major motivation is to constrain the running of the Higgs mass, which sets a natural upper bound for the expected masses of supersymmetric particles to be found. Those bounds have already almost been excluded by the current data, which is scary or exiting depending on who you ask.
There's an example of using sehrc with vimrc and other dotfiles at the end of the readme.
Correct. I did it on my iPhone earlier. It's for the purpose of a hackathon.
> If you want to read what I wrote in an extreme manner

I'm just reading what you wrote, nothing more and nothing less. It's not my fault if what you wrote is extreme. You're the one who agrees with "The Customer is Always Right" (note: the word here is "always", not "some times when I think they're reasonably right") and wrote "I do expect the business to bend over backward for me". Without any caveat anywhere.

> PS Name calling like "crazy person" never helps an argument.

If it's a spade, what's wrong with calling it a spade?
I don't know whether it's true or not, but the computer you're typing on is far from the only one likely you have running. Think of all the microprocessors in TVs, microwave ovens, thermostats, cars (I think most cars have about 30-50 MPUs nowadays)...

Let's ballpark it (fill in better numbers if you have them). Assume that a person takes an average of one 5,000 km trip by plane per year. ATW, a Boeing 737-900ER uses 2.59 liters of fuel per 100 km per seat, so that would be about 130 liters of fuel. Also ATW, Jet A-1 fuel has an energy density of 34.7 MJ/l, so about 4,500 MJ for the trip. A watt is one joule per second, and there are about 31 million seconds in a year, so the continuous power output equivalent for the plane flight would be about 145 watts. So, if all your computers put together are consuming more than ~150 watts, they're consuming more than the equivalent of a 5,000 km plane flight over the course of a year.

This is a very rough estimate, but it doesn't appear unreasonable on its face that his statement could be true.
I am a contributor, and I use it all the time. I publish a lot of my own stuff (mostly small utilities / libraries) at http://gfxmonk.net/dist/0install/index/, as well as a bunch of third-party software. Making distro-specific packages for all of these would be a stupid amount of effort - with a single zeroinstall feed I can run cross-platform code without having to package it N different times.

It is fairly easy to package / distribute portable code (e.g python, ruby, perl, js, etc). Stuff that requires compilation tends to be trickier, unfortunately (both to use and to distribute). Compiled software that is not relocatable (i.e hard codes paths) is sadly not possible to package in ZeroInstall.

It can use system packages (e.g apt, yum, etc) when available. So you can make a simple feed for your code that just depends on system versions of your dependencies, rather than having to "package the world". Of course, this only works on linux (and maybe OSX with fink / ports, but those tend to be less reliable than linux packages).

The big downside is of course that users don't generally know about ZeroInstall, and aren't likely to care why you think it's great. I generally recommend using ZeroInstall whenever I can in my own READMEs, but I have had little feedback on whether this has actually convinced anyone.

It has some definite upsides though, which is why I don't expect to stop using it myself regardless of general uptake:

- end users who aren't comfortable with terminals can use it just fine, yet it's as easy to publish as something like `pip` or `npm` packages.

- Since ZeroInstall feeds don't install anything globally, using zeroinstall dependencies during development means you never have to bother with tools like rvm, virtualenv, etc again.

- The savings that I personally get from having my own software & tools immediately available anywhere I go is already worth the effort of packaging it for ZeroInstall. E.g I have a "tim's custom vim" feed, with dependencies on all my vim plugins and configuration, and running it doesn't touch the host system's .vimrc or anything. That's pretty damn cool, even though it's only useful to me.

- I really like the notion that if you can _run_ some code, you can _modify_ that code. I despise the jump in most software between the "install & run" steps, and the "oh, you have to do these 10 manual and rather invasive steps to set up a development environment for this code". 0compile fixes this, for feeds that make use of it.
Impossible. Plain old carbonated water is acidic.
http://www.nasdaq.com/markets/ipos/

Includes withdrawn, priced and filed IPOs.
Very clean data, straight from SEC Edgar filings.
I like this idea for its simplicity, but what about looking up time values that fall in between the intervals you've set values for? You'd have to normalize the time value you're looking up to whatever timestamp granularity you're saving to, I guess (ms, s, hr, etc.).

Or is there a better way to do this with Redis?
How is this really good? Android apps are really good but they are designed for touch interface on mobile devices, not desktop.
But that's the beauty of the go tool chain. I have a source browser (godef), a documentation browser (godoc), a code style formatter (go fmt), code vetting (vet), unit testing (go test), a linter (golint) etc. and they are all fast command line programs. This means that it is trivial to setup a vim/command line environment the way I like.

In my vim setup with simple key strokes, I can go to the source of, see the type definition of, see the documentation for the call under the cursor. I have formatting, vetting, and if you want compiling on save of the file (and it's super fast). I have autocomplete that behaves exactly as I want it to.

I wish there was better ctags support for go, and the go oracle tool is more prototype than production software, but on the whole I am much happier with my development chain in go than I've ever been on the JVM or .NET.
Indeed. I live near Helsinki, Finland. Here the average consumption is 155 litres per person per day. That is 40 gallons. So the average Californian consumes almost ten times as much water? That's crazy.

And our consumption is not so modest because we'd be short of water; clean water is the one natural resource we have in abundance here. A drought in the sense of California (or even Britain) is just completely unknown thing here.

By the way, the consumption of water is higher in blocks of flats than it is in detached houses. This is because in detached houses each family or household pays for their own water, but in condominium houses the bill is typically shared among all the flats and the paid out in the maintenance fee.

This applies often even to hot water, so there have been cases where a single old man tells his neighbours that he lets hot water run through the sink just so that he gets even with the family with three small children in the neighbouring flat.
Node WebKit
There is no mention of Zuckerberg in the source?
> measuring an astonishing 64,000 miles

> the entire United States coastline measures 95,471 miles).

> 150%

Did you misread that? You quote Notway as havig a shorter coastline.
We haven't managed to actually use this yet. Suspecting it may require us listing some entitlements.

If you have any tips, please let me know :)
What a lovely comment!
I think a less black and white approach needs to be taken with recreation in our parks. You alienate a whole group of people that could be some of your greatest supporters by not creating an environment of trust and mutual respect. Increasing programs to educate and incorporate people that want to explore recreation activities outside of traditional hiking will be a huge aid in getting people interested in conservation.
Problems with Macbooks are not just limited to the graphics card. Many of my colleagues have had either hardware or software problems with theirs. I am not trying to start a flame war, I am just making an observation.

The Macbook I bought in 2007 was the best computer I've ever owned, and it still works! I wish I could say the same about my wife's new Macbook purchased last year. It will freeze for minutes at a time, the app store won't load, and safari will not open no matter how long we wait, so we have to use chrome.
You can. And even if you couldn't, what I mentioned is still different scoping rules, whether you put scare quotes or not.
Thanks for the power generation explanation.
Slight update, if you set `"enableAdb" : true` in the app's manifest.json, then you can connect adb and view the log. This makes the whole thing miles better than the emulator.
Nope, it just means we have a large amount of substitute drinks (and Cola-flavored generic drinks) from lots of local brands.
Why Is Our Sci-Fi So Glum About A.I.?
From the article:
"It could be adaptively effective for anyone pursuing a fast life strategy like that embodied in the Dark Triad to occupy and exploit a low-light environment where others are sleeping and have diminished cognitive functioning."

It irks me when people, sometimes even scientists, try to map ridiculous evolutionary causality schemes over what is really just correlation.

There are over 20,000 genes in the human genome. Thousands of alleles share some statistical pairwise correlation, as a result of evolving within a same population. It would be pointless to seek causality links within every pair of them (tens of millions of pairs). Most of it is random.

What these people are saying is conceptually equivalent to "blonde hair and green eyes are correlated! That's likely because green eyes have been selected by evolution among blonde people due to {{bullshit pop science reason}}.". Well, nope. These characteristics just happened to co-evolve within a same population.
> Returning regular pointers which point to memory which is not managed by you and that you by default know could disappear at any time is not the C++ way of doing anything. Thing is, a class has a public interface for a reason, and if you as an outsider want to start playing pointer games you know from the start what you are in for.

Maybe not "regular pointers", but returning iterators is very common (all throughout the STL, for one thing.) Those iterators are part of the public interface, and they provide no real guarantees over bare pointers.

I don't have a horse in this race, though. I think the "nicest" solution in abstract is for `tokenize` to be a token-generator* that takes a character generator argument. If you want to store the tokens yourself you can copy them, if you're happy to stream-process them then you can do that, and if you want a reference into the original string storage you can go fly a kite.

*: Where a "token" is probably another character generator.
As a complement to this nice tool, I can recommend sshfs [1], which enables you to mount a remote machine as a local folder.

[1] https://www.digitalocean.com/community/tutorials/how-to-use-...
Yup, looks like you're right! I stand corrected.
A 2 liter doesn't cost $1.25 here, a 20 ounce does. I can't recall what a 2 liter costs because I don't buy them but over $2 for sure.
> E C M A script

Is anyone pronouncing it like that?
Your example of solar energy is true if solar energy is kept only to houses, but maybe in the process of massive production of solar panels, those panels will have been made more efficient, making it possible to use solar energy to (partially) power different things - for example trains, planes or cars (I have no clue if that would be possible) - creating a continuous demand for solar panels.
Got an invitation to YC Startup SchoolHow to prepare to take full advantage?
You forget that sometimes we go to events and places not because of the places or events themselves, but for their image or the people we expect will also attend. The same doesn't work for the web.
1. DigiCert. They're not the cheapest, but they really have their stuff together. Their support is awesome (speedy, technically competent, and human). They're also proactive about identifying issues with your certs, they handled the heartbleed incident perfectly - reissued for free with no issues.

2. No
Here's an implementation in Python built on top of Redis using sorted sets:

class TimeStore:
def __init__(self, redis_client):
self.redis_client = redis_client

@staticmethod
def timestamp(time): return (time-datetime.datetime(1970,1,1)).total_seconds()

def set_value(self, key, value, time=None):
if time is None: time = datetime.datetime.utcnow()

self.redis_client.zadd(key, self.timestamp(time), value)

def get_value(self, key, time=None):
if time is None: time = datetime.datetime.utcnow()

for item in self.redis_client.zrevrangebyscore(key, self.timestamp(time), 0, start=0, num=1):
return item
return None

def cleanup_before(self, key, time):
self.redis_client.zremrangebyscore(key, 0, self.timestamp(time))
Ruby on Rails job board for Singapore
The video on smooth moving hyperlapse techniques: http://www.youtube.com/watch?v=sA4Za3Hv6ng
1. In terms of pricing, https://www.gogetssl.com seems good. I haven't used it personally, but $27.85 for an EV in the first year seems quite nice. Namecheap is good, too, but a bit more expensive.

2. Yes
Oracle knows how to use the legal system to obtain money. It's one of their core competencies. If you know the history of Oracle, you know that's not sarcasm, it's just an observation. If they're not doing it now, it's because they (correctly) realize there's no chance they could make money with it, and I don't see that changing in the future. If they actually tried to sue someone for it, "JavaScript" would change to "ECMAScript" at the speed of "Find & Replace".
MIT's Startup Bootcamp
Have you considered a round robin time-series database?

SQL example: http://techblog.tilllate.com/2008/06/22/round-robin-data-sto...

Research: http://pam2012.ftw.at/TMA/papers/TMA2012paper13.pdf
I guess that "works" just means "starts".

That's like a winedb entry that says "game works" followed by "crashes after intro video"!
An emulator is a dev tool that recreates the whole OS.
It is very useful for devs since that way you can test your app on multiple architectures or Android versions.
You can even use it to run automatic tests after each commits (or each day) in order to control your app quality.

On the other hand, what we have in ChromeOS (and soon Chrome) is a reproduction of the Dalvik/ART runtime. As a runtime, its only job is to allow Android apps to run.

It probably was an huge amount of work for the Chrome team (apparently, they have been working on it for quite some time but now that it is here, it means that with it installed you can run Android apps on your desktop computer.

so, it is both a matter of features, speed and convenience.
I am an Android dev. In the startup I work for, we have mobile apps (Android, iOS and even Windows Phone), a website and are even working on desktop versions of our product.
I don't know what this will mean for us though. Sure, we can use this new runtime to make our Android app run on the desktop but it has been thought out for mobile UX so a huge amount of work would be necessary to make it work nicely with the mouse+keyboard combo.
It is very nice that we now have that option though, especially with Material Design looming in the corner.
My job will be the one making the automation of my job. So thinking ahead of the event will mean doing a poor job.
1. cheapsslsecurity.com
2. Yes
I haven't tried it yet, but I believe it would work with the `--ssh=` option.
You could replace those shades with f.lux.
Show HN: 9GAG client app for Windows 8
"The 2014 Ig Nobel Prizes were physically handed to the winners at a ceremony at Harvard University, by five genuine Nobel Laureates"

I'm enjoying the thought of watching them being laughed at in-person at Harvard.
+1 for Digicert. They'll also reissue certs with new SANs if needed.
Not following your distinction. Are you intimating that b/c the nutrients are in these foods, they might not be absorbed correctly and therefore it would diminish their benefits? (btw- the title was taken almost verbatim from the text)
> Are google's services really that much better than others (mail, maps/navigation, search) _that_ much better than competitors because of the personal data they collect?

Yes. Google Now.
Yes! it's a very easy trap to focus on the 'big things' when you're unhappy or depressed, while often the solution lies in simple things like diet, exercise, and general lifestyle.

Sometimes I think our brains actively keep us from realizing this, because they want to stay in charge. So we find solutions in more abstract, mental things, where sometimes the first (and sometimes the only really necessary step) is to start taking care of the whole of us.
Harry Truman, Five-Card Stud and the Cold War
https://www.startssl.com

2 Years wildcard for $59.90
Hi,
It's my hobby project, created in free time using angular and win.js.
Feedback is welcome :)
can you suggest any further reading on oracles legal prowess in this regard? sounds like an interesting read to me, but I'm unsure where to find it.
On Windows, plugging in a new phone/tablet can be bothersome since you can need to install a new driver.
On OsX/Linux, it is pretty much transparent. take the phone, activate dev mode if it is not already the case, plug it and you are done.
They charge for reissuing certs though.
https://news.ycombinator.com/item?id=7557764
EichScript?
Nice toolkit, will be using, thanks!
It is mostly 'has been repeated to death so it must be true' statement.
The reality, as always, is way more complicated. Outside of the US market, Android and iOS have very comparable high end marketshare.
Depending on your niche and your business model, the good choice for your app can vary from one opposite to another.