skysight-inc/HackerNews huggingface dataset:
It is now just a month shy of 20 years since that letter was written.

And what did Microsoft do? They bought a browser and gave it away for free, cutting off Netscape at the knees, til the company folded and become the Mozilla Foundation.

They poured billions and billions of dollars into online initiatives from the Microsoft Network to Bing, including buying dozens and dozens of companies.

None of those were big successes. None of those have been a "tidal wave" of innovation, or success, or money. At least that I can see. Internet Explorer became dominant, but mainly due to bundling and that has gone away. IIS was a popular web server for a long time and people have written web sites using microsoft technology, but .net which is just a renamed MFC, isn't really much more used outside the same types of shops that used it before 1995. Yes, the mono project brought it to linux and made C# a more viable language, but that wasn't Microsoft's doing.

Maybe I'm missing something. Xbox and Xbox online are huge money sinks that I don't know if MSFT is ever going to recover the money from. The stock has been flat during that period while google, amazon and apple have been going like gangbusters. (And given the level of monetary inflation over the past 15 years flat means down.) Yes, it did boom during the bubble but that was %100 windows and office from the boom in companies putting computers on everyone's desk. And yes, it's grown the past couple of years after being flat from 2001-2011. But that's not a result of the 1995 "initiative".

Microsoft, like Apple, unfortunately for both, doesn't quite get the internet. It doesn't get mobile (unlike Apple).

The new CEO might change this, I don't know.

But the "internet tidal wave" happened pretty much completely without microsoft.

For the record, I worked for the company near the time of this letter, lived in Seattle during most of the intervening years and have been watching Microsoft closely for about 25 years.
Android is the new Win32, the new Java and the new Flash
There's no reason type(X'X) should be fixed. If you allow yourself to consider the case where each entry in the matrix has different type everything is fine. You just end up with matrix product rules like:

[type(a) type(b)][type(c); type(d)] = type(a)type(c) + type(b)type(d)

Which puts constraints on the types of the various entries in the product, but doesn't restrict them to being the same in each matrix or vector. This is totally reasonable - in Ax + b = y I'm restricted to type(A)type(x) = type(b) = type(y) for scalars. Why wouldn't we have a similar generalization of constraints in the matrix case? The model that arrays of objects must all be the the same type simply doesn't fit with the analysis in this case. The author suggests this:

> But I just can't imagine the monstrous types of products of the various elements ever eventually cancelling out as nicely as they apparently should – not in a real flesh-and-blood programming language.

