The ugliest hack I've ever pulled off - <AUTHOR> http://blogs.xobni.com/asmith/archives/36 <comment><USER2> Yeah, yeah, so the engineering part wasn't that great. But were the results good? Which algorithms did you use? What were your features? Seems like an interesting experiment, especially with all the gratuitous "friending" people do. Reminds me of a related paper: <http://www.hpl.hp.com/research/idl/papers/facebook/facebook.pdf>

<comment><AUTHOR> Check out the report -- <http://www.scribd.com/doc/747/Friendship-Prediction- on-Facebook>

Cliffs notes version:

It turns out that how many friends of friends you have in common is the best predictor. After that, it's the number of photos you appear together in, and how many photos your friends of friends appear in. Following that is the number of classes you have in common.

All of the traits (like religious views, what state you're from, guy/girl, etc) are secondary.

It worked pretty well.

(Coincidentally, the facebook friendship prediction was my answer to the last question on the YC app.)

<comment><USER2> The non-friend vs anti-friend distinction didn't even occur to me, but it's clearly an important part of the experiment. I like all the discussion of data. Fun problem.

I did not realize squaring an adj matrix tells you what it does. Thanks for edjumacating me.

Did you go past f2hops? Seems like 3 would be reasonable and predictive. Since 1/2 of your tree is so small, and there were 12k nodes in the tree, that suggests to me a pretty easy task. Do you agree? It would be interesting to see if PCA or LDA pick the same features as the decision trees did. Just a click away in Weka, after all.

(An aside, and neat hack: Buddy of mine just walked in and saw the document on my screen. He saw the decision tree and said, "I remember those. In grad school I printed out decision trees as C if/else statements. Part of running my decision tree was a call to gcc.")

<comment><AUTHOR> Hi jwp,

I think I tried or wanted to do f3hops. Either I did it and I was stretching the 2GB memory limit, or I couldn't. As you exponentiate the sparse matrix more and more you get a less and less sparse matrix. I was really hurting for memory.

Yeah, I really wish I could have spent more time exploring the algorithms side. If I didn't start Xobni during summer 2006 the plan was to write a book on machine learning, in practice. One of these days..

P.S. Would love to get in touch. Can you post your email or send me a note? My email is adam dot smith foo xobni.com where foo == @.</comment></comment></comment></comment>


VR experience Job Simulator has earned $3M - <AUTHOR> http://owlchemylabs.com/job-simulator-sales-milestone/ <comment><AUTHOR> Voices of VR thoughts on why it is so successful here: [http://voicesofvr.com/498-keys-of-owlchemy-labs-success- agen...](http://voicesofvr.com/498-keys-of-owlchemy-labs-success-agency- plausibility/)</comment>


Good Hedge Funds Had a Good Year - <AUTHOR> https://www.bloomberg.com/opinion/articles/2019-02-15/good-hedge-funds-had-a-good-year <comment><AUTHOR> This is a Matt Levine column. The first section talks about Bloomberg launching their first ranking of hedge fund managers.

The list is ordered by income and topped by the usual suspects. But as Levine discusses, this is interesting because Bloomberg breaks out income from management fees and income from investment returns.</comment>


Facts about the military empire of switzerland - <AUTHOR> https://www.philipithomas.com/switzerland/

<comment><USER2> "Facts about the military _exact-opposite-of-the-word-empire_ of Switzerland."

The Swiss have been quietly and patiently demonstrating to the rest of us how a sane nation-state acts for hundreds of years...

</comment><comment><USER3> _La Place de la Concorde Suisse_ is indeed a fantastic book, but it was written in 1984 and a number of things have changed since the Cold War ended.</comment>


A brave new world of fossil fuels on demand - The Globe and Mail - <AUTHOR> http://www.theglobeandmail.com/news/opinions/opinion/a-brave-new-world-of-fossil-fuels-on-demand/article1871149/ <comment><USER2> I don't know. Solar powered, hydrocarbon energy that's fully backwards compatible with today's energy transport infrastructure? Sounds too good to be true.

</comment><comment><USER3> So 25k gallons (of gasoline, presumably) = ~900MWh, which is the energy they claim can be harvested from one acre annually, once production reaches commercial levels. On average, each acre receives 5800 MWh per per acre annually. This comes out to ~16% efficiency. The big question is the cost per watt of this technology. Of course, there's the added benefit of removing CO2 from the air...

<comment><USER4> They claim it at $30/barrel, (42 gallons in a barrel according to google calculator), which makes it about $0.7142 per gallon of produced fuel (wholesale). Factor in distribution and retailing markups and taxes and you are probably going to double it or more, but still.

Cheap gasoline limited only by area (not even land area, since presumably you could produce this in sea water) and sunlight? Sounds too good to be true. Anyone have a corroborating source other than the globe and mail?

<comment><USER3> To take your analysis further, $0.71 per gallon of gasoline comes out to $0.02 per kWh... even with 100% markup, $0.04/kWh is _very_ cheap energy. You're right, it sounds too good to be true.

<comment><USER5> Power plants are only 40% efficient at best and cars are lucky to be 20% so it's really about the same cost as an electric car.

PS: Not that I think it's accurate; 16% efficiency is not bad for a solar cell, suggesting you can get a bio fuel plant close to that is a hard sell IMO.

<comment><USER6> _cars are lucky to be 20% so it's really about the same cost as an electric car._

Except that your range is going to be a whole lot better and the maintenance costs for your storage device are a whole lot smaller.

</comment></comment></comment></comment></comment><comment><USER7> Sounds like a hoax. The claim is extreme - an organism can't actually exist entirely on CO2 as claimed. What else is false? All of it?

<comment><USER8> Generally, whether or not the science that goes into a newspaper article is good the science that comes out is bad. "No feedstock" is very different from "no nutrients" but the way the article was written makes me think that the reporter didn't know or didn't care about that distinction. So it might very well be a hoax, but we really can't take the article as any sort of evidence.

</comment></comment><comment><USER9> Long on hype, short on proof and details. Also, releasing tons of genetically engineered microorganisms into the wild - what could possibly go wrong?

<comment><USER8> I'm pretty sure this would be a matter of having lots of genetically engineered microorganisms in tanks rather than in the wild. Hard to collect the oil otherwise.

</comment></comment><comment><USER10> Dear google please buy/support this tech and release it as opensource.

Signed, We.

</comment><comment><USER11> sell corn futures?

<comment><USER12> No, buy a farm so that you can get in on the increase in subsidies.</comment></comment>


Rust - a new programming language from Mozilla - <AUTHOR> http://www.rust-lang.org/ <comment><USER2> Please note that Rust is very alpha alpha alpha at the moment. Syntax evolves constantly. Several concepts don't even _exist_ yet, and many are present only in half-formed nascent states.

The bottom line is that if you're interested in writing applications using Rust, you should really hold off until 0.4 or so (I'd say give it three months), both to give them time to implement all the missing pieces and then to refactor the Rust compiler to _use_ those pieces, thereby shaking out the bugs and annoyances.

But if you're interested in helping out on writing the compiler itself, or proof-of-concept libraries, definitely consider pitching in. The devs greatly appreciate volunteer contributions.

<comment><USER3> When will this ready for the real world?

I mean an actual production release?

<comment><USER2> I guess it depends on what you mean by "ready". For instance, Go 1.0 was released just last week, but people have been building useful things with it for a long time now. I suppose it depends on how much instability you're willing to put up with in order to use the shiny new thing.

As someone who follows the project closely, I do think that almost all of the core concepts will be present by 0.4 or 0.5 at the latest (fingers crossed), which would probably be the best time for eager early adopters to dive in. Also consider that Mozilla will be using Rust for experimental prototype browser engine implementations _soon_ , likely even before 0.3 is released.

But if you're looking for some semblance of stability, I'm not sure what advice I can give beyond "wait for 1.0"--which has no definite timeframe. The Rust devs don't even schedule minor releases more than two in advance, so Rust might jump directly from 0.4 to 1.0, or from 0.9 to 1.0, or from 0.367 to 1.0. But don't worry, when they _do_ make the jump, I'm sure you'll hear about it on HN. :P

If you'd prefer to track the project milestones yourself, check out the Github issues page[1] and browse the currently scheduled milestones from the dropdown in the left column.

