skysight-inc/HackerNews huggingface dataset:
Consequently any decision to use such an API seems to require one first read and review the entire implementation of the API, otherwise you get the experience that NetFlix had.

There's no getting around this, you or someone that you trust (not necessarily at your company) needs to read and review both the API, and implementation details for open source software that you use. Open source software isn't a hardware store you can dip into to get the latest parts that you need for your project. Adding a dependency makes your code depend on other peoples code. Just like internal code should go through a code review, so should external dependencies. This also explains why for a lot of companies, it's easier to write their own thing rather than need to keep on top of other people's changes.

I happened to write about this yesterday which explains my thoughts further http://danielcompton.net/2014/11/19/dependencies.
I suppose it is highly use-case dependent if this is better than dual vertical 1920x1080 monitors. You essentially are choosing between having a bezel in the middle or losing 240 horizontal pixels. For having two things side-by-side the dual monitor setup is obvious win, so for coding etc I'd lean towards that
When I were a lad, everyone you'd meet in the industry had started out doing C on Unix, and had then specialised, maybe they liked Unix more and became sysadmins, maybe they liked C more and wrote Motif apps, or branched further out into C++ on Windows. But everyone had that core, fundamental knowledge. Nowadays people go straight into the very abstract stuff, and have nothing to tie it all together with.
Essays by Emerson
A classic, to be sure. Epictetus' style still served as a model for "guide-books" 16+ centuries later. Two of my favorites from the second millenium which bear such influence are Thomas à Kempis' The Imitation of Christ (~1420) [1] and Lorenzo Scupoli's The Spiritual Combat (1589) [2], both classics in their own right.

[1] https://archive.org/details/imitationofchris012486mbp

[2] http://www.ecatholic2000.com/combat/spirit.shtml
True, they don't have a native client but it works well enough via wine.
Yeah, I was wondering if Christmas would give me a bump. I did try hard to get the book done before the end of this year just in case.
How Linux Changes the CPU Frequency
According to the preprint linked above they are hybrid equivalents of the proton or neutron. Protons and neutrons are made of up and down quarks. Protons are uud, neutrons are ddu. (d have charge -1/3, u +2/3, so neutrons have no net charge, protons +1).

There are three "generations" of quarks, each one heavier than the last but otherwise identical in properties. These are charm and strange followed by top and bottom. These new particles are a mix of generations: bds (bottom, down, strange). They are predicted by the Standard Model, but their detailed properties (particularly their branching ratios to various decays into other particles) will be slightly different in theories of "physics beyond the Standard Model", so by looking at them in detail, including a precision measurement of their masses, it may be possible to kill off some alternative theories.
Especially in high availability/load systems like Netflix IMO you need to reduce complexity and that means less modules that depend on 69 other modules, each of which depends on 69 modules etc.. What's going on as this sw proliferates is insane.

Then, you've got to be intimately familiar with every piece. There's no excuse when the source is readily available. I give these guys credit though they seem to take responsibility instead of just saying "express sucks". Some of their design choices seemed a little shaky.
Read the article:

"But after a few minutes, I realized that non-standard monitor sizes are most likely abundant in various industries, such as medical, when they are designed for a specific purpose and quality. So while a 1:1 monitor is something interesting to see in the consumer space, perhaps it might not be so new when considering industrial use scenarios."
This is all true.

However, I can't take a stack seriously as an enterprise or production ready piece of software when it does something like iterate a list recursively in performance sensitive code. It's just bizarre. JS doesn't have tail call optimization and for loops are just fine. Being able to blow out the JS stack by having 'too many handlers' is terrifying to me, especially because JS runtimes have catastrophically poor support for handling and debugging stack overflows.

The use of a single array for handlers that can contain multiple items also feels like an architectural red flag to me, but I can understand how that would happen since JS's standard library is so anemic and lacks useful data structures. What you really want is a set (or ordered set, if handler order is super important - it probably is here)

