skysight-inc/HackerNews huggingface dataset:
The relevant Easy Rider quote I had in mind is: "You know, this used to be a helluva good country. I can't understand what's gone wrong with it."
(Tutorial) What is Cinder and how to install and use it?
Show HN: BART Backtracker helps you get a better seat
Very cool script! I just tried it out myself and it seems that Google's location history is actually really spotty. It missed several of my trips (during which the phone was active and responsive) and it also included some spots that I've never been to. I double checked the JSON and the problem is on Google's end and not the script.
This is my favorite, can I use it on the website?
Exactly what was going through my head when I read this article.
I like the clean and simple design. A couple of things:

1. I think some categories should be lumped into one, and be allowed as filters. Eg., I see Node.js, Perl, PHP programming etc, but I think adding a category for each language will make it too noisy. I'd lump all these into 'backend developer' and allow the user to filter by the specific language.

2. Users should have a way to suggest categories/filters. I do mainly Python and Javascript, and didn't see either on the list. So I searched for web developer, full-stack, backend, frontend, and didn't find any of those either. It'd be nice if users could suggest these.
Why Is Huffington Post Lying About Invention of Email?
A core fundamental here is that people inherently misjudge the competency of their peers / the state of other projects / components / departments. Thus when they have a "problem" they make an assumption that their single point of failure won't be catastrophic (because everything else is okay), and that there's no need to sound an alarm over it (and potentially jeopardise their career).

Besides, it will be fixed soon enough. Except, then something else comes up, and the last fault goes unresolved.

If our work-culture was less focussed on success and blame and more focussed on communication and effort, fewer catastrophes would happen, I'm sure. Unfortunately, the world doesn't work like that.
MongoCMS v0.0.4
True, it takes a lot of money to buy tools. The difference between woodworking and other hobbies is that those tools last decades to lifetimes, and a shop can be built over similar timescales.

My dad bought himself a table saw and used it to build a workbench, then a shelving unit. Huge table surface level with and pushed up against the table saw. Another workbench for the miter box saw. We get him pieces pretty much every Christmas and Father's Day - a hand plane, a new set of drillbits, a set of very high quality table saw blades, etc. (That was a fun one to get past the TSA.) He goes through periods of doing a big project for the house every couple of months. Each project needs a new tool, and requires some expense, but now he has that tool forever. He just goes one at a time.

Often he'll just work on the shop itself. He rewired it himself and got a friendly electrician to sign off to appease the inspector. Replaced the dingy overhead lights with a powerful wash of fluorescents, etc. A little bit at a time, but over many, many years.

When he gets a bug about wanting something, he trawls Craigslist. At one point he bought a really high-end Incra table saw fence from a cabinetmaker a couple of towns over who was upgrading. $1500+ value, spent around $250.

It started to facilitate general homeowner repairs, and by the time he wanted to make make furniture, the incremental cost wasn't much. There were probably many thousands of dollars invested in the shop, but it never represented a significant financial hardship because the expenses were so spread out.

Also, we've done a ton of work on the house and only ever hired electricians and plumbers. I'm pretty sure that whatever he sank into the shop was less than or close to what it would have cost to do those projects through a general contractor.

He had pride in the thing. Probably more in the shop than anything he made in it. In the late 90s, he took carpentry classes at the local technical college. Now he watches YouTube.
Test the idea until you either find a result (good idea or bad) or you stress your limits (financial/emotional).
Discovering InfluxDB
A credit card will take something like 3% of the transaction. Thus the "cash discount" idea.

And personal checks are plenty risky for fraud and insufficient funds.
At least in terms of the open-source community it feels much more lively now than, say, the early 2000s. There are new books like Practical Common Lisp and Land of Lisp, SBCL has matured into a solid implementation, Clozure CL was open-sourced, and Quicklisp has really improved the convenience of using libraries. I don't know whether that translates to more popularity overall, though.

