skysight-inc/HackerNews huggingface dataset:
Code should read like clear code. English should read like clear English. These are not the same things, and efforts to make them the same usually make a mess of both.

This stinks of principle over pragmatism.

Using the sugar offered by expressions like this requires a bit of knowledge of the development environment. I accept that it's a bit of a different syntax from some other languages, but that doesn't make it unclear at all.

Speaking to Ruby (where ActiveSupport is from), we all know that it's a language that focuses on providing flexible syntax and "multiple ways of doing things", in contrast to some other languages which restrict flexibility to provide more consistently structured code. I don't think it's a bad thing at all to have these options available, and I often find my intentions are much clearer when writing, say:

if post.created_at < 5.minutes.ago

as opposed to Python:

if(post.created_at < (datetime.now() - timedelta(minutes=5)))

or Objective C:

NSDate *now = [NSDate date];
NSDateComponents *delta = [[NSDateComponents alloc] init];
[delta setMinute:-5];
NSDate *fiveMinutesAgo = [[NSCalendar currentCalendar] dateByAddingComponents:delta toDate:now options:0];
if ([[post created_at] compare: fiveMinutesAgo] == NSOrderedAscending)

That's where the magic comes in, and it makes Ruby ideal for things like web templating, while perhaps making it less suitable for other uses.

TLDR: various constructs like this have their place, they're not inherently bad, but do require knowledge of the tools.
[nothing wrong, except my brain]
Two new tablet companies launch in Haiti
I think this is a good point, but for Paul Krugman, the discussion of the role of the central bank in the stability of the dollar is absolutely, well, central, to the question of desirability. That is, the central bank is in some sense "responsive" to the monetary environment in a way that bitcoin is explicitly and inexorably not. I think Paul Krugman is arguing that that is a big deal.
I was not disappointed to find this as the top comment (at the time I viewed the article):

1998 - Another "evil" prediction from Mr. Krugman:

---

The growth of the Internet will slow drastically, as the flaw in "Metcalfe's law"--which states that the number of potential connections in a network is proportional to the square of the number of participants--becomes apparent: most people have nothing to say to each other! By 2005 or so, it will become clear that the Internet's impact on the economy has been no greater than the fax machine's.

---

But hey, the future of the dollar might be the same as that of the fax machine ???
Every HN post on Bitcoin has to have a discussion about the definition of fiat money.

Fiat literally means "it shall be"; in terms of fiat money this refers to government's declaration that something is legal tender. The US declares that the dollar is to be used as money - that makes the USD fiat money.

Enough people use the term to refer to money which has no "intrinsic value" that the term now means both things. Personally I think that's nonsensical – if the US declared that gold coins are to replace the USD as legal tender, then those gold coins would be fiat money, regardless of any intrinsic value gold might have. But you can't argue against language evolution; "fiat money" has two different and unrelated definitions now, and we need to repeatedly have arguments ending in both sides being correct and nothing of value being concluded.

This discussion must now, as is tradition, be followed up by a discussion of what intrinsic value means and whether it exists. So go on, discuss.
Ask HN: What negatively affected your team's progress in 2013?
Was just talking to some friends (we all work for software teams). We were talking about how each of our teams had done in 2013. A few pains that kept coming up:

1) Hiring: finding people, hiring the right people, managing conflict

2) Getting stuck in a development rut: long projects that never end, slow progress, the need to re-build features

3) Staying focused on the customer: building what they actually need, remembering why you're building features, etc...

Have you seen similar things in your startup? What affected your team's velocity in 2013?
"Stross doesn’t like that agenda, and neither do I"

Statists gonna hate bitcoin, no matter what.
The blog post talks about minimizing count(rects) but the in-game comment only mentions having better than one rect per floor tile.

This second requirement is much simpler. One only needs to merge a single two rects into one rect to fulfil it. I assume this is a bug?

Edit: Sorry I didn't read the original post well enough the first time. It gives the more practical goal of 40 rects or less.
In theory, possibly:

- identity ledgers