[1] [https://github.com/mozilla/rust/issues?milestone=&sort=c...](https://github.com/mozilla/rust/issues?milestone=&sort=created&direction=desc&labels=&state=open)

</comment></comment></comment><comment><USER4> I feel like I'm beating a dead horse, but I really can not grasp what the catalysts are for creating Rust or Go or Julia or other new languages that want to be safe, reliable, readable, etc.. 30 years ago these problems were solved in a language Ada. Its exact requirements include all of those and more.

See for yourselves: <http://www.adahome.com/History/Steelman/steelman.htm> Later revisions have well-though-out rationales that show off all the changes: Ada 95: [http://www.adaic.org/resources/add_content/standards/95rat/r...](http://www.adaic.org/resources/add_content/standards/95rat/rat95html/rat95-contents.html) Ada 2005: <http://www.adaic.org/ada-resources/standards/ada05/> Ada 2012(!!): [http://www2.adacore.com/wp- content/uploads/2006/03/Ada2012_R...](http://www2.adacore.com/wp- content/uploads/2006/03/Ada2012_Rational_Introducion.pdf)

The steelman was the end revision of requirements for the original language. There is a comparison of C/C++/Java/Ada wrt the steelman available as well. Ada has become so much more since this document and it's original version one really must see it to be believe it. :o)

As a community we have a tendency to embark on projects on a whim, but the effort, time and money required to bring a language to maturity is enormous. Even then any deficiency a preexisting language may have surely is not so insurmountable as to make it viable to develop a new language in house.

Can we please have some sanity? Can we please look for mature solutions?

Edit: Ada has an amazing GCC frontend developed largely by a successful opensource company (with just massive customers across the globe) and is available across all of its targets: the bsd's, solaris, linux, mac, haiku, android and more. It's a great solution that is hard to ignore.

<comment><USER5> I've used Ada. It was a super major pain in the butt. Go is like an easier to use C, where Ada is like a harder to use C. The solution to "people screw up dynamic allocations" is not "make dynamic allocations brutally difficult".

<comment><USER4> Ada wants to catch as much as it can before runtime. To that end, it is one strict beast when you're used to all the willy nilly (and unsafe) constructs that we can beat C into doing. Ada absolutely is harder; it's built for hard problems. I don't intend to turn away from the topic of TFA, but Ada is on quite a different plane than C for a number of reasons--reasons that I think are compelling. C is wonderful for creating a foundation for low-level software as it has demonstrated for what seems like an eternity, but beyond that--and I think the crazy things we've done over time to make it a little easier to use reflect this--something with more high-level, safe, readable, yada, yada, yada is desirable if not absolutely needed.

Dynamic allocations in Ada are a cinch by the way. We use the "new" reserved word.

subtype Hacker_News_Article_ID is Natural; -- Numbers 0 .. Integer'Last;

type Article_Handle is access all Hacker_News_Article_ID; -- "all" reserved word used allows access to variables on the stack.

Favorite_Article : aliased Hacker_New_Article_ID := 3793716; -- "aliased" so we can point to this stack variable.

Article_Pointer : Article_Handle := Favorite_Article'Access; -- A sensible default perhaps.

later on...

Article_Pointer := new Hacker_News_Article_ID (Whatever);

Good luck!

<comment><USER5> What I meant by dynamic allocation was allocating an array of the necessary size. Last I checked, the Ada solution was to always allocate the largest possible array you would ever need every time. Correct me if I'm wrong, but in Ada if two arrays are different sizes, they are completely different types.

In practice, this means your Ada written image viewer can show you 1000 thumbnails, but no more. Or 10000, or some other hard limit. And you can only view images smaller than 2MP. Unless the author made the fixed sizes really large, but now you're burning 10MB of memory per image even if they're all tiny gifs.

<comment><USER6> This is untrue. This is an Ada declaration for a fixed-size array of Foo with indices 1 to 10 (inclusive): type Foo_Array is array (Integer range 1..10) of Foo; This is an array indexed by an enumeration: type Foo_Array is array (Some_Enum) of Foo; But dynamically sized arrays can also be declared: type Foo_Array is array (Integer range <>) of Foo; Note that such an array has a dynamic lower bound and a dynamic upper bound. If I create an instance of such an array and pass it to a procedure: declare My_Array: Foo_Array (3..10) begin Do_Something (My_Array); end; then the procedure Do_Something receives both bounds of the array, 3 and 10, which it can read with the 'First and 'Last attributes.

A declaration like the one above is typically done on the stack (although it doesn't have to be). An array can be allocated on the heap with "new", with, IIRC, the following syntax: new Foo_Array (3..10)

<comment><USER5> Thanks for the clarification. Can you create an array with variable size though?

        new Foo_Array(x..y)

That's what I couldn't figure out how to do last I tried.

<comment><USER6> Yes. What you've written is exactly how to allocate an array of dynamic size on the heap. You can also do: declare My_Array: Foo_Array(X..Y); begin ... end;

<comment><USER5> Hmm, I remember it being very hard, but it seems I've lost the specifics. My bad. In any case, Ada is not a language I'm excited to work with, but Go could be one.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Previous discussions:

* <http://news.ycombinator.com/item?id=3774075>

* <http://news.ycombinator.com/item?id=3501980>

* <http://news.ycombinator.com/item?id=3027777>

* <http://news.ycombinator.com/item?id=2390980>

</comment><comment><USER8> How does Rust compare with Go?

Their goal of being a modern systems programming language are similar.

<comment><USER9> <https://github.com/graydon/rust/wiki/Doc-language-FAQ>

Has a section called: "Have you seen this Google language, Go? How does Rust compare?"

Excerpt: "Go adopted semantics (safety and memory model) that are quite unsatisfactory." Like Null pointers, global GC, shared mutable state etc.

<comment><USER8> Thanks for the link, I upvoted you.

I'm a C++ systems programmer, so I'm trying to understand some of the issues here. I'm not familiar with either language, please forgive the ignorant questions.

Null: Why is null evil? Doesn't Go use it in the Java sense of releasing a reference to the object?

Global GC: Seems more like a runtime implementation choice?

Shared mutable state: Doesn't seem so bad for someone approaching a systems programming language. I don't always want to make copies and send it over as a message to the other threads?

My higher-level point is that, perhaps these languages could do a better job of selling, differentiating, explaining themselves. I know it's hard, that's why I'm trying to help by posing my stupid questions. Btw. if they're planning to write Firefox in this, maybe the author should maintain a minimal browser written in Rust to show how the language fits its original design goals.

<comment><USER10> Note that we don't forbid shared mutable state entirely (we don't forbid anything really, as we have an unsafe sublanguage that allows all the pointer tricks that you can do in C++), but we want to contain data races. Basically, as the FAQ says, "you can break the rules, if explicit about where and how".

We've learned that, especially when it comes to concurrency, there really is no one model that supports everything you might want to do. Instead, the idea is to support safe, data-race-free language constructs, and to make those the easiest ones to use. Data races (and memory unsafety) are clearly marked in "unsafe" blocks, with the idea that if you find a concurrency bug in your software, you can grep for that keyword and go over those blocks only, instead of having to crawl through the entire codebase.

The same principle applies to null. You can get nullable pointers (use option<T>), but you have to declare that that's what you want. You also have to declare some strategy for handling the null case every time you use the pointer, or at least communicate your intent to fail on null via the .get() method. The vast majority of pointers in any program aren't nullable, so in practice we've found that this eliminates a lot of bugs.

</comment></comment></comment></comment><comment><USER11> This is an interesting new language but I'd be interested to know - what is the motivation behind its creation?

<comment><USER12> Mozilla is writing Servo, a parallel browser engine, with Rust.

[http://smallcultfollowing.com/babysteps/blog/2012/03/28/serv...](http://smallcultfollowing.com/babysteps/blog/2012/03/28/servo- design/)

<comment><USER13> Writing a new programming language from scratch in order to enable the writing of a new HTML rendering engine from scratch is at least ambitious!

<comment><USER14> Is it more or less ambitious than trying to take an existing large C++ single- threaded codebase and try to multithread it without introducing bugs or running into Amdahl's Law early on?

That's the key question here...

</comment></comment></comment></comment><comment><USER15> Did anyone find an explanation for why they opted for brackets in favor of whitespace or a ruby-like syntax?

<comment><USER16> Being someone that has only ever programmed in languages that use brackets, I really, really don't get this white space thing .. it appears, to me at least to make reading code very difficult. With brackets I can scan a page of code and _see_ the blocks of related code.

What are the advantages to using white space?

<comment><USER17> I don't know if this will apply to you, but it's also possible to "see" the blocks just by indentation.

If you assume that this is possible, and your eyes can get used to read code just by its blocking, then brackets are unnecessary, even superfluous.

<comment><USER18> It's like becoming bilingual. When you know only English other languages are completely confusing, but once you learn a second language you can more easily pick out pieces of others.

If all you know is {}, then other code is harder to read. Once you learn either a Lisp-like language or a Python-like language then you learn to see code blocks without {}. This is what happened for me. (I was forced into learning Scheme in school. Only after that did I decide that Python was an OK language after all.)

</comment></comment></comment></comment><comment><USER19> Can anyone explain this, from the first paragraph, to a bog standard PHP-for- the-web programmer please?

"Its design is oriented toward concerns of "programming in the large", that is, of creating and maintaining boundaries – both abstract and operational – that preserve large-system integrity, availability and concurrency."

<comment><USER20> Some of the difficulties in large projects include:

1\. It's easy to break things accidentally, and it's hard to track down all the usages of something when you change it. This is especially true when functions and types can be aliased under different names, changing a class affects all subclasses, etc. The more complex the application, the more you get pervasive usage of types defined within the application. This is a real change from smaller applications where most of the pervasive types probably come from the language's standard library, which can be trusted to be stable between major releases.

2\. A large codebase means that whatever finicky housekeeping the language requires is almost guaranteed to get screwed up somewhere in your application. If this affects the integrity of the whole app, it can be very bad. Invalid memory accesses are an infamous example. It doesn't matter if you have a million lines of awesome, feature-filled code; if one buggy line of code crashes your app every ten minutes by dereferencing an invalid pointer, your app is unusable.

3\. Fragmentation of types and libraries. Programmer X adds a Flugelhorn library on one end of the app, programmer Y adds a Flugelhorn library on the other end of the app, and nobody realizes it until incompatible Flugelhorn types start bumping into each other in the middle. This is less of a problem for a community where "programming in the large" means many people writing many small independent projects, but it could be a major annoyance for a language where the goal is to write large, complex applications such as web browsers.

4\. Concurrency. Concurrency can be a coupling factor that requires programmers to know too much about global design and global state. It can also destroy performance and stability. Finally, given principle #2 above (every large running application contains screwed-up code somewhere) runaway tasks are a threat to the whole system if not contained. When done well, however, concurrency can reduce coupling and improve stability.

5\. It can take a long time to rebuild a large codebase and run its tests.

I don't know much about Rust so far, but here's my stab at matching the features of Rust against those five problems:

1\. Compile-time type checking is a big help. Rust also has some ways to enhance types without subclassing.

2\. Memory safety, garbage collection, errors that propagate upward by default, isolated tasks. Error handling is unappreciated in this category, I believe. It's important that an application not accidentally suppress an error and continue, because it could corrupt data, return incorrect results, or behave insecurely. A language like C where errors can be swallowed through oversight or programmer laziness is dangerous in that regard. In Rust, errors propagate upward, unwinding the stack until they terminate a task or are explicitly handled.

3\. Generic types help, and built-in support for Unicode text is a necessity. It also helps that the organization shepherding the language is likely to be the biggest user of the language. It's important to note that anything that helps with #3 also helps with #1. For example, if the language has a standard string type you can use everywhere, then your tests don't need to protect against Doug down the hall (or across the world) changing the string type and not realizing he broke your code.

4\. Immutability, message passing, isolated tasks, per-task GC. It sounds like Rust is trying to make task isolation the default way to firewall errors off from the rest of your app. For a web programmer, this is exactly like the way a Java web container is supposed to work. If one web app in the container goes haywire, the container and all the other web apps should ideally be able to continue running without their stability being compromised.

5\. I don't know what techniques are used by Rust to speed up compilation. A compiled language is at a disadvantage on this count, but compiling to object code is necessary for a systems language. Also, static type checking means drastically fewer unit tests (I don't want to start a flamewar about whether this is a good thing; it's just the way people code) so you get a little bit of your lost compile time back when you run tests.

<comment><USER2>
      > I don't know what techniques are used by Rust to speed up compilation.

From what I've observed, forcing the developers to compile the language using itself is a great way to keep the programmers mindful of compilation speed. :)

In Rust's case, I believe the bottleneck is LLVM. You can disable optimization if you just care about fast turnaround times, but you're always at the mercy of LLVM to do the actual code generation. To that end, the Rust devs have recently begun an initiative to profile the amount of LLVM IR that they generate in the compiler, and they've made some good strides so far just from picking the low-hanging fruit.

As far as comparisons to other languages go, I'm not sure if Rust's compilation model is set up to be as fast as Go's, although (IIRC) Rust avoids the template-generation step that bogs down C++.

<comment><USER10> We'll never be as fast as Go in compile speed: just to name a few issues, we do flow analysis (so we check whether your variables are initialized before you use them), our typechecking proceeds by unification (so you can say stuff like [] and the typechecker will figure out what the type of that empty vector is), and we have an extra IR-generating step (so we can take advantage of LLVM optimizations). It's a question of different goals; one of Go's primary goals was to compile quickly (which is a fine goal!), which isn't one of the goals of Rust (although we definitely want to compile fast, of course, and we have continuous integration benchmarks to that effect).

</comment></comment></comment></comment><comment><USER21> Out of curiosity, what's Mozilla's motivation for making a new language?

Everything I'm reading here in the comments is talking about how this would be a replacement for c/c++, but wouldn't Mozilla be more interested in a language that's more web focused? As I see it, Rust would NOT be a web language, or am I missing something? Is this something they would try and develop future versions of Firefox in?

<comment><USER22> That latter; they want to be able to build a large and complex web engine and have it be as safe as possible without sacrificing performance.

</comment></comment><comment><USER23> <http://doc.rust-lang.org/doc/tutorial.html#pattern-matching>

This is the whole reason why that language has such a big potential.

It has high level algebraic datatypes with pattern matching, so you can nicely model your control flow (like haskell or ocaml) but still remaining low-level.

</comment><comment><USER24> Interesting language.

Doesn't require JVM to run. I consider that a plus. But others might not.

</comment><comment><USER25> rust seems to get compared to go a lot, simply because they are socially similar (open source c-like language developed by large, popular company). i'd like to see some comparisons with languages like clay and ats, both of which seem closer to what rust is trying to be.

</comment><comment><USER26> Looks similar to F#

</comment><comment><USER27> feels like ADA

<comment><USER28> You make it sound like a bad thing. :p

<comment><USER29> Whatever its merits (and it does have a few), it hasn't exactly been a popular choice outside of building fighter airplanes.

<comment><USER30> What's not to like about building fighter airplanes? :P

<comment><USER29> Odd fact about fighter airplanes: The official documentation for a fighter airplane, if it were all printed out, would outweigh the airplane itself.

<comment><USER7> You don't see a lot of books flying around, do you :)

</comment></comment></comment></comment></comment></comment><comment><USER31> Rusted before any use was gotten?

</comment><comment><USER32> The syntax is horrible. I would prefer C over that.

<comment><USER10> What don't you like about the syntax?

</comment></comment><comment><USER33> Now even I want to create a new programming language.

 _for downvoters : pun intended._</comment>


Nasa ad for returning to moon and Mars mission - <AUTHOR> https://www.youtube.com/watch?v=WeA7edXsU40 <comment><USER2> Makes me proud to be American... shit it even made me forget I am actually from poor Poland</comment>


Hacker News Data Analysis - <AUTHOR> http://blog.rjmetrics.com/surprising-hacker-news-data-analysis/ <comment><USER2> #1 Lesson from all of this: Instead of talking about your product to your prospect, talk about something your prospect cares deeply about to your prospect.

I had no idea what you did and didn't really care until you used it in context of something I did care about: Hacker News. Now I know what you do, understand how it applies to me, and best of all, I'm starting to visualize how else I could use it.

We should all approach our prospects like you just did here. Nice job!

<comment><USER3> I would be curious to see how 'meta-submissions' (i.e., posts about Hacker News itself, about Y-Combinator, and about YC-backed startups) rank in the charts versus the five categories shown in the rjmetrics blog post. (The blog post, which made it to the top of the HN front page, is itself a meta- submission!)

<comment><USER4> The HN Community is fascinated by the outside view of HN and eagerly gazes at the held-up mirror. One of our shared interests is emerging online social structure, of which we're an example.

We're also attracted to self referential expression, such as HN comments about HN self-organization, HN self-policing, and HN self-referential comments.

<comment><USER5> Which really could just indicate that we all have an interest in HN being a good resource for us to read.

<comment><USER6> I enjoy finding out what I like, and exploring _why_ I like it. I posit that this is an inherent property of appreciation which allows one get more out of something.

The "meta-HN" stuff is an incarnation of this, and shows that HN is appreciated by a critical mass of people. This is a huge boon to the community as it leads to things such as people using Markdown syntax for clarity, proper spelling/punctuation, well thought-out comments, and often (but not always) a positive and constructive viewpoint aimed at advancing the discussion.

</comment></comment></comment></comment></comment><comment><USER7> Actually the reason his posts stopped making it to the frontpage is that the last 3 before this all set off the voting ring detector.

I don't know how accurate his other conclusions are, but it seems unlikely that new signups are down, considering the trend in traffic: <http://www.archub.org/hntraffic-17oct12.png>

<comment><USER8> I've never before gotten to see data like this from a popular website, so my questions might be a bit ignorant or naive.

Do popular sites normally have the big (daily?/weekly?) swings seen in the HN traffic data?

Have you done any research correlating the high/low days versus the submissions present on those days? (i.e. are the swings content driven?)

<comment><USER9> Most websites are busier during the week, while we are all procrastinating at work.

</comment></comment></comment><comment><USER10> Another possibility: people have tired of your formula. Andrey Karpov used to submit blog posts with the results of running his fancy commercial static analyzer on various open source code to Reddit. The first several got a lot of upvotes; a while later it became clear that it was mostly hocking a product. The more your blog comes to resemble an infomercial the less you can expect to be on the front page.

</comment><comment><USER11> "If anyone out there suspected that the 'old guard' had given up on HN, this chart proves them wrong."

Of the people here since the first year, probably only 25% still participate regularly. Occasionally I'll stumble across some discussion from the early years in Google, and it's crazy how different the site was back then. There are still good comments now, but back then there were entire conversations that were good. I don't even bother to write the kind of comments that I used to, because they wouldn't work at all on the site as it is today.

<comment><USER12> Alex, based on your kind reply to DanBC, you are tired of people calling you out for relying on Google University for your knowledge on controversial subjects. That may be tiresome, but it may also be good for the overall level of factual discussion here.

My general observation of what excites people on Hacker News is that negative metathreads get more upvotes, by two orders of magnitude, than positive metathreads. I would love to see more replies to the old thread "Ask HN: What do you like about the Hacker News community?"

<http://news.ycombinator.com/item?id=4399678>

from 60 days ago, if people are so inclined. I posted that soon after a metathread that complained about comments that were insufficiently kind and affirming, from someone who has asked advice about external website designs in days past. I figure if I ask for advice about a website, people are very well going to give me advice, and I might as well man up and take the advice. But, yeah, one thing I like about HN is that people look things up in good-quality offline sources in many instances, and ask other participants here to check their facts. And there are other good features of the community here that help me learn and develop in my work, in my community citizenship, and in my family life.

<comment><USER11> "you are tired of people calling you out for relying on Google University for your knowledge on controversial subjects"

I think it's funny how the more books I read, the more 'controversial' my knowledge becomes. I realize this is about as self-serving an argument as possible, but honestly I don't think I'm inherently interested in controversial topics, I think it's just that the more you know about something, the more wrong you're going to sound to the average person.

To give an example that most people on HN will agree with, why do you think the general public thinks eVoting is completely secure, while CS folks are generally horrified by the products that are actually used in elections? The same phenomenon applies to virtually every other area of life. Doesn't matter whether you're talking about medicine, agriculture, religion, climate change, education, etc. The more you know, the more wrong you're going to sound. (C.f. the presidential debates.)

Also, I'm usually fairly anti-Wikipedia these days. That's why I generally avoid linking there in the first place, though also to encourage people to actually read quality books or academic research. Wikipedia is often useful for finding primary sources, but

A) it's rarely comprehensive. Usually they just link to one or two primary sources at random, rather than the best ones or all of them.

B) it generally does a poor job at properly characterizing the arguments for or against something. Usually you just get 'some people believe this, other people believe that' without any indication that the case for one side might be much stronger than the case for another side.