If you mean the overall Lisp family, I think it's more clearly on an upward swing, especially due to Clojure's popularity (and if you're willing to stretch, Julia smuggles a Lisp-like language under cover of Matlab-like syntax).
Expectations have downscaled: https://news.ycombinator.com/item?id=3909931.
I think Joe Armstrong's thesis:

https://www.sics.se/~joe/thesis/armstrong_thesis_2003.pdf

is an interesting read and provides a more concrete example of how to run a highly concurrent and fault tolerant application.

It doesn't talk about the social or psychological bullet points in this article, it is more technical. But I found it very readable.

As an addition, I can think of these patterns (just thinking about it in 1 minute, mostly remembering Erlang talks I've listen to, some from practice):

* Build system out of isolated components. Isolation will prevent failures from propagating. In Erlang just launch a process and don't use custom compiled C modules loaded in the VM. In other cases launch an OS process (or container).

* If your service is running on one single machine, it is not fault tolerant.

* Don't handle errors locally. Build a supervision tree where some of part of the system does just the work it is are intended to (ex.: handling a client's request), and other (isolated part) does the monitoring and error handling. Have one process monitor others, one machine monitor another etc.

Once a segfault or malloc fault has occurred installing a handler and trying to recover might not be the best solution. Restarting an OS (or Erlang) process might be easier. Another way to put it, once the process has been fouled up, don't trust it to heal itself. Trust another one to clean up after it and spawn a new instance it.

* Try not to have a master or a single point of failure. Sometimes having a master is unavoidable to create a consistent system, so maybe it can be elected with a well defined algorithm or library (paxos, zab, raft etc).

* Try to build a crash-only system. So that isolated units (OS or Erlang processes) can be killed instantaneously for any reason, any time and system would still work. If you are controlling the system you are building use atomic file renames, append-only logs, and SIGKILL (or technologies that use those underneath). Don't rely on orderly shutdowns. Sometimes you are forced to use databases/hardware/system that already don't behave nicely. Then you might not have a choice.

* Always test failure modes as much as possible. Randomly kill or mess with your isolated units (kill your processes), degrade your network, simulate switch failures, power failures, storage failure. Then simulate multiple failure simultaneously -- your software crashes while you detected a hardware failure and so on.

* As a side-effect of first point and the crash-only property. Think very well about your storage. In order to be able to restart a process, it means, it might have had to save a sane checkpoint of its state. That means having reliable, stable and fault tolerant storage system. Sometimes recomputing the state works as well.
If I were a channel, this would be something I would really want to look into -- imagine different software services or internet services directly licensing/subscribing your content instead of you feeding Comcast.

An open API so that pretty much anyone could subscribe to X channels and mash them together in an app or program to do whatever they wanted. Truly a la carte, like downloading books and being able to pick your eReader or library software.
This is a website I just launched.

I've solely been doing Android stuff for the past three years. The last Android app I launched, in conjunction with another programmer, was a Thesaurus app. There are a few Android thesaurus apps out there, but ours does all the EFIGS languages (English, French, Italian, German, Spanish) as well as one or two others.

The Android app is built on such things as the BSD licensed MyThes library and the LGPL licensed Hunspell library. We connect to the open source C/C++ libraries via JNI, do some Android UI and some other coding, and voila, a useful app. MyThes does the thesaurus part, Hunspell is useful for certain things - like finding word stems so that we are accepting plural for nouns (mouse or mice), or some different tenses for verbs (sing, singing, sung).

All the different language libraries were too big to pack with the Android APK so we made the language libraries free download packs. But then the app is useless while it is being downloaded. So I wrote a backend API to do MyThes/Hunspell on a Linux VPS and ctypes C/C++ library foreign functions for Python, so that people could avoid downloading the language packs if they wanted, or at least could search words while waiting for their language pack to download.

Once all that was in place, I said to myself, why not throw a website up? Most of the work has been done. So I did.

Right now Adwords is rejecting my site for being a "placeholder". At first I thought it was due to an earlier crawl, or it's bare bones nature, but then I realized the site didn't work well if Javascript was turned off. So I've made some accommodations for that.

I haven't launched a website on which I plan to make revenues from ads since 1999, so even though it is bare bones I am excited. It has a lot of that open source person-hours behind it as well. There's a few English thesauruses online, but I don't see much for some of the languages we've done. So if Google smiles on the changes done, perhaps it will have some popularity in Europe, as these other language thesauruses seem as scarce on the web as they are in Android apps.
A brutal truth of programming today is that serious tools for educated & dedicated people don't have large communities. Of course, this is predictable with the law of large numbers[1], which implies that as size grows, the system shifts towards mediocrity.

But since Haskell, Prolog, Common Lisp, etc, are designed for people who take their tools seriously and perform serious inquiries, they are generally incapable of casual pickup and use by the novice.

I've spent years in Common Lisp and can't recommend it enough for someone interested in a designed dynamic language (as opposed to Perl or Python). I imagine modern Smalltalk might have the same feel.

[1] http://mathworld.wolfram.com/WeakLawofLargeNumbers.html
i like this. this would be great for a small company with little to no background check ups on employees.
This (discussion area) is the hardest bit to change, the rest of the domain is shut down. Will happen soon.
This has been on my radar ever since Van Jacobson's 2006 tech talk. Are you involved in this somehow? I want to help make this happen, as in really build the network, just writing more papers isn't what's needed at this point.
CompCert is formalized in Coq. It looks possible to represent one's own C source code and its intended behavior using CompCert's proof development. I would not at all suggest that it's easy. Also, CompCert sources are offered only for non-commercial use.
http://compcert.inria.fr/doc/index.html
Also, completely unrelated, but they are the namesake of the CenturyLink football stadium, home of the Seattle Seahawks. This is how I learned of their existence, which proves that there is at least some nominal value to having a stadium named after your company.

http://en.wikipedia.org/wiki/CenturyLink_Field
We do this in math too: ∑_{i=1,...,n} x_i is a lot more readable than x_1 + x_2 + x_3 + ... + x_n. (Underscore means "subscript" here.)
What's the Auth0 Java JWT library like?

I've been using the Google library[1], in a dropwizard app and it's pretty old and not great.

OTOH, I do recommend both Dropwizard (the OAuth stuff lets JWT drop straight in) and Satellizer[2] for Angular.JS JWT stuff.

[1] https://code.google.com/p/jsontoken/

[2] https://github.com/sahat/satellizer
I love Common Lisp; I've been writing Common Lisp at home for something around 7 years. It's fast, flexible, expressive, and deeply programmable.

I won't say it doesn't have its warts: the namespacing and packaging systems are kludgey, and the extensibility of built-in operators is poor. It's a dynamic language to boot, which implies type derivations are often estimates at best (painful sometimes on a poorly tested codebase).

But, Common Lisp, above all that, is an integrated development system which allows live and fluid development. I can't stress enough that it is a deep and joyful technology which lets me achieve more faster in it.

I only wish there were jobs in it. :-/
Looking back at media from that time, there was what looks like a quaint optimism now. But from what I remember from living in the '80s, there was also a darkness that is just not really a thing anymore.

I graduated from high school in 1989, so this is biased by the fact that I was a kid or a teenager throughout the '80s, so I'm not sure to what degree this was just me. But I remember just taking the inevitability of nuclear war almost as a given. It felt like for my whole life the world was trapped in a Mexican standoff, and the inevitable result was the annihilation of all life on the planet. It's still a possibility, of course, but I just remembered spending a lot of time in the '80s thinking it was inevitable.

When I remember the goofy '80s stuff, it was always in stark contrast to the apocalyptic stuff. The goofiness and bubbliness of '80s media felt like a reaction to the darkness of the reality.

I don't know how much of that undertone of darkness was a shared sentiment vs. my own bias because I was a moody dramatic teenager at the time. The '80s were also the heyday of the global disaster movies, that were about the extinction of the human race. I just remember a steady stream of movies about human extinction from nuclear war, disease, climate change, comets, zombies (of course), aliens, apes, etc. People still make apocalyptic movies, of course, but it just felt like fear of extinction was more in the collective subconscious then than it is now. Or maybe that was just the kind of kid that I was? I'd be interested to hear how others experienced the same years.
It isn't something new, it is a strongly specified, highly compatible implementation of Markdown. As seen in "common" use on large websites. And any implementation that passes the current spec tests can also brand itself with CommonMark or "Markdown compatible".
Not power hungry for a phone but for a watch it's a dog. Recharge a watch twice a day, how is that "not THAT power hungry"?

A watch needs an order of magnitude less CPU power than a phone, perhaps several. In 2014 if you see a watch product with a smartphone CPU, you know they blew it.
>>"The roads will be equipped with sensors and cameras that enable roads to communicate with cars to alert drivers to hazards and congestion. The technology, to be deployed along stretches of Detroit’s busiest freeways, will monitor vehicle speed and position, though that information will be anonymous and police won’t use it to ticket drivers, Lauckner said."

Call me skeptical, but I highly doubt that this type of tech would not be used by police
This is in reference to Twitter comments from 2 years ago jokingly suggesting that based on the chilly reception from Gruber to any kind of reduction in ambiguity in Markdown's so-called spec... the name "YankeesSuck" could be used instead.
Yeah, I think the key here is that Silk Road's IP address is public information, especially since they were able to connect to it directly, whereas AT&T users' private information is private.
Except that it would have to be (comparatively) much dumber than it currently is, and that it would be constantly flickering with every time change.
Actual news about this will tell us how the system deals with distracted or sleeping drivers.

Right now we assume a computer driven car can handle the highway. How it handles its human occupants is the real question.
I think John Gruber should change his name to Lars Ulrich.

Embrace progress, don't condemn it.
> "non-sequential randomized big integers"

The more common practice these days is to use UUIDs.
Ok, that makes sense then. Thanks for answering :)
TI makes some fantastically low power chips. I wouldn't automatically assume the CPU is power hungry, just because it is old.
I think you could benefit from something like github-pages.