- credit scores / reputation tracking

- credit & debt creation and trading

- non-bitcoin asset ownership ledgers

- voting systems

- kickstarter

- ebay

It'd actually be possible to build distributed voting systems into this applications, such that changes require majority approval. It's also possible for new decentralized corporations to raise money by "IPO"-ing with a currency (Mastercoin raised ~5 million this way).
You're making a huge, possibly fatal assumption that Seiji views human beings as anything other than clicking machines attached to credit cards, there to be exploited.

As Kant said: "view people always as a means, never as an end."
Given the criteria, this would come closest:

* A Guide to the Good Life: The Ancient Art of Stoic Joy - http://www.amazon.com/dp/0195374614/

Honorable Mention:

* Anything You Want - http://www.amazon.com/dp/B00506NRBS

* On Intelligence - http://www.amazon.com/dp/B003J4VE5Y/

* Thinking Fast and Thinking Slow - http://www.amazon.com/dp/B00555X8OA/

Related:

https://news.ycombinator.com/item?id=6901046
Renamed to gfycat - Firefox Add-on

https://addons.mozilla.org/en-US/firefox/addon/gfycat-firefo...

Added similar functionality as imdsm's Chrome version,
https://news.ycombinator.com/item?id=6976059
As someone who's messed around with gifs a fair amount, I recommend using Imagrmagik over gifscicle since Imagemagik offers far more features and can do a much wider variety of compression on gifs.
Judging from a follow-up discussion, I believe you're using the word "redistribution" in a way that is meaningless and/or needlessly gives ground to a libertarian framing of the situation.

In a nutshell, if you say "redistribution", you must have some baseline in mind. Many people are fooled into accepting an "everyday libertarian" distribution of resources as a baseline, but this is both philosophically problematic and politically foolish if you are not a libertarian yourself.

Taxes are part of the distributive system of society, as are other parts of the legal code such as patents and copyright law. There is no reason to label one part of the law "redistributive" while you call other parts merely "distributive".

Matt Bruenig makes the argument better than I could, e.g. http://mattbruenig.com/2012/09/20/there-is-no-such-thing-as-... or http://mattbruenig.com/2013/11/14/one-last-note-on-redistrib...
Webhooks with benefits
The Phoenix Project - Gene Kim
Necronomicon - Neil Stephenson
Yet this is what Ruby does, AFAIK.

Numeric#days is an ActiveSupport method, not core Ruby. But yes, it does patch the behaviour into a core class.