C) It also tends to be out of date at any given time. Often not seriously so, but if you look up any of the statistics that the CDC or BLS publish on an annual basis then more often than not you're getting last year's data.

D) I agree with Jaron Lanier's point of view in his Digital Maoism essay. Specifically I think knowledge is inherently tied together with authorship, and that an article of 'facts' without a voice is just a "faux-authoritative, anti-contextual brew."

Granted Wikipedia has a lot of advantages, but I think it's a poor substitute for reading actual books. And I especially think that it's generally a dick move to pretend that you're an expert on something after having only read the Wikipedia article, except for in certain niche areas where there is no authoritative source.

And again, I'm not trying to claim that I know everything by any stretch of the imagination, just trying to explain why some of my comments may seem 'controversial'.

</comment></comment></comment><comment><USER13> If you look at my submission history of my blog then I think it's clear that HN likes things that are original and/or well thought out. My weaker blog posts go nowhere, but ones that are detailed make it. So, if there's a formula for appearing on HN, it's write something original and/or deep.

<comment><USER14> And then hope some people see it before it gets pushed from the "new" page, after which it doesn't matter how original or deep it is.

<comment><USER15> Which can happen _very_ quickly. Sometimes I am not certain whether a posting just isn't interesting, or the wind is so strong the voice gets lost in the roar.

