skysight-inc/HackerNews huggingface dataset:
You know, this is the canonical programmer missing the forest by arguing the shape of the leaf on a tree. The point is to discuss the mechanism, and factorial happens to be a ridiculously simple example.

Perhaps what the article needs is a disclaimer such as:

We can easily rewrite this in iterative style, but there are other functions that aren’t so amenable to rewriting and using a simple example allows us to concentrate on the mechanism rather than the “domain.”

;-)
This would be a good time to pause and read the writeup through.
What's interesting here to me is that C++ strings are not immutable. So I'd have expected them to behave basically the same way as StringBuilders in other languages. But apparently they are required to be stored continuously, and I guess that's what makes them slower here.
"Our homes are safe from thieves and from government not because they couldn’t get in if they wanted to but because the law and its enforcement prevents them from doing so."

A very parochial attitude from someone who lives in either Westchester County, NY, or I think NYC in the last year and a half or so.

Where I live we believe in defense in depth, not the crust defense of perimeter security backed up essentially nothing, "when seconds count, the police are minutes away".

If he lives in the suburb, as I gather he used to, the use of effective self-defense, i.e. "lethal force" in the form of guns, is strongly discouraged and there are a variety of traps for those wishing to abide by the law. If he's moved to NYC, it's almost certainly not even an option unless he's a lot more connected than he appears to be (a bit more than 50K each licensed hangun and long gun owners in a city of 8 million).

BTW, we have statistics strongly suggesting this has a deterrent effect.

So this further distances this analogy from the Internet.

Mostly. If I see a hacker's process running on one of my systems, I'd "kill" it. But that's not really the same thing....

On the other hand, defense in depth is very valid for all these issues. E.g. you hopefully don't entirely depend on the crust defense of a firewall. Others are suggesting that if you're careful about side channel attacks, there might be utility to doubling up on encryption algorithms. Although if your adversary has access to your or your counterparty's keys, which is what this latest revelation is about, it's game over. Not sure how to address that, other than don't entirely depend on easily targeted 3rd parties.
Even with a short timeout (say, 10 seconds), it could be useful for a maintainer who pulls from several other users' GitHub repositories. Instead of establishing a new SSH connection for each remote, a complete "git remote update" of multiple repositories could be done over a single connection.
Yes I agree this is very likely. FRA has certainly provided much valuable intel in the past from radio analysis and for the cooperation to continue it felt the need to listen into cabled communication as well.
PolyCrypt: A WebCrypto Polyfill
You can blur everything, you just need to point the elements.
I find it very naive that people think that they can solve the NSA/PRISM spying problems just by getting some laws changed.

The NSA's activities are already probably both illegal and unconstitutional. The problem isn't that the laws aren't protecting the people: The problem is the laws are being ignored.

Politicians and co. have made it very clear that they can't be trusted, regardless of the law: Big Brother is determined to watch you.

We need both: Our privacy needs to be enshrined in law; and we need to make it as hard as possible for it to be violated, by use of strong encryption.

Just like it's illegal for people to come into our home uninvited, but we still fit locks to our doors.

It's not one or the other. We have to have both.
So it's deliberate. Good. I'd been worried that it was just an epoch fail.
How the NSA snoop-proofs its Macs
Showing information propagation in on-line media with animated graphs
There is no option for Mexico. It is certainly not in central or south america.
Show HN: Goodreads for Movies
Secret code found in Tesla’s article
Did Linus Torvalds backdoor Linux random number generation?
Is this what you mean? Looks pretty cool.
http://ramnathv.github.io/rNotebook/#
Sorry, I meant to say "designer-ego bashing in these comments." That was unclear. I too agreed with the author on that premise.
Funnel are shortsighted... Yep. But investors are too I presume?
I'm forgetful.

If I forget to log out, my account is open to everyone. If I forget to click "remember me", I have to sign in twice. Making systems that fail safely in case of human error is a good thing.