I saw a number of entries in those flame charts that appeared to be V8 compilation internals, which is suspicious to me. But those are probably just debugger/symbol resolution issues, I hope, and not actual JIT recompilation constantly happening during route dispatch? (If v8 were compiling code constantly during dispatch, that would certainly explain multiple-ms pauses...)
Stand Desk deducting 15% from all refunded, undelivered orders
Long time HN follower here. I've just never been concerned with sharing my thoughts with the public until today.

Many of you may be aware of Stand Desk's presence as a Kickstarter project. They offer an affordable, seemingly well-thought-out electric stand desk. The problem is they haven't delivered to most backers. On top of that, they miscalculated shipping costs and upset a flurry of Kickstarter backers.

Through all of that, I was ok with it all. I understand the process of starting a company. There are unforetold paths, missed dates, etc. Anybody who has worked in software understands this, and I'd like to foolishly believe they'd also be able to relate to company trials and tribulations such as Stand Desk's. I even emailed Stand Desk a couple of months ago to say it's ok to run into problems, and that no startup executes exactly as planned. I was sympathetic at that point.

However, my circumstances have changed. I no longer need the desk. I will no longer be working remotely from home, I'll be in an office. I emailed Stand Desk today to ask for a refund, which they replied to in a quick and timely manner. There's just one catch. They want to charge me the 15% for wanting a refund, but I haven't even received the product yet. They're telling me that they incurred costs from Kickstarter and Amazon. Apparently 15% worth.

To me, it sounds like they're placing the fault with me. The mere fact that I placed an order with them, puts me at blame for their Kickstarter and Amazon fees. This sounds like a poor choice of business ethics to me.

Somebody please tell me I'm not being unreasonable to expect a full refund. A company that is delivering promises shouldn't be worried about a few, simple 100% refunds, which leads me to believe they've had even more people wanting a refund, and are struggling to place the blame with themselves.
> That being said, I mostly consult the webpage version.

That's absolutely, totally fine. Buying a copy is something to opt into for people who specifically want those formats or want to reward me for writing, not an obligation you karmically incur for reading the web site.

I get real personal value just by having readers and having felt like I reached a broader audience and made more of a human connection. Cash is nice too, but it's not the only incentive.
They cost more. They charge .5 percent on assets vs betterment charging .15 if you have over 100k, and .35% if you dont.

They both do the same thing, tax loss harvesting and automatic rebalancing. That fee difference over 30 years assuming an investment of 20k per year and an 8% return could cost you like 400k - which is not chump change.
Something about electrical brain stimulation freaks me out. That, along with ECT (electroconvulsive therapy). I suppose it's hypocritical of me to not fear substances such as caffeine, alcohol, or antidepressants, but the idea of sending current through an organ as sensitive as the brain makes me wary.
I just crossed $200k in sales since I (re)launched in May, so yeah - about that.
"These guys" refers to the hard drive in the picture just above that paragraph. It means: even though integrated circuits are old, we're just getting around to solid-state storage.
This!

...and moving from javascript strings to Ruby strings is far from a "30 seconds syntactical exercise", unless you don't take into account the fact that:

* Ruby strings don't necessarily have all the same encoding

* Javascript strings don't implement all of Ruby Strings' methods

* Ruby Strings are mutable, while JS's are immutable

* R̶u̶b̶y̶ ̶d̶o̶e̶s̶n̶'̶t̶ ̶h̶a̶v̶e̶ ̶C̶h̶a̶r̶s̶,̶ ̶J̶a̶v̶a̶s̶c̶r̶i̶p̶t̶ ̶d̶o̶e̶s̶ (edit: brain fart... I probably wrote too much Clojure[script], even if char literals in cljs just yield strings again)