This is a bit of a legacy of Ruby programming, and it's definitely bad to pollute the global namespace. However, I expect we'll see eventual use of Refinements (http://www.rubyinside.com/ruby-refinements-an-overview-of-a-...) now that they are available; this will allow classes to override core methods without affecting other classes out of scope.
I'll change the default code comments. We were much less ambitious before our playtesters blew my algorithm out of the water.
There are no data races in purely functional languages because they don’t have mutable variables.

Or pesky things like I/O. Or efficient data structures.
The "super capacitors" (almost nobody uses actual super capacitors after early models discovered that super capacitor lifetime at server temperature was inadequate) are just a low-pass filter - they usually only keep the drive online for a couple dozen milliseconds after main power goes down.

Most reasonable SSDs do not write cache at all, but thanks to the wear-leveling issues, they need to have a sector-mapping table to keep track of where each sector actually lives. That table takes many, many updates, and since it's usually stored in some form of a tree, it's expensive to save to media which does not support directly overwriting data (IE NAND, which requires a relatively long erase operation to become writable.) This table is typically what is lost during power events, and it is not usually written out when you sync a write.

So what happens is you write, sync, get an ack, lose power, reboot, and magically that sync'd data is either corrupt, or, even worse, it's regained the value it had before your last write, with no indication that there is a problem. This can cause some extremely interesting bugs.
Rackspace Unlikely to Withstand Amazon, Google Onslaught
In fact, "decentralized/distributed autonomous corporations", or "DACs", are a popular notion among Bitcoiners: https://en.bitcoin.it/wiki/Distributed_Autonomous_Community_...
There is absolutely no reason not to use C++ in modern software development.

Its nightmarishly complicated and gives you 1000 ways to blow your foot off, and maybe one or two to get the job done properly. After about 18 years of C++ development I still go for C sometimes. C is a lovely language that is much easier to learn. I cannot believe anyone would cheerlead for C++. Its a necessary evil.
Quien Fuckin Sabe by Patrick Carlin (brother of George). Lots of funny anecdotes and thoughts from someone who has lived a very full life.
"Let's just throw away the single responsibility principle and give Integer a method that multiplies it by the number of seconds in a day, and another one that adds it to the current day to get a new Time or Date object. Obviously that's something that an integer should be concerned with."
I wouldn't be surprised if the Bitcoin network already costs more than those mainframes in terms of carbon footprint - after all, the Bitcoin network is basically the world's largest supercomputer [0].

On top of that, you have to consider that those systems offer much more value than just a barebones ledger as the core of Bitcoin does. If you add in all those companies building stuff on top of Bitcoin, the comparison starts to become less favorable.

[0] Purely monetary terms are obviously different. The vendors of those systems inflate prices ridiculously because they can - banks have traditionally not been under much pressure to operate efficiently in this arena.
These guys have been busting tail ever since the initial DDOS; I'm really rooting for them to make it big.
Thanks for the research and link, I'm super stoked now. :) Going to go off and tweet it.
Thanks for that, I'd wondered.

For the thermal properties of the southern window exposure, I've wondered about that and in particular how that was affected by both summer and winter conditions. The fact that the EarthShips were first built in Taos, NM, which does get cold, but not quite to Montana conditions, suggested to me that the glazing might be a problem in colder climates. I've been to the Rocky Mountain Institute in Snowmass, CO, which has more extreme conditions, and it too shares both the semi-subterranean nature and large southern glass exposure of the Earthships (Lovins grows bananas in the atrium, in a bit of cheek).

Specifically:

⚫ What is the glazing? I'd hope for at least double-paned on the windows.

⚫ Some sort of exterior shading -- and awning, tree plantings, or removable sunshades (bamboo, canvas, or similar) might help the fall exposure.

⚫ Creating an internal vestibule, closing off the front garden from the main living space with a second set of doors/windows, or increasing the airflow through skylights or other openings might help moderate internal temperatures in both warmer and colder months.

⚫ Internal window coverings could minimize heat losses in the winter.

65-68F is actually about a perfect indoor temperature for me (if not excessively warm), so I wouldn't be complaining about that, though I realize not everyone feels that way.

I understand you were renting, not owning, so not all of these modifications would have been viable, but ... so it seems.

The mouse problem seems trickier. A cat (or snakes) might help. For pest control, it's seemed to me that solutions aimed at reproduction (bait with birth control in it, for example) tend to be more effective, though if you've got a large external breeding population there's likely no way you could keep up. Knowing what kinds of openings rodents can get through, sealing off the structure seems all but impossible. Gives you an additional appreciation for why the Egyptians worshiped cats as gods, however.

-
No, keynes says that the middle class will be outraged at arbitrary redistribution of wealth (especially to the wealthy) and the poor will be hurt harder (no comments on whether or not they are outraged).

Consider a poor family spending about 90% of their income on day to day expenses; versus a rich family spending 20% of their income - if there's 10% inflation, the poor family will go from a 10% margin of survival to a 1% margin of survival, which is a 90% reduction of ability to survive or save. Vice the rich family which has only suffered a 2.5% decrease in this margin.

Let's say (and this is atypical, as I said, poor people are usually less in debt than rich people) the poor family is additionally 5% in debt, versus 0% as in the rich case. Do you think it's any consolation that the 5% debt is nominally valued (and therefore decreasing in real terms) in the face of the fact that the family now is spending 104% of their income on day to day expenses? Moreover, the way in which poor people use debt (very short-term loans) typically involves interest rates that are far too high to take advantage of real reduction in value, and are over far to short of a term even if they had reasonable interest rates.

Now obviously these numbers were chosen because they make the calculations easier; but you should consider plugging in values of your own and proving that it is general.
Refinements do a little less than previously advertised three years ago, and as far as language features go I don't think they're worth the performance implications.
What else is there? Any forum with threads, voting, and karma. The software is freely available, in multiple forms.
Such a scheme has a huge flaw: it allows extortion/coercion. Suppose I am a mob boss and I wish to become (insert position here). I send my goons to inform you that voting for me is a wise decision because I can offer you protection from the vicious thugs in the area. It would be a shame if the vicious thugs burned your house down, wouldn't it?

So, you'd be forced to reveal your bitvote address to me under threat of violence. Once you vote, I just check that you voted for me. And if you didn't...

A real cryptographic voting system goes to great lengths to prevent this scenario. In such a system, a voter can prove to himself that his vote counted toward the proper party, but crucially the voter cannot prove such to anyone else. This prevents coercion.

Of course, real cryptographic voting systems have a bunch of other nice properties, but this is a really major one that most people overlook.

Example of a cryptographic voting system: Helios (https://vote.heliosvoting.org/). Also see the tech docs (http://documentation.heliosvoting.org/verification-specs/hel...). Helios is an online system, so it's not ready for prime-time voting --- it would need to be adapted into an in-person scheme, which cryptographers have already created --- but it does demonstrate the concepts involved.

This is an area of active research, BTW.
How/why should the article go any further? I don't know, it seems like you're being needlessly negative.
Its not the volatility they're after--they want to hold a deflationary currency (which, at the moment, happens to be volatile).
No Linux and Mac, no thank you!
Just because there is an organization with that in the name doesn't mean it can't be offensive. You know what NAACP stands for, right?
I suspect this will be a long-tail answer, but what the heck:

Born to Run by Christopher McDougall

It is not a perfect book, but it did get me running, and in that sense literally changed my life.
> Basically, inbox zero for your brain.

I'm now convinced. Going to try it right now.
Cryptonomicon(no snark intended)? I read that book this year too and it was definitely a great read. It's aged really well.
You're conflating different things here. `Date.today - DateTime.days(2)` would be just as clear as `2.days.ago` without muddling the semantics of integers.
that's not in any way "intrinsic" value.
Thank you, I love this. I've been using rain sounds from Youtube on my tablet at night to help me sleep. This seem better and more configurable.
I'm convinced there's a one-line version of this article that is no less informative than the original.

Somewhat ironically, I would have appreciated it if the author had been under SMS/Twitter length constraints.
Do you know anyone in China that will accept $500k in BTC for real goods and services, or is your Bitcoin example just as hypothetical as the squiggle?
" you can achieve profitability within the next 2 months by merely moving away from AWS to a more cost-effective website hosting "

Wow, are they really doing that???!

I can understand Netflix doing it, but for Reddit it's like flushing money

really

Rackspace, make them an offer!
> You can view it like that, my perspective is that in Scala the underlying mechanism (passing the dictionary around by means of implicit parameters) is more explicit.

What you lose is compiler-enforced coherence. When you use type classes, certain functions come with the expectation that you will consistently pass the same dictionary around between calls. With actual type classes, this is a given: there can be at most one instance of a type class for a type (or tuple of types). With Scala's implicits, you can trick the compiler into passing different dictionaries between two calls that expect the same dictionary.

I am aware that this is a tradeoff: Haskell's type classes are antimodular (because a global set of instances must be kept in order to guarantee instance uniqueness per type) and Scala's implicits can be used in potentially incoherent ways.

(The only way to escape this tradeoff would be to use dependent types to explicitly establish a connection between values and the dictionaries that must be passed around.)

Personally, I find antimodularity annoying, but incorrectness freaking scary. So I prefer Haskell's type classes.

> In Haskell, Strings really are lists of chars. In Scala you can't do it, unless they introduced their own String class, which would have been awful, or if they introduced some sort of implicit conversion mechanism, which they did.

I do not find linked lists of Chars to be all that useful. In fact, most of the time they just get in the way. Fortunately, all I have to do is turn on the -XOverloadedStrings GHC extension.
I don't think that's a problem: avoiding features or fiddling with syntax in order to make the code more accessible to people who are not familiar with the language or its libraries isn't going to gain much in the long run. Languages and libraries should be geared towards long-term developer happiness, rather than a shallow learning curve.

Anyway, I know as close as possible to nothing about Rust. It seems blindingly obvious to me that `2.days()` returns some kind of duration, and `2.days().from_now()` returns some kind of time. So I've looked at the code, and that appears to be correct - `2.days()` returns a `TimeChange`, and `2.days().from_now()` returns a Time. I can't think of any other reasonable interpretation.
" I try to get them to explain to me why BitCoin is a reliable store of value"

I don't believe that BitCoin is a reliable store of value like the dollar is not a reliable store of value. I went to the US after a year to visit family(I live in Europe) and was surprised how much prices had gone up. Probably you don't see that when it is incremental, but you get to see after some time out.

The same happens with civil liberties. US was one of the countries with higher freedom in the world, but the tendency is so bad, compared to countries that were really bad in the past, but the tendency is so good.

Paper money, or digital money by the way is a medium of exchange. And there lies their utility as Mr Krugman knows..

I am biased about Mr Krugman, for me he is a puppet of central banks that create money and compete against bitcoin. He was awarded the Nobel Memorial price paid by a central bank and he owes his position from defending Wall Street against Main Street.
The new title is much better.
The Art of Unit Testing by Roy Osherove is indeed amazing.

Thanks to it I now write much better unit tests, and as a result of removed frustration I do it much more often.
I'm on my third or fourth generation of Thinkpad myself (T520i). Wireless has been a problem, but other than that, it's an excellent device. And Lenovo can have its TrackPoint when it pries it from my cold, dead fingers.
Ask HN: Great programmers and computer scientists of today? 
Who do you consider the best programmers / computer scientists of today? Or, in other words, if you are familiar with Coders At Work [1], what names would you suggest for a new edition of the book?

[1] http://www.codersatwork.com/
To clarify, Mono is no Stereo: no first-class support of non-Windows platforms pretty much dooms the language. And it's not about where you develop, it's where you deploy. I'm not gonna switch to Azure or AWS/Windows, because of a fancier language when there are D, Go, and others!
I almost didn't read any of the article because of the fullscreen Nescafe ad. The comments made me give it a second try.
Here is a open source WebRTC experiment from Mozilla (Ryan Seys): http://tincan.im/
I decided to take a break from re-working my wife's website (side/for fun project) and stumbled upon this submission. Ironically, I was just wrestling with how to migrate my pure CSS bootstrap implementation to a semantic ui with Less. Bootstrap is NOT built for abstracting away it's implementation details even if you use Less...I can't get rid of a collapsible nav or input-group-addons. I wish I had a mixin for each...

The author is spot on with his concerns, but I think there is one more to the bower equation. Why does the package manger have to pre-build their assets for me to use them? Why can't I use the grunt files associated with the bower project I imported to build my assets? Let's imagine there is a scenario where I create some sort of grunt config which includes/excludes certain bootstrap js files (I'm assuming that 1) grunt allows me to extend/overwrite the package's variables 2) I can chain the grunt builds of multiple dependencies together...then when I build my project, I only get what I configured.
Man's Search for Meaning by Viktor Frankl. Read it twice now, absolutely fantastic.
Google’s Chromebooks Have Hit Their Stride
The problem that I have heard being stated before is that Bitcoin is associated with real money. This basically leads to the value of each Bitcoin increasing, and then early adopters making gains that they shouldn't really be making. I don't know how a system would look, where everyone starts off with X Bitcoin, though the current system feels wrong where some people now have $100s millions of Bitcoins and didn't do anything for them. This value should be re-distributed somehow.
You can encode an mp3 and have it as a downloadable file all in javascript, just FYI.