</comment></comment></comment><comment><USER16> Very useful analysis. After running Hacker Newsletter for the past 2+ years I have seen basically this. However, the analysis seems to miss looking at things on a smaller scale like the day and time you post it which has proven to be a big factor [1]. I know even on a weekly basis (which is what I do for the newsletter), it seems some weeks have an abundance of high quality articles compared to others.

[1]: <http://news.ycombinator.com/item?id=3251877>

</comment><comment><USER17> I do think that the day/time an article was posted and also who posted are fairly large contributors to being on the front page. I've written a few articles that have made the front page this year.

In at least two instances, I posted the article myself with no upvotes. Then another HN user reposted my articles a few days later (my blog is republished by a couple tech sites), and the same exact content makes the front page. Same article content, same title, just posted by someone else and linking to the mirrored site.

Good post Robert. If you're looking for help growing the RJM team, look me up.

</comment><comment><USER18> I once worked out there were 100:1 visitors to voters for a link.

Most of the people I know who peruse HN regularly are _not_ registered users. They are happy to let others do the commenting (which they read).

[http://williamedwardscoder.tumblr.com/post/18839832580/reddi...](http://williamedwardscoder.tumblr.com/post/18839832580/reddit- vs-hacker-news-vs-twitter)

It was super-surprising to see my own blog getting an average of 55pts on HN; I hadn't wondered about that before.

<comment><USER19> Certainly fits in line with the 1% rule <http://en.wikipedia.org/wiki/1%25_rule_(Internet_culture)>

</comment></comment><comment><USER20> I suspect the NYT/WSJ gap is more a result of WSJ's much more restrictive paywall.

<comment><USER21> Yeah. I don't understand how the OP came to believe that the average quality of WSJ articles is drastically lower than that of NYT articles unless he never reads the WSJ or the NYT.

</comment></comment><comment><USER12> "Interestingly, if you look at the number of upvotes cast each day, the trend is similar. For the past two years, the same number of stories have been competing for about the same number of votes each day." This statement, backed up by the analysis in the submitted blog post, is interesting. I visit the new page

<http://news.ycombinator.com/newest>

as many times per day as I visit the front page, looking for good new submissions to upvote. The limit on the number of users who cast upvotes on new stories appears now to set a limit on the number of new stories that have been submitted in the last two years. As the blog author points out, if HN largely stays on topic, there are only so many new stories each day that fit HN's topic.

<comment><USER22> I found it very interesting that the contributing userbase has gone up but the vote count has not. I've certainly noticed the userbase expanding, but would have guessed that voting followed.

</comment></comment><comment><USER23> Fascinating. However, one must be careful about jumping to conclusions from analysis like this. I see a few items where the author that might have come to the wrong conclusion.

\- New user growth. I don't think its b/c a 'saturation point' has been hit for the HN community as the article hypothesizes. There was a period in the last few years where there was an conscious choice by HN to restrict user growth in order to maintain a higher signal to noise ratio. Newbies are now marked with green and there is no register link on the homepage. for a while there wasn't a way for new users to sign up.

\- The NYT more favored compared to the WSJ? most likely not due to the quality of the writing but b/c WSJ articles are not available to non- subscribers by default.

</comment><comment><USER24> Granted, it is natural to want people to hear what you have to say, but I did not think the reason for posting on HN was so you could try to make it to the front page. The blog post could have been titled "How I'm trying to get my submissions to the front page of HN".

</comment><comment><USER25> My takeaway --- from the fact that Matt Might's domain is second only to pg's --- is that you should write up easy to understand lecture notes on deep PL- related topics.

<comment><USER26> The fact that this story went straight to the top suggests that a meta-post about HN is the way to go.

<comment><USER27> Data-based posts about how to get to the front page, sure.

But otherwise, I'm not sure it really pays off.

</comment></comment></comment><comment><USER28> My interpretation of how this one shot right to the top: Hacker News loves posts about itself. :)

Nice analysis - the user engagement stats were very different from what I was expecting (I think I would have agreed with Jake before I saw the data).