Well that's how it should work. You just have to imagine it :)
I have Stylish installed on Firefox. Then I click the "Find styles for this site" menu item, download the "Hacker News Solarized (Dark)" theme, and enjoy high contrast YC on all my devices. Takes a few minutes at most, and one Firefox restart if you didn't have Stylish installed already.
I want reflow to avoid mid-line horizontal scrolling. I don't really care if each block of text gets offset.
I am indeed on Lollipop, however even before that, on, i believe 4.4.4, the situation was the same.
Dateup: simple dating inspired by tinder
So is there any reason to use it instead of Atom? (assuming you're not developing with .net or C#)
Drive and ambition are more valuable than "look what cool thing I made". You can teach talent; you can't teach motivation.
The Electron Shell was previously known as the Atom Shell. So part of it is Atom work.
The problem is that linear algebra is probably one of the most basic things you can do with a computer. If static typing isn't capable of offering useful help or even just has a few weird wrinkles, then something is very odd.

For what it's worth, I've seen LA done in C++ with various templates and libraries, and so it's certainly possible in various ways.
I imagine most languages with a matrix library uses opaque types implemented in C or similarly fast language. So just one typecheck would need to be done.
I really appreciate you saying that! Deep down I know I'm not the only one, but it's nice to have it confirmed. Yep, let's hang in there together.
since the added clause 'it will be a surprise' doesn't add any valuable information, it doesn't have value, not even a truth value. Quite alright by me.
There are already links to child porn in the blockchain.
Wagtail 1.0 (beta) best Django CMS?
I'm not so sure it's wise to call G+ a "dead" social network. According to recent research by Pew, it's more popular than Twitter and just as popular as LinkedIn.

http://www.journalism.org/2014/10/21/section-2-social-media-...
I wonder how long it will take to leak their data, spec those associated with facebook logins.Not surprised that they failed, it had plenty negative and offending posts and no cats/burgers/porn.
GNU Emacs would be similar in that regard.
Moderation on 4chan and /b/ has increased over the last year. Mostly to prevent the posting of peoples personal information. But the posting of shock images has also decreased. I don't know if they are being removed as well.
Docker is definitely one answer.
And more than that, not enough spots for everybody. Big companies are going to get most of them no? Especially for an intern, it is almost impossible.
Doesn't look like all the virtual functions he's using could be inlined, so no?
Yes. It's the keeping a program working when the last programmer to work on it is retired that's tricky.
Rob pike and company are also systems folks; the language supports the ecosystem they are building, not the other way around.
Isn't that the default behaviour for most linear algebra systems? (e.g. MATLAB). Maybe I'm missing something but I don't really care about compile time checking and it seems an impossible task anyway with variable/dynamic sized inputs.
From other comments, it appears that this is because this is a preview, and once it goes into full release, there will be an option to opt out.
I'm also curious. Please explain why YikYak will fail. Or does that not really count as anonymous messaging because it gives people better chances to reveal themselves than Secret? If so I think maybe https://yourlogicalfallacyis.com/no-true-scotsman
So, to offer a slightly stronger version of your requirements, we're needing to ship:

1. The program itself.
2. The behavioral specs for the program.
3. The behavioral specs for the runtime environment.
4. The configuration specs for the runtime environment.

Somewhat hidden in there is the ability to read an aribitrary program, transmute it to another program. That can be hard--especially with a language like C++, where significant computation can occur during compilation.
This really makes me hopeful for when they get things further along. From the responses it looks like it even does better right now than the existing FS for building lots of small files, even before they've got the optimizations to store them in their idata structure. BtrFS reaches similar performance by storing the files in the btree that they use it sounds like. This is the same kind of optimization done years ago by ReiserFS storing small files (<4k I think it was?) in the B+ tree they used for storing the file index. Great things ahead it looks like for the Tux3 FS. I wonder how long before they get a better allocator to avoid the fragmentation problems they have.

EDIT: I wonder how much the asyncronous design is affected by devices that support NCQ and/or NVMe? Anybody have anything to test that?
Also <grid> (as a sane alternative to <div class="table">) where you can actually align stuff exactly the way you want.
Good point. FWIW, I've had a horrid time getting decent readability with Windows {7 thru 8.1} on a Retina Macbook Pro (via either Boot Camp or Parallels). I've attributed most of that to legacy Windows apps, which seem to be a horror show in HiDPI mode. I eventually just had to set that VM to a much lower resolution to make the main app (CAD suite) usable there. It's almost shocking how much better OS X handled the low to high DPI transition than Windows has been able to manage.
Thanks. It seems you are more concerned more about the software development experience and in that regard you see benefits. But I'm more curious and concerned about the benefits in solving real world problems. For example, in what way would Haskell be more beneficial in solving the problems that Erlang currently solves at Ericsson.
Slightly related topic - what typeface (font) do you guys use for writing?

For programming, I use Adobe's Source Code Pro.

However, for writing non-code, what do you recommend?

I'm currently trying Adobe's Source Serif Pro, which isn't bad. There's also Source Sans Pro, but I would have thought a serif font would be better for non-code tasks, and more pleasing on the eyes.

Other recommendations?
I thought all large software products effectively last forever. Isn't this why COBOL programmers still have jobs for life? I would have thought the challenge is to create systems that will die.
But where will the software come from? Do you have to hook up your credit card to the package manager?
Will OllyDbg still work on those CPU ;) ?
In order to stay relevant, Microsoft attempts to supplant Xamarin's stakehold in the Linux/iPhone market, by directly eating their lunch.