Although one of my favorite ideas was a system I saw at a hardware store. You could use their terminals to look up products. The terminals had a pressure pad in front of them, and as soon as you stepped off the pad, it ended the session, cleared the cookies, and logged you out.
Do you remember the title? Or some keywords to find in online?
Years ago (before smart phones and data plans) I had a friend who signed up with Sprint at address #1 with free roaming on his plan. He then went to school at address #2 and used his phone mostly at address #2 where he was roaming because Sprint didn't have coverage. Sprint didn't like this, because he was costing them more money to roam than to use their network, so Sprint dropped him as a customer for roaming too much.

With our currently mobile population, I'm not sure everyone would like that. I have a phone number from a place I haven't lived in the past 6 years. I'm never going to change my number, and I know I'm going to move to a new place sometime in my life, probably more than once.
Graph theory -- graph theory textbooks and resources
I don't know why sagemath leaves such bad taste in my mouth. In principle it's very cool project.
Is it irrational to hire attractive people?

Clearly attractiveness is in parts a choice, how you dress, how you comport yourself, how healthy your body appears etc. Those choices signal positive qualities. For example dressing in a way that is perceived as attractive could signal social intelligence (being able to read society's unwritten rules about the semantics of clothes), having a body that appears healthy shows the ability to defer gratification, future orientation etc. All of which are qualities that may be helpful in various kinds of jobs.
The old interface will stay for older versions of iOS. In fact, I'm already doing that for iOS 6 and iOS 5, which both looks slightly different.
User lifecycle and linguistic change in online communities
Mapping Silicon Valley's Corporate Shuttle Problem
LINQ in JavaScript, ES6 style
Of course it is, and it was before the internet as Sweden has cables to/from Russia over which most of Russias traffic passes.

Ive heard from former employees at the then government owned Tele company that they had secretly installed black boxes in specific locations.

The FRA-law if you remember, which was passed after FRA illegally surveilled all communications they could get to make it legal, collects huge amounts of data, just like NSA, and then they trade with their NSA/GHCQ counter-parts. One argument for the surveillence was from some right-wing military person "Sweden needs a bargaining chip in the international scene".
You do realize this is one of the problems the NBN is trying to solve, right?

The problem with a competitive market as applied to public utilities is that there is only 1 set of infrastructure. So either 1 player owns the infrastructure and provides the service, the current regime, or you break out owning the infrastructure and providing the service.

The plan with the NBN is that NBNCo will own the infrastructure and then lease last-mile connections to whomever that specific customer chose as their ISP.
I've actually wondered if the cracked versions of Photoshop tend to have backdoors... and with the recent articles on the NSA, if the NSA itself is trying to put out the most popular cracked versions. I mean, if there's a single piece of software that is more pirated, I don't know what it is. They probably have more sophisticated ways, but you never know.
> Seizing on creationism and trying to make it into something uniquely awful ... is likely a socially motivated error in itself.

i dont think you understood my point - which isn't that creationism is awful, but that blindly believing something without evaluating the evidence is awful. Those people who just claim evolution is true without having read any of the supporting evidence, but simply to " fit in with our social group" is just as bad.
I recommend that you read up on the basics of investing and the stock market. The Four Pillars of Investing by Bernstein is very accessible and contains a lot of actionable advice.

If you get a financial adviser just make sure he is a fiduciary -- meaning he is legally obligated to give you honest advice. The financial advisers at banks are (as far as I know) legally permitted to lie through their teeth. The bank receives kick-backs for funds they recommend, with all the predictable consequences.
Hardware engineers busted their butts to give us decent contrast in our displays.

Then some trend-addled idiot throws it away with his "tasteful", "artistic" color scheme.
Postgres_Ext adds support for rank and common table expressions
Since this is HN, let's try an analogy.

Pretend you have two clients: One that actively engages in the process and gives you feedback and responds to questions, and one that crosses their arms, never gets back to you with answers to questions and says "just give me what I want when I want it".

Which would you be happier to work with? Which do you think would be more forgiving if there's a problem? Which would you work with again?

My wife and I volunteer heavily at our childrens' school. From my experience teachers know, consciously or subconsciously, which families care about their kids' performance in school and which families acknowledge the teachers as people and not automatons that turn tax dollars into educated children.

When that day comes where your child is struggling and the teacher is making a decision in their head to try one more time or just give up for the day, I'd rather they opt for the former and not the latter. It happens and I've seen it first hand.
Here is a quick hack that does line-by-line background colours (excuse any crappy code; I'm not a web developer). http://jsbin.com/avuku/166/edit
My ex-girlfriend graduated awhile ago from Ohio state with a degree in computer science with most of her college work done in an obscure language event there. Needless to say had problem find a job. I told her to go to comlumbus state(a community college) and take vb.net class. Viola job with the state. Employers are looking for that person that will go above and beyond.
hey, thats a good idea ! actually a great idea ...
So...you're upset because their marketing message of "making food unnecessary" means you won't be able to buy a McWobbler 5 years from now?
Epic, The Privacy Browser
Quantum Photonic Chip: Choose some input ports
Investing is a dedication we all need to have to become successful
I don't think that there is any particular problem in the code base. Its design, however, has been made with 1970s constraints in mind.

A lot of people have thought about rewriting (parts) of TeX, but the amount of legacy is so high and you have to keep compatibility with lots of existing user code.
Perhaps this: http://mindend.com/index.php/interview-with-the-creator-of-n...

found here: https://en.wikipedia.org/wiki/Igor_Sysoev

"This is an interesting interview with a creator of one of the best web servers out there. The original interview is in Russian and the translation (by google) is fairly difficult to read. I took a crack at writing a better translation and I think this might be a bit better."
LL and LR in Context: Why Parsing Tools Are Hard
Is Internet scale bigger or smaller than web scale?
>the Mayer-hands-on thing...
>that is part of Yahoo's new branding strategy

Yes, and you're exactly right that it is so breezy and fun because that's the image she's trying to project.

And because no one has accused her of robotically testing 41 shades of blue, or getting asking designers to prove their case on border widths, she's winning mindshare of the demographic she needs.

Hardly anyone has noticed this approach of logo design goes against her deep affection for process & data. But she's doing it for the positioning she very much needs: both for herself as a human CEO and the Yahoo brand fuzzies can relate to.

Yahoo is never going to make self-driving cars or rocket ships. So let's have fun and craft a purple logo, shall we?
I suspect you're right, but I don't think we should be patting ourselves on the back.

The legal profession has the bar. Doctors need accreditation. Builders need licenses for their jurisdiction.

But software? It doesn't matter who wrote it or where because bits are just bits, especially when you tread into opensource land.

We're a meritocracy because that's the nature of the industry, not because we're particularly benevolent.
Proposal: Let’s brand our websites, Koblenz
How hardware company Velo Labs got started
In case people don't know, there's a built-in command to do this: \includeonly.
Seems promising.. thanks!
> it will remove unmerited earnings

If people are currently paying roaming costs, then the earnings are clearly merited. You might find the practice distasteful, and wish it did not exist, but that does not make it illegitimate; they found something the market would pay for, and successfully got the market to pay for it.

There's no monopoly on cell carriers, as evidenced by the three separate carriers mentioned just in the sentence you quoted.
Scaling Play to Thousands of Concurrent Requests
For my style of coding, and I think many others, Nginx has become dominant because it enables fast reverse proxy. And I think for many large websites it ahs become common to build websites out of many small apps, which run on different ports and which Nginx then knits together.

An example. Assuming you have the domain “example.com” then you might have an app that handles user login and you spin that up on, say, port 30000 and you map it to port 80 such that is appears as:

http://www.example.com/login

You might also have an app that handles user signups which you spin up on port 30001 and you map to port 80 such that it appears as:

http://www.example.com/signup

You might also have an admin app that you spin up on port 30002 and you map to

http://admin.example.com/

You might also have an app that allows users to update their profile information and you spin that up on port 30003 and map that to

http://www.example.com/profile

And you might have an app that publishes much of your content as static HTML files, which you spin up on no port, as it does not accept TCP/IP requests — instead it queries the database and then creates static html files, which you save to some directory such as /var/www/example.com/public_html/ and you map that to

http://www.example.com/

You can see how this gives the sysadmins a lot of freedom to spread load across servers in creative ways — if 1 app becomes especially popular, or resource hungry, the sysadmins can rather easily move it to its own server (or set of servers). This is one of the main reasons most big sites move to an architecture like this — it facilitates fine grained control of what sort of requests go to a particular server.

This is a flexible style and it allows small, maintainable apps. By contrast, consider web development circa 2001, when many people felt it was enough to put a big blob of PHP in a directory and let Apache serve it as one big app.

Nginx's fast reverse proxy allows developers to focus on building their apps, without having to worry too much the server details. It also offers a cleaner separation between concerns that should worry programmers and concerns that should worry the sysadmins.

(A final point: in my own apps, for information that needs to be shared quickly across apps, like which users are logged in, I use ZeroMQ to knit the apps together.)
There's SOUTH AMERICA and CENTRAL AMERICA at the bottom of the dropdown. Actually cheaper than for US students.
I think there's huge potential in this kind of technology as an extension of normal driver vision, particularly combined with the kinds of specialised cameras we're starting to see fitted to premium vehicles now (night vision, radar) and the image recognition tech to go with them (lane discipline warnings, parking assistance, hazards approaching the driving line ahead).

Just yesterday, there was a 130 vehicle crash here in the UK (sadly, that number was not a typo) after thick, low fog moved in over a bridge that is normally a major high-speed route. If everyone's vehicle had been fitted with technology that detected reduced traction due to the greasy road surface, how close vehicles in front really were and how abruptly they were slowing down even if fog was obscuring them, and how fast each driver's own vehicle was really going, and if a HUD had then flashed up the essential information and highlighted the insufficient stopping distances drivers were leaving, there might have been many fewer injuries, much less damage, and much less disruption treating the injured and recovering disabled vehicles. While yesterday's weather conditions were unusually severe for the UK, similar arguments would apply all the time at night for anyone driving on high speed or bendy out-of-town roads.

On the other hand, was I the only person who watched that video and got completely distracted by the zooming route map towards the end? If I were driving for real, I think it would be very difficult to concentrate properly on the road ahead with all of that activity going on. Avoiding information overload and maintaining driver concentration seem like serious concerns for this kind of system, but as a UI guy it looks like an awesome project to work on.
This works even better with ES6 generators: https://github.com/pixelspark/dispatch.js
Why 'À La Carte' Television isn't here yet
This is just a side note, but a problem with accumulate in this context is that is defined as doing `acc = op(acc, element)` for each element. This means that whatever allocation the accumulator had is going to be thrown away on each iteration of the loop. Had it been defined as `acc += element`, then allocation schemes such as doubling the allocated memory would have been more effective and greatly reduces the number of allocations (and copies).
Provides a familiar language with clean semantics and low ceremony
> Smaltalk had it.

Smalltalk's syntax is anything but familiar, which for programming languages means C-inspired syntax.

> Smaltalk VMs, actually Self, were where the first usuable JIT compilers were developed.
> Smaltalk had it.
> Self and StrongTalk were quite performant. SIMD was not available back then.

Where are the benchmarks? Alan Kay wanted to kill Smalltalk in the 70's because the way they done things like reflection was done and performed poorly. The computer language shootout shows Dart outperforming Smalltalk by several factors for most things and their still working hard on improving performance with v1.0 of Dart not even released yet: http://benchmarksgame.alioth.debian.org/u64/benchmark.php?te... Note: many of the VM team that were originally on the StrongTalk VM team are working on the Dart VM now who have a heavy influenced on how Dart is designed to ensure it retains a great balance of productivity and performance.

> - Provides a unified object model so all classes from all libraries are interoperable
> Smaltalk had it.

Not a coincidence either, Dart's object model was inspired from Smalltalk as many of Dart engineers were from Smalltalk heritage.

> - Providing a rich, well-defined, consistent API, real collections, removing JS WATs, smoothing over browser quirks
> Smaltalk had real collections.

But does nothing to simplify web programming, which was the point of this.

> - Provides a unified and composable IO model: Futures and Streams (repeating events)
> Smalltalk has streams.

Dart is single-threaded and uses Future's for composing async operations for all non-blocking operations which is the default. Like most languages Smalltalk IO is mostly blocking and multi-threading and has poor support for non-blocking operations.

> Fare enough regarding WebUI, as the web did not exist back then. However Smaltalk is responsible for the MVC concept.

Right, but because its effectively non-existent for web programming we'll never see proper support for web technology like Web Components or tooling like TreeShaking, bundling.

> VM pruning in Smaltalk environments for deployment.

Which means nothing for web deployment and is less useful on the server where size is less of a factor.

> This is only true when using Dartium. Transpiling to JavaScript does not count.

Transpiling to JS does count, Dart has great source-maps support letting you debug Dart code from inside browsers running Dart2JS. But in terms of Native VM not running any JS, then yes Dartium now, Chrome in future and possibly Opera by virtue of Blink.
> So that's my gut feel as well, but I don't have a good handle on the economic & market information as to why that might be so.

Welcome to Reality. The mainstream media is just misleading / propagandizing you - if you want the truth, you'll have to turn to "alternative" sources.

> Can you expand?

Peter can: http://www.youtube.com/watch?feature=player_detailpage&v=Rpf...

Here's another good source: http://globaleconomicanalysis.blogspot.com/
Don't waste your valuable time and money on an age-old college degree. Sign up at teamtreehouse.com or lynda.com and try to use github to build some stuff. If someone likes your progress, they surely will offer you a job.
Roaming charges are too high and I want to start a new cell carrier to compete on this basis. How would you suggest I go about it?
Ford Car Models
New website for sale , great opportunity
Moving From Oracle to CouchDB: Data Management at CERN
This is like Diaspora* with all the publicity a while ago. A nice attempt, maybe, to bring back "Nokia" but without a clear direction of where they are heading. A "Nokia" phone with android is going against Samsung not with Microsoft WP phones.
Exactly. My point is that the factorial function is always used as an example when discussing tail call optimization and TCO is useless for it. I get how this is useful. I just would love to see an example of actually using it for something other than calculating factorials.
That's why advertising is so pointless, IMO.

For the people "dumb" enough to go to the first ad they see, advertising is taking advantage of them.

For the people who know better, and who will do research, the ads just get in the way.
Awesome!

Could you show me how to write a parser combinator in this fashion?
This is not the customer's contract, it's the University of Michigan's contract.

If the regular customers know that there are other more privileged tiers that impact the value of what they're buying, I guess it's ok. Otherwise, i think it might qualify as fraud
Cascade Progress Report: The Framework.
Or they are simply implying that they are using bleeding edge tech to their advantage as much as possible. And they aren't afraid to put on a little show and tell to the masses about it. Given his positions in public companies, it's not a bad move.
> HFTs don't have customers. They are trading on their own books.

This is just plain false. Knight trading is a HFT firm that trades both their own book and on behalf of clients.

Infact there is a large market of HFT firms that trade on behalf of clients.

As always the term HFT confuses people. HFT doesn't say anything about buy or sell side, it mearly indicates that atleast one of the following is true:

- the firm has a high order to fill ratio, with most orders being live for only fractions of a second

- holds positions for under a few seconds,

- tries to make money by collecting the liquidity fee

- engages in price arbitrage across multiple exchange venues.