</comment><comment><USER29> The retention rate actually seems relatively low as an absolute percentage, though the way it plateaus is interesting. I did an analysis of the retention of the oldest Slashdot users (<http://www.kmjn.org/notes/early_slashdot_users.html>), and it was much higher: about 70% after 2 years, rather than 30%. Took about _10 years_ to drop to 30%. Granted, that's for the earliest users, so retention rates are probably (much?) lower among later signups.

</comment><comment><USER30> you say the two possible reasons you are not making the front page are: your content is weak, or people's taste's have changed. The fact that the number of submissions has not changed suggest to me a third and more plausible option: The quality of submissions, and therefore the competition for the "front page" has increased.

<comment><USER31> Doesn't "My content is weak" contain the implicit qualifier "compared to the average within the domain we're discussing"?

<comment><USER32> No. You can have a domain of discourse where ALL content is weak. In fact, you can have content in this domain that is stronger than most of the content, but it might still be weak.

</comment></comment></comment><comment><USER33> Maybe I'm understanding it wrong. But the data seems to be saying that HN has succeeded defeating the eternal september effect. That'd be big news!

</comment><comment><USER34> > Also interesting is the enormous gap between the New York Times, whose > content tops this list, and the Wall Street Journal, whose content performs > among the worst.

I think this might actually be more related to the WSJ paywall. If you dont have a subscription, you can't view many WSJ articles, whereas the reverse is true for the NYT.

On an unrelated note - I wonder how the category of HN related posts do, relative to other (basically same analysis of the "Pinterest" category). Judging by the success of this post, I suspect HN + Data are a good mix. Are posts about "Data" just as successful?

</comment><comment><USER35> I wish that he had included the stats for titles containing the words "Hacker News".

</comment><comment><USER36> _"I chose to categorize content by the mention of things like big companies (i.e., Amazon, Google), Hot Startups (i.e. Pinterest, Instagram), Sensationalism (i.e. Best, Worst, First), Programming Languages (everything I could think of), and Profanity (which was fun)."_

What happens to stories that use sensationalism and profanity? Or sensationalism and a new startup?

<comment><USER37> I assume those stories would be included in both averages?

<comment><USER38> The non-exclusive sets may overlap with interesting results, if there is a multiplicative effect. That's a hypothesis worth testing, perhaps through a quick stratification of the data. There is also an issue about multi- colinearity. For example, if one were to consider modifiers vs nouns. Is it the specific noun that is of interest? Or the subset of that specific nouns, delineated by the modifier? what about the modifier generally, applied to a general noun? etc. Are there specific combinations that are significantly different from the average? etc.

</comment></comment></comment><comment><USER39> This is an interesting analysis yet the information can be derived from using your site's analytics and your observational skills to come to the author's conclusion.

It's like a painting - the subject matter is important, yet the stuff around the main subject is what makes it stand out.

Analyze what your stats _don't_ have, or seem to have 'less of', as compared to other content.

I think the data analysis could have been more interesting to a broader audience by making it more 'newsworthy' rather than a raw analysis targeted at a relatively small community (compared to a more general audience).

By 'newsworthy' I mean something along the lines of 'NYTimes, WSJ used by technical users too' - or something like that - or something like - 'Hackers in controversy - observers and participants'.

</comment><comment><USER40> I think the basis for evaluating the quality of a community lies in the discourse and communication. Submissions are a part of that, but the discussion that follows (i.e. comments) is the most important indicator of change. Personally, there seems to be an influx of reddit-style comments (little substance, meme-oriented) this year, but that could be a general evolution of the English language given the heavy influence of the internet.

That said, evaluating change in the number of comments along with comment upvotes vs. sentiment analysis seems like the only logical way to demonstrate any sort of quality meta analysis. I'm not really versed in qualitative research, so here's my ASK HN: is this even possible?

</comment><comment><USER41> I think what you are doing is challenging in the sense that you have made your goal to write a post that will go viral on HN. Remember, every story here, pretty much, is content from somewhere else. You are right that you aren't hitting your audience, but your audience isn't HN, its those reading your blog. If someone in your audience is also on HN then maybe they will find it relevant to post.

Writing to be a big story on HN is like betting a number in roulette. You had beginners luck at first, now its time to find a new game...

</comment><comment><USER42> Is it really surprising that Hacker News doesn't care about Pinterest?

<comment><USER43> It's not a YC startup and it's wildly successful.

</comment></comment><comment><USER44> I've noticed that some submissions drop off the news feed like a rock, while other submissions of the same story posted just a few hours later can gather considerable discussion, with submission time being the only apparent variable.

This leads me to speculate that there may be an optimal submission time or times throughout the day. I'd like to see analytics that look at the variation in the average number of comments/upvotes for submissions (or some other metric) to see if this theory holds any weight.

<comment><USER45> There is a tool that attempts to predict when it is a good time to submit something to HN, <http://hnpickup.appspot.com/>

It's been discussed several times on HN, for example here: <http://news.ycombinator.com/item?id=4058492> and (original submission I think): <https://news.ycombinator.com/item?id=3251877>

</comment></comment><comment><USER46> Just a heads-up: your site works really poorly on mobile. The text column is too narrow, while the charts are too big, and their interactive features make it hard to scroll the page. They also don't work right (touching a chart seems to mess up the y axis labels), but the impediment to scrolling is more annoying. I only ever read HN on my iPhone, so this is an upvote you're not getting simply because of technical problems with your website.

</comment><comment><USER47> These are excellent visualizations, I'm glad they put this together, showed it to the hn community while also demonstrating one of rj metrics use cases.

A note about the product. How do they differentiate themselves from other DW analytics companies like datameer? (<http://www.datameer.com/>) I can tell they specialize in e-commerce, but couldn't any DW analytics service give you that AND more?

<comment><USER48> I work at RJMetrics, thanks for the feedback. While we specialize in e-commerce, we have many clients that are outside of that industry. As robertjmoore demoed in the post, we can take almost any data you can throw at us, and help you find actionable insights in easy to understand charts.

</comment></comment><comment><USER49> I have to shake my head in admiration. What a powerful story - to start with not one failure, but three failures, and then to use the _same tool you were trying to hock_ in those failures to figure out why you failed...and then, remarkably (at least for me) succeed wildly.

At least in this case, your tool provided some very valuable insight.

</comment><comment><USER50> Thanks to these metrics, I've cracked the HN code:

We should always publish our content on paulgraham.com

That's the takeaway of these metrics, right?

</comment><comment><USER51> This looks cool and now I want to mess around with it. I wish there was a torrent for that dataset.

</comment><comment><USER52> Wow, I'm number 10! I don't know if I should be happy that people like my stuff, or scared that I've spent so much time submitting and commenting on Hacker News this year...

</comment><comment><USER53> As someone who'se mildly colorblind, a few of your charts were near impossible to read. Especially the bottom three lines in Average Score by Category. Just a heads up.

</comment><comment><USER54> Does this article correct for increased thresholds to perform some actions? The down-vote used to be easier to get, for example.

</comment><comment><USER55> Just a suggestion, he should compare MongoDB and Riak on Hacker News. For laughs</comment>


Adobe (Inadvertently?) Timebombed Acrobat Xi (Fix by Blocking Acroipm.adobe.com) - <AUTHOR> https://community.adobe.com/t5/acrobat/acrobat-xi-keeps-crashing/td-p/10695580?page=1 <comment><AUTHOR> Adobe killed off it's non-cloud version of Acrobat, by breaking a remote server endpoint that is checked on startup.

It makes you wonder how much control you have over your PC.</comment>


Heartbleed as Metaphor - <AUTHOR> http://www.lawfareblog.com/2014/04/heartbleed-as-metaphor/

<comment><USER2> In this article a former systems developer at MIT's Project Athena (and current CISO for In-Q-Tel) discusses the problems with trying to develop critical systems in a context where the failure mode is not random chance but sentient opposition. He also discusses ways to outpace network attackers and what policy implications those present.</comment>


Ask HN: Do you consider a 13" laptop usable as a main development machine? - <AUTHOR>

Do You? <comment><USER2> I bought a laptop with a 12.1" screen and for a while I thought it was fine. But when I plugged it into a 27" monitor I had, I noticed a huge increase in my productivity. I don't completely understand why, but programming became much more enjoyable and easy.

So one datapoint: you can use a 13" laptop as a main development machine, but you will probably be more productive if it has a bigger monitor.

</comment><comment><USER3> I have a 13.3" Macbook. It is usable for development, but I dread using it to code after coming home from coding at work on a dual screen system. Its like programming while looking through a keyhole. The increased resolution on the new 13" Macbook Air does have me tempted to buy one.

</comment><comment><USER4> I think it depends on the type of application you're building. A Twitter like application probably doesn't need as much hardware as something more complex.

</comment><comment><USER5> It's usable but far from ideal. A pen and a pad of paper is usable to write some code in, but I wouldn't recommend it either.

</comment><comment><USER6> I use a 13.3" laptop as my main dev machine.

</comment><comment><USER7> Sure, if it's plugged into a real keyboard and a 30" monitor.

</comment><comment><USER8> No, I do not.</comment>


"If You Like Your Insurance, You Can Keep It." - <AUTHOR> http://www.slate.com/blogs/weigel/2013/10/29/_if_you_like_your_insurance_you_can_keep_it.html

<comment><USER2> I didn't get to keep mine - and now what I'm stuck with I pay more per paycheck for and I don't have any real coverage until I pass $8K in medical bills - I pay basically full price for medicine and at the doctors office.

So, I pay much more and get much less.

And hey, surprise - the price is going up even more next year, with no cost of living increase in the past two years - yay!

<comment><USER3> Our office plans changed from three choices down to two. One is a 'bronze' certified plan under the new regulations, and the other is a high-deductible plan with a health savings account.

So yeah, the plans go away if you get them through an employer and the previous plans are discontinued by the insurer. I'm not surprised by this.

Of course the cost of living increases part is your employer's fault.</comment></comment>


On Mac Word 6.0 - <AUTHOR> http://blogs.msdn.com/rick_schaut/archive/2004/02/26/80193.aspx

<comment><USER2> I imagine there are still people who consider Mac Word 5.1 the high point for word processing software. A good user interface, with a good set of features, with good performance and reasonable resource requirements. If all you want to do with your word processor is edit documents, Mac Word 5.1 was a close to optimal solution for many users.

<comment><USER3> Google Docs is almost there as a viable replacement for that kind of use case. No autogenerated tables of contents, but you get tables, headers, spell checking, and other neat features. And this is coming from someone who normally hates web productivity software.

<comment><USER4> I use Google Docs extensively now. I wish it had an automatic notification feature for updates though :)</comment></comment></comment>


What if I can't code? - <AUTHOR>

I'm a start up, and a Law student with my partner who is also a Business Law student... Does this put us at a major disadvantage with this type of work? Can anyone provide me with some tips or advice. Should I learn to hack/coding? I know broad knowledge of C++, Java etc. But I cannot code myself.
Thank you for answering.
If you would like to email me- firstname.lastname@example.com <comment><USER2> Based on the real world most people will tell you that having two co-founders who are both wearing the business hat is a bad idea. Trying to learn how to code in a weekend isn't really a winning strategy. Maybe you need to think about ditching that partner? I realize that sounds harsh -- but sinking your savings and time into a venture that doesn't go anywhere may disappoint the both of you in a much bigger way.</comment>


Numeric matrix manipulation: Cheat sheet - <AUTHOR> http://sebastianraschka.com/Articles/2014_matrix_cheatsheet.html <comment><USER2> You know what would be interesting? A cheat sheet that says "this matrix operation helps you solve this problem". Linear algebra (the immediately encompassing field here) is a goldmine of practical solutions to problems people actually pay others to solve, so a few pointers could be immensely useful.

<comment><USER3> You might be interested in this book:

[http://codingthematrix.com/](http://codingthematrix.com/)

Also, Strang's 16.02 lectures on Youtube were incredibly useful for me, far more so than any book.

<comment><USER4> I've been watching his lectures from 18.06 this weekend (from here: [http://ocw.mit.edu/courses/mathematics/18-06-linear- algebra-...](http://ocw.mit.edu/courses/mathematics/18-06-linear-algebra- spring-2010/video-lectures/)).

I just googled and didn't find any reference to 16.02

I started using Axler's Linear Algebra Done Right. I found it _great_ when I was in the flow and could do the simple proofs in the exercises or 'as you should verify', and frustrating when I was stuck on the same page for an hour and needed to ask a friend for help. The reason I'm watching Strang's lectures now is that I paused my study for a while, and want a refresher before I pick Axler where I left off. I can't bear the thought of re-starting Axler from the beginning, but I know I can't just pick up where I left off :(

I'll take a look at coding the matrix.

<comment><USER3> 18.06! Not 16.02. Sorry!

<comment><USER4> Phew! I thought for a moment I'd spent my weekend watching his second-best lecture series!

</comment></comment></comment></comment></comment><comment><USER5> I don't really see how this is a cheat sheet.

What is a cheat is the benchmark graph the author has taken from the Julia site, which lists languages in decreasing order of benchmark performance - except Julia, which is listed before Fortran, despite being slower at everything except parsing integers.

<comment><USER6> Scroll down to the bottom of the article and you'll see the cheat sheet:

[http://sebastianraschka.com/Articles/2014_matrix_cheatsheet....](http://sebastianraschka.com/Articles/2014_matrix_cheatsheet.html#cheatsheet)

(click on the image)

Also fyi, the author could have also included syntax for Mathematica and WolframAlpha. I think he was focusing on free software but WolframAlpha is free for modest usage as alternative to the monthly paid subscription plan.

[http://www.wolframalpha.com/examples/Matrices.html](http://www.wolframalpha.com/examples/Matrices.html)

[http://reference.wolfram.com/language/howto/CreateAMatrix.ht...](http://reference.wolfram.com/language/howto/CreateAMatrix.html)</comment></comment>


Chess, a Drosophila of reasoning - <AUTHOR> http://science.sciencemag.org/content/362/6419/1087.full <comment><USER2> I followed the recent championship matches on chess24.com and was blown away at how compelling and engaging computers have made the game. There was a chessboard on the screen with the current board state and a computer analysis on the side estimating which player had the advantage and by how much. While waiting for players to move, I was able to test out my own ideas on the board of which moves I thought were best and see what the computer thought of them (every move I made pretty much threw the game to the opponent).

After losing to Deep Blue, Kasparov came up with the concept of "Advanced Chess," where players team up with a chess program of their choice to augment their play. At the time, a chess program with a computer coach was still superior to a chess program alone. That didn't last long, but I think Kasparov was on to something and I would love to see students paired up with open- source chess programs for tournaments that blend chess-playing proficiency with computer-programming.

<comment><USER3> Completely agree that Kasparov was on to something with Advanced Chess. The first iteration of the idea failed to gain traction but that was more due to cumbersome tech (players staring at desktops playing slow games, not much of a spectator sport) than to the idea itself. I'm prototyping some ideas in this space with a team of hackers/chess enthusiasts. Ping me if interested in contributing or beta testing, contact info in my profile.

<comment><USER4> I think it has been shown since then that for modern computer chess engine the human member of the centaur team is always detrimental. It's strictly superior to systematically ignore the human suggestions.

<comment><USER3> Interesting, I'm not aware of this but conclusively shown, but please provide a link to back that up as I'm certainly curious.

That said, if you do centaur blitz or bullet chess using over the board pieces, not computer move input, I'm fairly certain that the skill of the human player will be a factor :-)

</comment></comment></comment></comment><comment><USER5> Here's a much better article with a similar title: [https://pdfs.semanticscholar.org/c9e7/3fc7ec81458057e6f96de1...](https://pdfs.semanticscholar.org/c9e7/3fc7ec81458057e6f96de1cba095e84a05c4.pdf)

</comment><comment><USER6> It's always nice to see Kasparov, who could have easily been salty for losing to a machine and given up on chess forever, instead keep in touch with technology and science to make the game better.

He's at the age where you could have expected him to be willfully ignorant on these sorts of things, but he chose not to be. I will respect him for that.

<comment><USER7> Kasparov was the first player to significantly profit from computer chess, selling many many chess computers I fantasised about owning as a child. He has always profited by playing and talking abut computers, often in ways that baffled those in the field:

[http://content.time.com/time/subscriber/article/0,33009,9843...](http://content.time.com/time/subscriber/article/0,33009,984305-1,00.html)

(the 'insightful' pawn sac was suggested by most run of the mill computers, and seemed an obvious moves to strong humans at the time).

<comment><USER6> Sure, that was like 20+ years ago. I'm saying today, he has no reason to keep writing about chess and yet here we are.

<comment><USER8> He is a well known figure in chess. More people recognize his name in connection to chess than Magnus Carlsen and Fabiano Caruana combined! Of course he writes about chess - when he does people listen and assume he has something insightful to say (weather or not he does), thus when he wants money he needs to talk about chess. He can be (and reportedly is) a great inspirational speaker, but he is expected to talk about chess at some time in each speech.

<comment><USER9> do you really think Kasparov writes about chess when he runs out of money?

</comment></comment></comment></comment></comment><comment><USER10> I'm a beginner violinist who for a long time looked warily at the fact that robot violinists who'll play better than us aren't more than a few decades away.

But I realize nowadays that technology isn't just about automating away what we do as humans - its can also be about removing anything that might be standing between you and your fullest potential.

e.g.

\- even if I couldn't find a professional orchestra willing to play with me as soloist, someday a robot orchestra could do that for me.

\- a teacher that can spend unlimited amounts of time observing me and guiding me in my learning in the most personalised way

</comment><comment><USER11> I wonder if artificial learning could recreate the intellect of Socrates.

</comment><comment><USER12> Are we peak ML yet? I understand the need for hype, but I'm yet to see a killer app.

<comment><USER13> Not even close. Chess is a relatively easy target for AI: the rules are well- defined, all of the pieces are visible to both players, and while the state space is massive, it's a tractable problem.

Now look at something like DOTA: while each avatar has specific moves, the combination of when you play them, how you chain them, and where you aim them is very unclear; half the time, you've got no idea where your opponents are due to fog of war; and the state space is infinitely larger than chess' (which is already huge to begin with).

In short, we're just getting started. Chess was always just a stepping stone for the AI folks -- a chance to show how a machine could reason. Buckle up -- it's gonna be a wild ride :-)</comment></comment>


SQL for Web Nerds - <AUTHOR> http://philip.greenspun.com/sql/ <comment><USER2> Great reference. I come from a lot of MySQL background so this was very informative. I also appreciate the lack of crazy CSS and graphics; it makes the content easier to skim and read. Same reason why I love HN :)

<comment><USER3> I would be surprised if that page wasn't at least 5-6 years old. Philip Greenspun founded ArsDigita which released the software known now as OpenACS. His thought processes were quite interesting and his theory on hiring the top .2% of the programming elite were radical at the time, but, proved to be quite on-the-money. The implosion of that company has been told on the net many different ways, but, some of his methods still hold quite a bit of merit.

<comment><USER4> Your comments about ArsDigita reminded me of ADUni (<http://en.wikipedia.org/wiki/ArsDigita_University>), which hosted free video lectures of an intensive one-year computer science curriculum. Back in the day I had attempted to download these lectures, but a slow pipe and the large number of lectures / assignments / etc discouraged me from finishing.

Lo and behold, the modern era of youtube and google video has seen the resurrection of these videos. Someone named "Chao Xu" has uploaded (nearly) all of the videos to google. see <http://mgccl.com/2008/04/06/aduni-videos- now-on-google-video>

(in fact, there's even a course on databases)

<comment><AUTHOR> You can find most of the coursework from arsdigita here.

<http://aduni.org/>

<comment><USER4> also, I just realized archive.org has a complete mirror of all of the lectures, exams, etc.

<http://www.archive.org/details/arsdigita>

EDIT: actually its only the first 8 courses (there are 12 total).

EDIT: wrong again; they have all 12 courses, but only list the first 8 on the landing page.

</comment></comment></comment></comment></comment><comment><USER5> "Each table in the database is one spreadsheet. You tell the RDBMS how many columns each row has."

If this is not a relational database this is still true. Correct? For instance, Google App Engine, pretends to be not a a table [http://stackoverflow.com/questions/4731657/google-app- engine...](http://stackoverflow.com/questions/4731657/google-app-engine-is- not-creating-table-python/4731741#4731741) but it is still a table with columns and rows.

<comment><USER6> This statement _can_ be true if you don't have an RDBMS. But generally isn't.

For instance with Google App Engine there is no way to say, _My columns are foo and bar_ then have it tell you that you've done something wrong when you try to insert something into column baz.

<comment><USER5> I guess I don't understand the distinction then. In the App Engine what is called a Model in the script looks like a table to me. It has rows and it has columns and those rows and columns contain data.

<comment><USER6> The difference is described in [http://code.google.com/appengine/docs/python/datastore/overv...](http://code.google.com/appengine/docs/python/datastore/overview.html#Differences_From_SQL) with:

 _Unlike traditional relational databases, the App Engine datastore doesn't require data kinds to have a consistent property set (although you can choose to enforce this requirement in your application's code)._

Here is what they mean by that. In a traditional relational database every table must have a table definition that specifies all of the columns and column types. In the App Engine it is up to the application to supply an implicit table definition. And there is no enforced consistency. If two applications access the same table, they can put entirely unrelated kinds of objects there. (Or, worse yet, put related objects that are just _slightly_ different. Just to confuse you.)

<comment><USER5> Ok. In that case, they are both tables; but they have different properties.

<comment><USER6> It is an important distinction to make. Relational databases are all about how to structure your data, and then how to manipulate that structure. In particular a key value add is that because the database understands how your data is structured, you can tell it what data you want out, and _it_ can figure out the most efficient way to extract that data.

In practice it isn't perfect. There are times that the database does things wrong, and it is useful to have a bag of tricks for figuring out when it is going wrong and forcing it to do the right thing. But _on average_ it does much, much better than _most_ developers could, and does it with a lot less work.</comment></comment></comment></comment></comment></comment>


Tesla Names Robyn Denholm as Chairman to Replace Elon Musk - <AUTHOR> https://www.wsj.com/articles/tesla-names-robyn-denholm-as-chairman-to-replace-elon-musk-1541659771 <comment><USER2> Another Australian here, surprised to hear Tesla selecting someone with a background in such a reviled (in Australia) company, Telstra. It's like if Microsoft had picked a former Oracle exec to replace Balmer, except in a world where Oracle was also hated by the average Joe Blo, not just techies.

<comment><USER3> My thoughts exactly. Telstra is a step below what even Comcast is in the USA. Unless their plan is to ruthlessly extract capitol at the expense of the customer, this is bad signalling at best, and more likely a shift to profit over vision. I'm honestly hoping they fold soon so someone can use the momentum they created as they seem intent on squandering it and their tech. Still waiting for the right to reapir your own car Tesla.

<comment><USER4> > I'm honestly hoping they fold soon so someone can use the momentum they > created as they seem intent on squandering it and their tech.

Tesla folding would be the worse thing that could possible happen for EV adoption. No other successful car company is fully committed or deeply invested in EVs. GM and Nissan are making compliance cars that permit them to continue to make the same shitty ICE cars while still meeting fleet emissions standards.

I have absolutely no doubt in my mind that if the Trump administration keeps it's momentum then those compliance rules would vanish and GM would just fold up shop on the Bolt and possibly even the Volt.

Tesla kicking competitors in the nuts on performance while showing everyone that EVs are viable business model is the only thing pushing the rest of the automotive industry forward.

If Tesla went under then we'd see GM saying "See, EVs just aren't viable with the technology we have today."

<comment><USER5> > GM and Nissan are making compliance cars that permit them to continue to > make the same shitty ICE cars while still meeting fleet emissions standards.

I don't know about GM, but that's incorrect about Nissan (at least in Japan). Nissan has bet big on EV and is bending over backwards to get people to buy them. They built a national recharging infrastructure with Mitsubishi. They offer unlimited charging for $30 per month and even had a promotion where they gave you _free_ unlimited charging for 2 years! If loan money from them to buy a car, they even give you a rate on their EV that's slightly more than half of the rate they offer on their ICE cars.

They are probably doing almost nothing in the US, admittedly (I don't know, as I don't live there). But here in Japan, they are definitely and obviously all in on EV. It will be interesting to see what happens when Toyota and Mazda's joint venture starts producing EV cars (which I think is supposed to be in 2020). At the moment Toyota is crushing everybody (nearly twice as many cars as the nearest competitor) thanks to Prius sales. Once they offer an EV car, things will get interesting in Japan.

</comment></comment></comment></comment><comment><USER6> [http://archive.is/qrhp8](http://archive.is/qrhp8)

</comment><comment><USER7> [does double take] Denholm? #ITCrowd

<comment><USER8> Have you tried turning it off and back on again?

</comment></comment><comment><USER9> I posted this as a response to another comment, but I think it deserves a top level comment:

I just want to chime in here to say: when I recently tried to purchase an iPhone SE from Telstra's online store, the device was out of stock. They couldn't tell me when they expected to have it back in stock, or it was being end-of-lifed. No straight answers. I spent 15 hours, over two weeks, on the phone to Telstra trying to get the order cancelled and my money back. I gave up with that.

And went in to a Telstra owned Telstra store and politely but sternly demanded my money back by asking the managed to call his escalation point(s) until he found someone who could authorise the return of my money.

After half an hour he was asking me to leave and I repeatedly said "not until I have my money back". I wasn't being threatening at all, rather I was pleading with him to understand my position.

He picked up his mobile and said he was dialling the police.

 _That 's how Telstra treats it's customers._

That's what Denholm is bring to the table: _the worst customer experience in Australia with regard to telecommunications_.

That's not just my opinion, Telstra has repeatedly been voted as the worst customer telco related experience in Australia for _decades_.

<comment><USER10> I've worked at Telstra so can shed some light on this.

1\. Harassing retail staff for what is a corporate process problem is really inappropriate and pointless. I'm not surprised they called the police. Instead you should have called the TIO, ACCC or escalated via email.

2\. The customer service issues at Telstra are incredibly deep and complex. It's a 40+ year old company where some of the processes still rely on dot matrix printers and faxes and there are thousands of IT systems. It's a mess. Call centres within Australia would do nothing to change the NPS which is why they were so easy to off-shore in the first place.

3\. Telstra may not have a great customer service reputation. But they are one of the most revered telcos globally. They transitioned to 4G better than anyone and had the fastest network on the planet for quite some time. And they will do it again with 5G.

4\. Denholm isn't hired to run customer service for Tesla. She was the CFO of a 40,000 odd employee highly technical, multi-faceted company e.g. their own venture fund. She also spent 7 years at Toyota so she has some automative experience as well as strong technical background.

<comment><USER11> > Harassing retail staff for what is a corporate process problem is really > inappropriate and pointless

It's a natural human reaction. If you build a system that treats customers like shit, they will take it out on your front line staff. It's not because they're bad people, it's because you designed a business that treats customers like shit. It is not exactly surprising that a customer will not be polite to front line staff after wasting 4+ hours getting bounced around various useless departments on the phone beforehand. The blame lies on management, not on customers.

</comment></comment></comment><comment><USER12> In most companies, the CEO reports to the chairman of the board and the chairman of the board reports to the shareholders ( particularly the major shareholders ).

The biggest TSLA shareholder is elon musk and many of the large shareholders are friends/backers of elon musk.

So this is a purely superficial move for optics.

She gets a nice sinecure with a fat paycheck. Musk gets the feds off his back.

<comment><USER10> That's not how it works.

The CEO reports to the board. The Chairman reports to the board. The board reports to the shareholders but only indirectly via shareholder meetings where votes will decide on renumeration, board composition etc.

<comment><USER12> > The Chairman reports to the board.

The chairman is the head of the board. He doesn't report to the board. He, along with the rest of the directors, reports to the shareholders.

The chairman has a fiduciary duty to the shareholders, not to his fellow board members.

<comment><USER13> The chairman is typically elected by the board, but there's a lot of variety. Some smaller ones just make a schedule early to basically rotate through members for two years periods. I think there's a lot of variety in this part depending on the company, board, shareholders, etc.

</comment></comment></comment></comment><comment><USER14> Denholm!

<comment><USER15> Offer them a nice cup of tea...

<comment><USER14> I hope he doesn't find his dads old service revolver.

</comment></comment></comment><comment><USER16> I call John Sculley.

<comment><USER17> He was CEO; she's chair of the board. No valid comparison.

<comment><USER16> I just meant as a general trajectory. The board is losing faith in the founder. Not a good sign. Rarely ever is.

Side note: I'm pretty sure we've interacted somewhere else online. Either on HN or reddit.

<comment><USER18> Tesla needed a new chairman as part of their SEC settlemant for Musk's tweet.

<comment><USER16> Well aware of that. They (board) were a tad too eager to see this happen and only 'supported' him begrudgingly.

</comment></comment></comment></comment></comment><comment><USER19> They've... seen Telstra's share price, right?

<comment><USER20> Telstra's major asset is a large copper telecommunications network. The government, as a matter of policy, is tearing that network up and replacing it with a publicly owned fiber network. This is not a great situation for Telstra, to say the least.

This has been going on for a while, but a hazy memory suggests there have been shenanigans afoot regarding cash compensation for the damage done - that could cause all sorts of gyrations in the share price. At any rate, the market has become so political I wouldn't read too much in to Telstra's share price without having a detailed understanding of the situation. The board is not in control of the political process.

<comment><USER10> Your assessment isn't correct at all.

Telstra sold the copper network to NBN in 2014. And NBN isn't replacing that network at all. They are still using it for FTTC, FTTN and FTTB which will make up the large bulk of the NBN rollout along with HFC which they acquired from Optus.

And it's widely known in the industry that Telstra is positioning itself to potentially buy back the NBN given they recently split the company into two: Retail and Operations.

<comment><USER21> Forgive me if I have any misconceptions or out-of-date knowledge, but while Testra owned the copper telephone network (including, I believe, the copper cabling within everybody's houses), it's only FTTN that uses the traditional copper network -- as it uses copper cabling between the premises and the node (with the node being those above-ground grey pillar box in every suburb, I believe).

FTTC and FTTB don't use the much of the copper network at all: the only copper cabling in FTTC is between the end-user's premises and the small underground pit on every block (a very short stretch for vectored VDSL2 signals at 100 Mbit/s duplex). FTTB is fibre optic cabling to an apartment building, so the only copper cabling there is within the building.

(Side note: From my past research, FTTC with vectored VDSL2 seemed like a great cost-effective technology: leveraging a small amount of pre-existing copper cabling to save digging up every garden in Australia to install the final few meters fibre-optic cabling, with the optional upgrade path to full FTTP being allowed to be done at any time into the future, if a households willing to pay for the upgrade.)

<comment><USER10> I can't remember where Telstra's ownership stopped whether it was to the first in-house socket or to the curb. It's all a bit irrelevant now as NBN owns the network and its problems.

Because what NBN is finding is that the last bit of copper is actually responsible for a lot of the problems. And so even though FTTC for example should be seeing significantly better results than FTTN in fact it isn't the case. So much so that NBN is looking at whether to go into people's houses to fix up the wiring.

FTTC is definitely a better option than FTTN especially since with G.Fast you are able to attain 1Gbit/s speeds.

<comment><USER22> > I can't remember where Telstra's ownership stopped whether it was to the > first in-house socket or to the curb.

It's at the Network Boundary Point (NBP), which varies from premises to premises.

Free-standing houses that are more than 5-10 years old, it'll probably be the first socket. For newer houses, there's a NBP that's either on the side of the house, or near the edge of the property.

For Strata / Multiple-Dwelling Properties, it may be a Distribution Frame.

Way back in the 90s, before Telecom Australia became Telstra, the ownership of all the internal wiring (defined as anything from the NBP onwards) was transferred to the owner of the premises. This was part of the competition stuff - allowing competitive bids on builds for wiring new premises, business, etc.

</comment></comment></comment></comment></comment></comment><comment><USER23> She does not even have a Wikipedia page.

</comment><comment><USER24> > Ms. Denholm, the chief financial officer of Australian telecommunications > firm Telstra Corp., has served on Tesla's board since 2014 but has fewer > ties to Mr. Musk than most of the company's directors.

Yin and yang

</comment><comment><USER25> Awesome Recode Decode interview featuring Musk from last week : [https://www.recode.net/2018/11/2/18053428/recode-decode- full...](https://www.recode.net/2018/11/2/18053428/recode-decode-full-podcast- transcript-elon-musk-tesla-spacex-boring-company-kara-swisher)

<comment><USER26> I'm not sure how you can like this interview. It's extremely combative and the questions from the interviewer seem childish like she is deliberately not listening to Elon's answers. I'm no Elon fan but this is impossible to listen to.

<comment><USER27> Kara Swisher is like that sometimes, and I don't like it too. On Steve Jobs last interview to her and Mossberg, Mossberg was trying to capture how Steve thinks, but Kara was only interested in the current event of apple dropping google on the maps app.

<comment><USER28> Sometimes? She is always like that. Once she has someone in her grip, she won't let go, ever. I don't understand how she can be so one-sided as a journalist, if we can even call what she does journalism.

A few years ago she decided she'd get Uber down. Oh boy. Every single thing she was writing was worst than a People magazine article about the Kardashians. 0 objectivity. Straight up fake news, etc.

<comment><USER29> > _0 objectivity. Straight up fake news_

Please post a link to an article written by Swisher on Uber that had absolutely "zero objectivity".

This trend of calling articles you disagree with or mediocre journalism "fake news" is frightening.</comment></comment></comment></comment></comment>


FinFisher: A researcher's tale of defeating traps, tricks, and complex VM's - <AUTHOR> https://www.microsoft.com/security/blog/2018/03/01/finfisher-exposed-a-researchers-tale-of-defeating-traps-tricks-and-complex-virtual-machines/ <comment><AUTHOR> >"FinFisher is such a complex piece of malware that, like other researchers, we had to devise special methods to crack it. We needed to do this to understand the techniques FinFisher uses to compromise and persist on a machine, and to validate the effectiveness of Office 365 ATP detonation sandbox, Windows Defender Advanced Threat Protection (Windows Defender ATP) generic detections, and other Microsoft security solutions.

This task proved to be nontrivial. FinFisher is not afraid of using all kinds of tricks, ranging from junk instructions and "spaghetti code" to multiple layers of virtual machines and several known and lesser-known anti-debug and defensive measures. Security analysts are typically equipped with the tools to defeat a good number of similar tricks during malware investigations. However, FinFisher is in a different category of malware for the level of its anti- analysis protection. It's a complicated puzzle that can be solved by skilled reverse engineers only with good amount of time, code, automation, and creativity. The intricate anti-analysis methods reveal how much effort the FinFisher authors exerted to keep the malware hidden and difficult to analyze."</comment>


Domain loccal.com: does somebody want to use it? - <AUTHOR> domain loccal.com : does somebody want to use it?
I have it for 3 years and do not use it. Does somebody want to use it for a startup? And if startup works, then good, we can have a agreement, or if it fails, you return the domain back to me?
let me know ! <comment><USER2> yea. tempting.. buts its not generally good to build a business around a domain. it should be the other way round. Would this work for any Congress related stuff? Sounds compatible?

</comment><comment><USER3> Sure! My e-mail is jasonrdecastro (at) gmail.com

</comment><comment><USER4> tempting......</comment>


Dashlane Terms of Serivce (updated, pdf) - <AUTHOR> https://www.dashlane.com/terms/download/dashlane-terms-of-service-en.pdf <comment><AUTHOR> The point of interest for me, in section 4b:

>You grant us a non-exclusive, royalty-free, fully paid, fully sublicenseable, transferable, worldwide license, to reproduce, digitally transmit and use Your Content for the purpose of providing you the Services.

I'd like them to be able to have rights to use my content for the purpose of providing service, but what about this 'sublicensable, transferable' part. And what if I'm using only the locally encrypted non-sync service, where I think my data is not being copied or stored by Dashlane. Am I now granting such permissions?</comment>


Startup Quote: Sachin Agarwal, co-founder, Posterous - <AUTHOR> http://startupquote.com/post/6594003048

<comment><AUTHOR> It's a good thing that at a startup, being stressed is often balanced by being excited. Otherwise the stress would kill you.

\- Sachin Agarwal (@a4agarwal)

<http://startupquote.com/post/6594003048></comment>


Feds Suspect Vast Fraud Network Is Targeting U.S. Unemployment Systems - <AUTHOR> https://www.nytimes.com/2020/05/16/us/coronavirus-unemployment-fraud-secret-service-washington.html <comment><AUTHOR> This article confuses me though: aren't almost all of these programs relying on direct deposit information? That is, how do you as a scammer use just the SSN and get the money out? Are unemployment funds arbitrarily re-routable? (Multiple people in the story got _confirmation_ paperwork in the mail, but if they're allowing "sure, enter any bank account for the ACH transfer" that seems surprising).

The article also has this at the end:

> The state has also implemented a two-day delay in payments to give workers > more time to vet the claims.

Which seems to just attempt to solve this via "No, I didn't apply for this". I get allowing people to say "I'd prefer it go to this account, rather than a paper check". But you'd also want to do verification for that, the same way you should be more suspicious if someone suddenly: changes their email address, changes their account information, attempts a massive withdrawal...</comment>


No, Tesla Is Not the Largest US Automaker Ever – CleanTechnica - <AUTHOR> https://cleantechnica.com/2020/01/08/no-tesla-is-not-the-largest-us-automaker-ever/ <comment><USER2> Perhaps this is a sign that value in the stock market is largely disconnected from current value?

it's entirely speculative. On the face of it, all it's saying is that a lot of people believe that tesla will _someday_ be the largest US carmaker ever.

We can go even further than that though. People don't invest for the fun of it, they invest to make money. While Ford might have an awful lot of cars, owning a handful of shares is not going to make much money beyond predictable dividends and slightly above inflation year-on-year growth. There's not much room for future growth in Ford, so people are unlikely to ever buy shares at a high price.</comment>