This is the same thing Microsoft did to IBM. Microsoft will do it to any "partner" they feel they can cannibalize. The Halloween Documents are not only relevant, but canon with this move.
No, for much the same reason that in, say, 1945 they weren't using any airframes that had been in service for 50+ years.

OTOH, B-52 production deliveries were 1954-1963, there are B-52s in service now, and the USAF currently plans to keep them in service through 2045.
If this day has taught anything: MS is moving to Linux
F# units of measure to the rescue:

https://msdn.microsoft.com/en-us/library/dd233243.aspx

let convertCtoF ( temp : float<degC> ) = 9.0<degF> / 5.0<degC> * temp + 32.0<degF>
Here's some more ideas:

https://news.ycombinator.com/item?id=9427856
Supercharged drone
I'd be interested in cheaper, basic meals. Most of the time I eat out it's to save time rather than to satisfy a particular craving. The food just needs to taste about as good as the stuff I make at home, and healthy enough that I could eat it for every meal.
I've been a fan of siege, but recently I had to test an app under very high load and I had big trouble getting siege to do that. The default ubuntu install has some hard limits on file pointers and compiling it from source seemed to segfault all the time. I ended up switching over to httperf.
It appears to be a fork of Atom.io. Just take a look at the app contents on OSX.

$ ls "Visual Studio Code.app/Contents/MacOS/"
Atom
If multiple processes running on a single physical machine can't avoid this "window flapping" problem without cooperating, then multiple unikernels running in VMs on a single physical machine also can't. VMs are not magic.

Rather, the need for cooperation actually extends to groups of physical machines sharing a network connection too. Indeed, that's the key insight underlying objectivist mouse-based congestion control:

http://web.mit.edu/remy/
No, you add the lengths of the sides. That's type-safe and generalizes from rectangles with edges parallel to the x and y axes to general polygons:

perimeter = poly.edges.map(length).sum()

Height and width have (implicit) direction; length doesn't.

But yes, this will get hairy. For convenience, you want the ability to add heights, but that only makes sense in some cases. Two 100m high skyscrapers only make a 200m high skyscraper if you place one on top of the other.
In 10 years you might be spending most of your day in something like that. Just look at Microsoft HoloLense.
Everybody talked about thin clients and Java as an OS at that time, there was a massive Java hype going. The things Microsoft struck preempively against largely never materialized thanks to super-crappy broadband (if it even existed) and lousy early Java performance (there are dozens of Java office suites, browsers etc that never got traction or was canned before release thanks to general unmarketability).
I cannot really tell from the details re Shrivenham but you know better than me.

As for the grandparents thing: it depends. I have European friends told it was not a problem, and Arab friends that have been warned before applying there will be no rainbows or unicorns in their road to security clearances, and likely be full-on rejected.
Nadela makes some good changes. Let's see if it will continue into abolishing MS historic crooked practices like vendor lock-in, standards hijacking and patents abuse. When Nadela will do that, I'll agree that MS has really seriously changed for the better.
You're speaking of this specific issue, I'm speaking in general.
This is pretty cool, although I wonder if/how they plan to deal with things that should really be only on the desktop display - particularly things that take up a lot of space on still pretty space constrained phones. The obvious example is programming tools that don't really make sense on a phone or say a large synced repo you don't want using phone space.

I get that they're not really v1 concerns, loads of people will probably be served amazingly by Outlook + office - but I love the form factor and hope it's feasible for what I do one day!

On another note, there didn't seem to be any sign of a notification of chance for interaction on the desktop display when he got a text. That seems like a no brainer, like pushbullet on Android or Apple's continuity. It's much less of a context switch to reply to messages on the big screen and would be a really great addition.
It's hard to build a business on negativity when that negativity is directed at your own users. People like gossip but not when it's about them.
I suppose C# 6.0 is worth mentioning :).
Airbnb nightmare renters leave Calgary home trashed
They specifically called out the use of bluetooth keyboards and mice in the phone during their presentation, so that's a given. Since you're essentially running the full windows now, I don't see why remote desktop wouldn't work with the metro version currently present in their store either.
This is another c++ library which (I think?) is pretty similar:

http://ldionne.com/hana/index.html

http://ldionne.com/hana/group__group-concepts.html
It wouldn't surprise me at all if static typing was capable of offering useful help. If it can't today, I wouldn't be surprised to see us make progress over the next few years. I think interesting conversations could be had about why this problem is harder to model using type systems than other problems are. Where I get confused is when this is used as an argument against using static typing in general. By analogy:

“Hammering nails is probably one of the most basic things you can do as a carpenter. If lathes aren't capable of offering useful help, then something is very odd.”

I don't mean to mock, but it doesn't seem odd to me at all that not all tools are good for all purposes. What seems odd to me is trying to argue against the use of a tool that has proven itself in many different situations by pointing out that there exist situations it isn't useful in. Sure, that's true, but so what?
This is a great series. I also highly recommend Benjamin Pierce's book "Basic Category Theory for Computer Scientists" if you are interested in this

http://mitpress.mit.edu/books/basic-category-theory-computer...
This isn't really a problem with the type system. Basically, the author figured out that the normal equations with Vandermonde matrices (https://en.wikipedia.org/wiki/Vandermonde_matrix) are horribly ill-conditioned and a terrible tool for interpolation. Though, I actually like the authors example because it's a nice way to give physical units to what sometimes causes ill-conditioning. But, in short, I don't think there's anything wrong or complicated about a type system tracking units in this case. Vandermonde matrices will absolutely have radically different units in their elements, which is a huge disincentive to use them.

Now, what's a better way to interpolate a series of points? Basically, use a better polynomial basis. In the authors example, we use the polynomial basis [x 1]. Or, in the higher order case, [x^4 x^3 x^2 x 1], etc. A better way to do this is to use a polynomial basis that's more stable, such as Legendre, Chebyshev, or Bernstein polynomials. They all have different properties, but if we look at something like the second order Bernstein polynomials, we have [(1-x)^2 2x(1-x) x^2], we notice that each polynomial has the same units. Then, if we do form the normal equations, we don't have such a huge disparity in the units of the elements.

In addition, forming the normal equations are a terrible way to solve these problems. Basically, if we want to find a least squares solution, we're much better off using something like a QR factorization because things like Givens rotations are much more numerically stable. Alternatively, we can use iterative methods like LSQR or LSMR, which also compute the least squares solution without explicitly forming the normal equations and thus avoiding the condition number problems.

Finally, even if someone wants to be neurotic about units, which is generally good practice, but a pain to do every time, we're almost always better off doing dimension analysis at the operator level and not the element level. For example, if I was solving the heat equation, I might form a matrix with the finite different operator or a stiffness matrix. However, I would know that the stiffness matrix, in this context, would have units of L(m^2/s,K/s) where L means that we have a linear operator from something with units of m^2/s to K/s. Technically, we can work backwards from these two to see that our elements have elements of K/m^2, but that's not as useful as the operator formulation. And, I claim this because if we write things out in the operator form, it makes it easier for us to figure out the units of the adjoint. In the simple case with the L^2 norm, we know that the adjoint has units of L(K/s,m^2/s). However, if the inner product we use has units, this answer will absolutely be different. Personally, I find that easier to track when I write things out like this.

Anyway, I do think dimension/unit analysis is important, but static type systems are sufficient to track it and it's really not too bad to do so.
Depends how they define "use" - as this article[1] points out "Technically, tons of people use Google+, since logging into it gives you access to Gmail, Google Drive, and all of Google's other apps."

If the numbers there are right and only 4-6 million people are using it as a social network it isn't very surprising that Google would be "giving up on pitching Google+ as a social network"