(Or you use Opal, which doesn't abstract Javascript Strings much)
Introducing Network Traversal Service
I was not able to find your privacy policy. Are you tracking what beers I'm looking up? Where I am? How long I spend drinking? Are you serving ads generally or are they somehow targeted to me based on my behavior? Do I get more privacy with the pro version?

You will be collecting data that will be useful to other people besides me. I don't care if statistics on all app users are sold but if you want to sell things based on my specific behavior I won't use your app.

All that said I'm excited to give it a try.
Take a look at Gearman. You get distributed background or foreground tasks with identifiers and optional queue persistence. Workers can also optionally report back their progress when working on a job. You can add and remove workers trivially at any time.
> caveat: I am not a game programmer specifically but I wanted to learn more about the patterns and strategies in game design

No-so-secret secret: Most of the patterns in the book are equally useful outside of games too. I just (1) thought game examples were a lot more fun to write and read about and (2) thought game developers wouldn't take it as seriously unless it was directly targeted towards them.
I personally haven't come across someone moving from AWS to Heroku.

Also, are you using elastic beanstalk to manage your app or just regular ec2 instances? Using beanstalk should simplify most of the tasks for you.
Perfect for Instagram.
You're right and I was wrong. The TextSecure protocol was originally based on OTR, but I hadn't appreciated the degree of divergence from it required by their introduction of asynchronous ephemeral key negotiation.

So, thanks! I learned about some cool stuff.
Something like this is available in postgres, mssql, etc and is called a "materialized view" [0]. In the postgres case, you have to update the materialized view manually, but in the mssql case, the updates are done automatically when the origin data is updated.

[0] - http://en.wikipedia.org/wiki/Materialized_view
> 3-clicks - power user level stuff

Don't conflate "power user" with "rarely used"
>> "I want to make a materialized view that's the result of a query, but that gets updated as new rows get inserted or as the rows it uses gets updated."

RavenDB[0] gets a lot of this right for the .NET stack.

RavenDB creates something very much like your continuous view -- called indexes[1] in RavenDB -- for every query you've run against it. Any successive queries aren't really queries at all, but are results from a pre-computed set.

When new data is inserted, the index gets updated asynchronously, leaving you with eventual consistency for your queries.

Raven creates these indexes automatically when you query it. It then maintains these indexes: long periods without querying an index will relegate the index to idle (updates on low priority), and eventually abandoned (no longer updated). This way, your app hot path -- the queries most often used -- remain the fasts, alleviating a lot of performance issues.

[0]: http://ravendb.net
[1]: http://ravendb.net/docs/article-page/3.0/Csharp/indexes/what...
Oops. My "Why not?" above is in reference to this:

> Nobody there would call them interpreter because of that.
My own startup is using Django, so I'm certainly aware that there are new sites being launched with it every day. I was one of them last week. :-)

What I mean by obsolete is that it is no longer the hot new thing on the bleeding edge of technology. I chose Django because it wasn't the hot new thing; I'm already familiar with it, I've written a half dozen sites using it, and a general rule when founding a startup is that you shouldn't compound market risk with technical risk. Right now, my biggest problem is building a product that users want; I want the shortest path toward getting the big things right, not the sexiest little things.

But Django is definitely showing its age, and the environment has changed in ways that make you work around the framework instead of with the framework. Users are getting accustomed to logging in with Facebook or Google instead of having a separate registration system for each site; this is available with django-allauth, but then what's the point of having a built-in authentication system? Users are increasingly getting accustomed to direct-manipulation user interfaces instead of forms; Django has no support for that, and newer alternatives like Meteor beat the pants off it in that regards. Users are shifting to mobile; Django mobile support is spotty, largely provided by a set of sparsely-maintained third-party addons.

And then there are new technologies that promise to throw a huge monkey wrench into the web development ecosystem. Polymer & webcomponents are coming down the pipe, quickly; they introduce the idea of an application as a client-side set of individual downloadable components, which means that a lot of Django's routing, form, and templating infrastructure is no longer relevant. The increasing use of storage options other than RDBMS (Redis, Mongo, RethinkDB, protobufs or JSON on disk) makes the ORM less useful. JS-heavy apps shift the focus from building HTML quickly to building bundles of related JS functionality quickly, and Django has no built-in features for that. The most common solution, Bower, is pretty heavily tied to the Node.js ecosystem.
He's referring to the picture of the hard drive above that line when he says "these guys". It took me a couple reads through that sentence to grasp the meaning = "Why are we still using spinning metal contraptions to store data 65 years after the invention of the integrated circuit?"
Nope, you're not wrong. That's part of minecraft and had nothing to do with PHP. I have a 200 meg server.log file that was run on a dedicated server, and in it there are 570,000 lines that say that -- out of 2,461,927. In other words, 23%.
I've never liked famo.us and never bothered to look into it so a rewrite for it won't happen (at least not by me). I'd like to think that if famo.us is any good then something like interact.js should be able to work with it without heavy modification or with a thin layer on top, but maybe I'm thinking too highly of my own work :-P.
Light Table 0.7.0
GigaSpaces XAP (http://www.gigaspaces.com) gives you a big fraction of that. You can create an in-memory distributed grid that acts as both an object store and processing platform, that is both resilient (self-healing) and scalable. The CTO of Elasticsearch used to work for GigaSpaces.

Disclaimer: I work for GigaSpaces.
Why not? Hosting is cheap and my goal isn't to maximize revenue, it's to maximize personal gratification. I get the latter from free readers as well as paid ones.

Maybe the free version cannibalizes sales, but I'm certain the book is much higher profile and reached a much larger number of potential customers because I gave (and continue to give) the web version away for free.
It would be great to have this for image search!
Have you ever played with any electronics to the extent that you've shocked yourself? It's actually pretty innocuous for the most part. TDCS isn't using the kind of current that comes out of a wall outlet.
Yeah, the energy issue is really, really tough. Stars are very, very, very freakingly far away.

I'm in California. If the whole Earth was this 2mm breadcrumb, then the Sun would be a soccer ball 25m away (across the street). Speed of light would be the speed of a running ant. Uranus would be a peanut 1/2km away.

And the nearest star would be another soccer ball somewhere in Greenland.

It. Just. Boggles. The. Mind.

http://florin.myip.org/blog/i-had-no-idea-just-how-big-solar...

I look up at the sky often. Those specks of light are so incredibly far away. We just need new physics, otherwise we'll never get there.

I'm an amateur astronomer and telescope maker, on a quest to see what's the biggest aperture that an amateur could build working alone. I can't go to the stars, but I can bring them a few hundred to a few thousand times closer to the eye.
You know, I'd prefer not to be forced to enable remote code execution in order to read an article.
If you say so. "All components of a quantum system are always entangled" sounds like a contrary claim to me, but I don't want to quibble over it.

It does make an interesting puzzle, though, how it can be physically possible to prepare a state that is both unentangled and pure. I don't actually know the answer to that off the top of my head.
The 120K dollars TV
Creating containers – Part 1
> as invisible close buttons that only appear when you mouse over them

not a good example of bad design. It's quick to learn that if you want to throw something away, you have to touch it. Don't need the all the widget controls visible at the same time.

It's only a problem when there's an invisible remote control for a different part of the page.
You have never been able to exchange glibc on a Debian system, or replace dpkg with rpm, or (in recent releases) run without udev.

Highly recommend to read this excellent mail by Russ Allbery on portability and Debian's history:

https://lwn.net/Articles/618322/
Oh hey, I just got back to HN and saw this. Thanks for getting the simple concept of "RATios of sides" into my head! Inching closer to understanding :-)
> However, I can't take a stack seriously as an enterprise or production ready piece of software when it does something like iterate a list recursively in performance sensitive code. It's just bizarre. JS doesn't have tail call optimization and for loops are just fine.

Can you explain how you would do asynchronous tasks in series without recursion? For loops successfully handle this when either the tasks are synchronous or can be run in parallel. Neither of those are true here.
After reading this bit:

// Vec is our growable heap-allocated array type.
// This is just a handy way to make one with some fixed data.
let mut v = vec![1i32, 2, 3, 4, 5];
let x = v.get(2);
v.push(6); // oops, sorry x!

I really hope that the Rust compiler has some really good error messages explaining what the problem is because I couldn't see what was wrong with this fragment until I read the explanation.

Saying that, after reading the explanation it became a bit more obvious, and I really like the way of describing the relationship to the pointer as a 'view' and 'loan', which as a c++ programmer (though clearly spending too much time with GC languages) I can understand.
Yeap. Relativity and the speed of light are actually not a limitation for space travel, despite popular belief. Relativity actually helps you get there faster - in rocket time. It only takes longer for those left behind.

But the real problem is the stupendous amount of energy. Even with total mass conversion, you'd need a bazillion tons of mass to get to Andromeda. See the links posted below.

We need new physics.
Most people don't run their web browser in full-screen mode.
By the way, next week is Stoic Week, an online event (a course) organised by Exeter University, about applying Stoicism to daily life. More details here:

http://blogs.exeter.ac.uk/stoicismtoday/stoic-week-2014/
Design Patterns for Structured Application Development
Mobile app showcase 3D effect in HTML/JS
Interesting. I knew about PostgreSQL's mviews, but not MSSQL.
How many of your coworkers noticed the difference in image quality in portrait mode? The monitors are optimized for "landscape" and when you put them in "portrait" you get a very different color hue on each eye.

I found it so disturbing that I never used the monitors in portrait mode.
var x = [1, 'world']; // x: Array<string|number>

I'm not sure I wouldn't prefer this to give an error.
I enjoy projects like this (and others like node-webkit and cordova) because it lets me build prototypes relatively quick for my company (an ad agency). I'm strongest in HTML/CSS/JS and PHP so I don't have to spend time learning another language for something that is meant to be a demo anyways. I always tell them that if they want to get serious with one of the prototypes that we'd have to look into doing it the proper way. Although sometimes a project can be simple enough to just continue using it.
It depends entirely on your panel and how well your operating system handles sub-pixel anti-aliasing. Some panels shift dramatically, and some operating systems do a terrible job and you'll notice all kinds of fringing.
Maybe so, but the fast majority of designers are designing non-usable sites, so we shouldn't be promoting advice of the nature of "How to run a fireworks show at home" [quietly assuming you are an expert in fire safety]
Nice article.

Anyone reading this may be interested in the related concept of the 'circuit breaker' technique employed by things such as Hystrix (Netflix), to avoid getting into this state.

Not a solution per se, but the simple philosophy is to set yourself up to fail fast: when back pressure reaches some threshold the 'circuit opens' and your servers immediately respond to new requests with an error, instead of ingesting huge numbers of requests which flood your internal queues or overload your infrastructure.

https://raw.githubusercontent.com/wiki/Netflix/Hystrix/image...
To be fair, when you shock yourself, I don't imagine you tend to pass current near your brain.
My guess is that it's just a piece of machined aluminum on top of a circuit board. The metal has the cutouts required for the bits on the board to poke through.
> I really hope that the Rust compiler has some really good error messages explaining what the problem is because I couldn't see what was wrong with this fragment until I read the explanation.

They're not always perfect, but in this case it's quite good.

err.rs:4:9: 4:10 error: cannot borrow `v` as mutable because it is also borrowed as immutable
err.rs:4 v.push(6); // oops, sorry x!
^
err.rs:3:17: 3:18 note: previous borrow of `v` occurs here; the immutable borrow prevents subsequent moves or mutable borrows of `v` until the borrow ends
err.rs:3 let x = v.get(2);
^
err.rs:5:6: 5:6 note: previous borrow ends here
err.rs:1 fn main() {
err.rs:2 let mut v = vec![1i32, 2, 3, 4, 5];
err.rs:3 let x = v.get(2);
err.rs:4 v.push(6); // oops, sorry x!
err.rs:5 }
^

If you want to try out code examples, the Rust playpen is nice: http://play.rust-lang.org
It is worth noting that Xsser only affected jail-broken phones so the point of the article, that Apple's "closed-ness" was to fault here, is a factual error. In fact, it is that very closed-ness that prevents these types of software off of the AppStore.
SVGs can contain ECMAScript, video, canvases, animation, all sorts of things. They're the replacement for Flash that nobody seems to use.