free web hosting, and it would cut down the time it takes to produce documentation.
I think writing your own variation of this at one point is a sort of rite of passage for web developers. I thought I was so clever with my custom PHP framework and sessionless backend. That said, it's done because it works well and makes sense. I'm glad to see we're finally settling on a recommended way of doing this.

I've recently incorporated JWTs into my own application. One of the questions I'd like to ask other HNers is how you deal with token expiration. I don't want to reissue a token if I don't have to, but I don't want to create permanent tokens either. An obvious solution is to embed an expiry in the token and check against that, however I don't think that'll lead to a very good UX if tokens "randomly" expire. I've come up with two solutions: 1.) Each user has a session seed token that is used as the secret and thus a user can log out of all sessions by requesting a secret change. This works because any previous JWTs are now invalid because they cannot be validated with the new secret. 2.) I could ping the server periodically (or decode the JWT on the client side) and check when the token expires. Shortly before the token expires, I could request a new one. This doesn't solve the problem of tokens expiring when the user is offline though. Anyone have any better solutions?
You are right, I don't know you beyond these online interactions. I was giving you the benefit of the doubt, but you sound very vindictive, and I get it, you know stuff. Building and designing things is a journey, it won't be perfect unless you set your expectations low.

I didn't just work on the scala plugin, I changed scalac to be completely incremental at the AST level (better than everything being a Diff[T]), which was no easy feat (nor did it last, but it worked and became its own tech [1]). I've dug deeper into scalac front end code (Typers, namers, parsers) than most scalac devs have; I know Martin's style very well as a result.