[1] http://www.businessinsider.com/what-happened-to-google-plus-...
I generally feel that solving problems with software is the easy part.

Solving in the way that is extensible, maintainable, bug-free as possible, and efficiently is the important part.
> It seems you are more concerned more about the software development experience and in that regard you see benefits. But I'm more curious and concerned about the benefits in solving real world problems.

I don't see the distinction.
It isn't released with VS 2015 and stuff... But in that line, i could also mention VB 14 ;)
Why Microsoft’s Strategy for iOS and Android Apps Is Genius (And Insidious)
Well played, Microsoft. Well played.
True that, TheVerge => Apple fanbois.
They should probably note that UTD does not have a football team, so the cheerleaders wouldn't cheer at all for them. Though we do have a nice chess team and cheerleaders for them.
The software development experience is the real world problem. Programming languages are force multipliers. My argument is that statically typed programming languages are force multipliers with bigger coefficients.

I doubt that Haskell would be more beneficial for Ericsson, because Erlang was literally designed for their exact use case. I would be more inclined to pitch Haskell to the >99.9% of companies who don't have battle-tested custom programming languages.
The CLR offers a lot of functionality that the JVM doesn't (see Someone123's comment) - which in my opinion makes is it a lot more compelling - so in that way it is more sophisticated than the JVM.

A reference to back your statement up would be great... (i couldn't find a good one quickly). Are you aware of the capabilities of the CLR's next generation RyuJIT? What you say is at odds with what I thought, but I'd love my perceptions to be corrected if they are indeed incorrect.
It isn't just Android anymore. A project I worked on has been getting a lot of reports of layout issues on iOS for alternate browsers like Chrome. We have no issues with Safari but the alternates seem to throw some wrenches in the system.
Show HN: Deck of Cards – A playing card API
One tool I used a lot recently is vegeta [1].
It can be used both as a cli and a go library.
You can generate html (with nice plotting), csv or json reports and launch distributed attacks.

[1] https://github.com/tsenart/vegeta
From the looks of it, users who subscribe to the lifestyle of Tablets/Mobile + Sharing Economy.
If I had to choose one and stick to it, it would be Coffee. I usually go decaf.

However there are some nice herbal teas that are great for late at night.

Due to not consuming caffeine on a regular basis, I can get a real kick from a real coffee it if I ever need it. However it is rare that I do.
I can answer questions either here or on VCBlog.

EDIT: Specifically, questions about the C++ Core Language and Standard Library, which is what I work on all day; questions about other topics are welcome but other MS people will have to answer them, since I am mostly clueless about other areas.
Neat service!

But, why does something saying it is p2p always seem to have some centralized dependency? In this case, it's GitHub auth.

It seems that the initial authentication of you are who you say you are could be done via transferring a key to someone- by email, flash drive, whatever- and then after that, as long as you could connect to them, you could talk to them- with no other dependency except the network itself, which may involves a lot of significant dependencies, or may not, e.g. a cross-wired cable.
Well, maybe getting an early payout caused them to lose the hustle. They turned the engine off, handed the keys back to the investors and walked. It would have been harder to shut down the company if they saw 0 upside, and all their sweat equity evaporated.
And one of the reasons that this isn't having the desired effect is that companies are holding on to far more cash than normal and aren't investing it on future growth.

Australia had a much better idea at the beginning of the GFC, they paid $1000 directly to anyone who had paid at least $1 in taxes the previous year; poor people aren't afraid to spend money...
That's a hard question that misses the point.

If you're comparing cryptocurrencies and currencies issued by nations you're comparing apples to oranges. You can't make realistic assertions about bitcoins based on currency--they're just too different.
I'm cynical about it ever moving forward.

These acts often get introduced just so the sponsors can say they introduced a bill.

(This is why, for example, people introduce bills right before going home to stump, knowing it will achieve nothing, but enabling them to say "Because i care so much about you guys, i just introduced a bill in congress to fix this!")
feelings.blackfriday is still up though
Maneuvering boards and paper charts.