[1] work on making scalac incremental eventually led to http://research.microsoft.com/en-us/people/smcdirm/managedti...
Scripting Unity3D Games
Drawing conclusions from data is "dangerous" because it doesn't fit into your world view? I'm seriously done with this site.
Thanks for taking the time to read it!
I use Evernote for capturing and Asana for task management (both personal and work projects). I have used a lot of tools in the past (Omnifocus, Simplenote, text files, Emacs org-mode, Trello, Google tasks..., Clear) but I'm quite happy with my current setup. Now that Asana has a native app, both work well-enough in desktop, mobile and tablet.

Some people try to use one tool (for example Evernote) for everything, but in my opinion there are benefits to separate ideas, writings, sketches from tasks that need to be done.
Swift and Rust have similarities.

Swift is, I believe, designed with an eye towards interop with Objective C. Rust pcwalton has already addressed.

- Dart is for JS

- Clojure is a GC'd JVM Lisp

- Scala is a GC'd JVM type-safe language

- Julia is specifically for scientific computing

- Elixir is an Erlang wrapper, afaik.
> There was a great article published in PLOS several years ago (ATM I don't have the link) showing mathematically that the odds were about 1 in a million that an observational study like the above would turn out to be a "true" causal relationship, and the author concluded most published studies were junk.

I very much doubt the second part of that, that most published studies are junk. The idea that not showing a causal link and only a correlational one makes a study junk is not held by anyone in the field who garners a whole lot of respect or notoriety. I'm not saying the quality is equal whatsoever, simply that correlation studies are not inherently junk - some are fantastic and some are quite the opposite.

There is no question that journals in general are pumping out a significant amount of junk (in studies of all types), but I speculate the root cause of that has more to do with the rise of "publish or perish" and significant increases in grad school enrollment. And even worse the notion that for a grad student, the number of publications they have their name attributed to is more important than the content they publish in terms of employment after they graduate. So there is a situation where people have more pressure to publish than ever before [0], there is more competition for scarce funding so studies are vastly underfunded and studies are rushed so another can begin to add to the resume.

That doesn't mean there is less good science being done either! There probably is more good science being published now than ever before, the problem is the signal:noise ratio has gone down making it harder for good studies to get media attention, and easier for the media to latch on to whatever story they think will get viewers.

[0]: Sidenote, this also makes it increasingly challenging not only to have high quality research, but research that only is making a correlation as opposed to going through and providing evidence to claim you might have a causal link.
I was thinking less PTSD and more simply demoralization... Why conflate the two?
"Prettier" is subjective.
Soon, soldiers will be communicating by telepathy
Watching the sun set from the surface of Mars
I found this title a bit misleading (I bet you're shocked), I was hoping for something that touched on query classification.

The article is about guiding user navigation to have them correctly refine a text-only search to include category information before attempting to use metadata sorting (which would normally ruin relevance due to low quality matches). There are some examples from Amazon and others. Worth a couple of minutes if you work in ecommerce search UX.
I came across this picture a couple of years back, and just viewed it again. Imagine. This is actually the sun setting, seen from another planet.
Also worth checking out: http://www.amazon.com/Electronic-Devices-Frustration-Mountai...

It provides any number of valuable heuristics for practical circuit design that often excessively theory-oriented EE programs won't teach you. This book saved my butt in grad school and has been useful on-and-off ever since.
> And, of course, if you seriously mis-step in either pursuit it can cost you the farm. The trick is not to do that.

Moreover (and much less commonly reported on) you can do just about everything wrong, and still get lucky. A good poker player knows they got lucky and shouldn't have won the hand.

I've seen too many times cases where someone has a successful exit and think that means they now are experts, attributing 100% of the success to themselves. Then they don't understand why their next startup fails miserably when they do everything the same.
Show HN: Bashcuts – command reveals Bash keyboard shortcuts cheat sheet
Historically they did. But leakage is growing faster than dynamic power is shrinking, and the performance of the wires is falling behind meaning all the transistors must be comparatively larger.