skysight-inc/HackerNews huggingface dataset:
People use Go to write "infrastructure services", such as Rest APIs, caches, proxies,queues ... and command line tools. That's what Go does best since it requires minimal investment upfront( the language is tiny, the standard library has a lot of network oriented code...).

Whether one can effectively write a classic website with complicated HTML templates and web forms like Rails,JSF and co allow is however questionable since Go type system lacks of expressiveness. Go fans answer is "use client side javascript" which is ironic since javascript is the antithesis of Go in terms of design.
How about a platform centered around Linux containers (or maybe one of several OS containers or VM images), as the repository image?

I'm not saying the work is zero now, but maybe we can get there. If a researcher is developing on a platform where their repository is expressed as a container-like image, then they should be able to publish it for anyone to run exactly as-is. The container repo includes the data, the operating system, and any languages and libraries, with an init system that optionally builds the results.
Reproducible is a major issue across science in general, but the difference is there's no reason why one shouldn't be able to easily re-run a defined analysis on a more recently updated data set to ask if conclusions drawn previously still hold. I actually published a side-project paper on this (in biological sciences) last year [1] - what was scary was there was such a lack of discussion surrounding this idea, despite the fact that large databases of biological data are CONSTANTLY changing and updating.

[1] Holehouse, A. S. & Naegle, K. M. Reproducible Analysis of Post-Translational Modifications in Proteomes-Application to Human Mutations. PLoS One 10, e0144692 (2015). (http://journals.plos.org/plosone/article?id=10.1371/journal....)
Couldn't we all just assume that the reproduction procedure starts from a fresh Ubuntu VM?
It's certainly possible to do a lot better than GCC's inline assembly setup, which has proven time and again to be a usability disaster that positively encourages writing subtly buggy code.

Microsoft's C compilers do a much better job with inline asm by being more conservative in how they allocate registers around the asm (https://msdn.microsoft.com/en-us/library/k1a8ss06.aspx).

CodeWarrior's PPC compilers remain the ne plus ultra of inline assembly ergonomics, and it's a goddamn shame that LLVM has chosen (for pragmatic reasons) to follow GCC's mediocre lead rather than pursue something akin to it.
The same people who guard the guards
The other two talks from that repository are also interesting: http://research.microsoft.com/en-us/um/people/simonpj/papers...
> - debugging is way harder. Hope you like printf.

Can't you use gdb with Go? https://golang.org/doc/gdb
> All of them are flawed, either in their mathematics or assumptions (that will most likely never be true, like assumptions of linearity and your data set being on a manifold).

Although I can see global linearity being unlikely in most cases; why is local linearity unlikely?
How Is the Economy
I'm curious - the author talks about the New Years sex assaults then says it was reported incorrectly, and even quotes something. Is there an article that sets it straight? Wikipedia's article has it that more than half of the crimes on New Years were done by refugees or illegal immigrants.
How about some reciprocation on immigration laws as well? How fair and free can this agreement be if the immigration flow in one of the directions is so much easier than in the other?
The problem here is (EDIT: IMHO) a social one. The question is not "Why does nobody USE NixOS?", it's "Why does nobody WANT NixOS?"

And the answer to that is that the incentives are set up such that reproducibility is a waste of time. As a CS researcher, I want to be idealistic. But the field is competitive and I'm not sure how much idealism I can afford.

There's considerable effort to bring artifact evaluation into the academic mainstream (I'm actually helping out at OOPSLA this year [1]), and I think this is a good way forward.

[1] http://2016.splashcon.org/track/splash-2016-artifacts
As long as the employee's enter into the agreement with full transparency that this is how the compensation works then it's completely fair. This isn't the result of some kind of secret court deciding that it's how a company should pay employees. Adults are consenting to this arrangement.

There is only so much "fair" to be had in business. It's not like there aren't 1,000 other "mini ubers" that want to own the market Travis and Co built.
CISC has always been much nicer to hard write assembly code in than RISC is. The only reason RISC was able to take off was that most code started to be generated by compilers rather than through assemblers.

Given the advance of modern computer architecture that the author talks about many of the old advantages of RISC no longer apply. If you're going to be doing out of order execution the the extra effort in implementing some extra instructions really isn't important for application processors.

The big advantage that RISC has these days is that fixed width instructions are easy on the decoder. You can also have variable width instruction that use UTF8esque byte marking to make things easier on the decoder but x86 doesn't have anything like that. But then again separating them entirely in the ISA makes thing easier on the designers.

Oh, and it's a bad idea to touch memory multiple times in a single instruction on a modern machine but Intel's optimization manuals warn you not to do that and compilers abide by those warnings. If you want an ISA feature that's really hard to design into a high performance uArch then there's indirect addressing but unlike most CISC ISAs x86 managed to avoid that one.

The advantages of RISC might be overblown in some sense, but there have been a lot of new instruction set architectures developed over the last 20 years when the RISC/CISC debates were raging. Many of those have been weird in various ways but almost all look a lot more like RISC instruction sets than CISC instruction sets and it's not just because people are following the herd.

And I've got the sense that my inside view of the issue is underestimating now advantageous RISCishness is. When ARM had the opportunity to redesign their ISA when the transitioned to 64 bits they simplified their ISA quite a bit and increased the number of registers from 16 to 32, basically making their ISA much more similar to a classical RISC design. I don't really understand why they thought that going that way was an advantage but it seems like people actually involved with designing these things instead of just thinking about them in their armchairs still think that RISC has a lot of advantages.
Yes anyone alive today could discover Newtonian physics, however Newton is famous because he was the first.

There probably are 13 platos in Attica, they aren't famous because they weren't the first to say what Plato did.
Make a profile on Toptal, LiquidTalent or Hired. Working on projects is the way to go till youve figured out your dream job
I miss Eli's salvage shop. I seem to recall that it closed shortly after I graduated and was a treasure trove of random electronic and mechanical crap. I suspect the land underneath it quickly became far more valuable the stuff inside it.

I just found another branch of Eli's business that's still open. I may have to check it out and see if they're anything like what I remember.
It's sort of funny that ARM, which is really the CISCiest of the old RISC instruction sets, has ended up being the most successful one.

http://userpages.umbc.edu/~vijay/mashey.on.risc.html
The estimated benefit of TTIP is 400,000 jobs and 0.5% GDP for the EU. Not much.

Apparently, the few selected MoP in Germany who were given access to the drafts had a few hours to look at a 1000+ pages, in English legalese, with a dictionary but no internet access.

Apparently, the drafts were full of certain spelling errors. The assumption was that they were personalized and injected on purpose such that photographs could be traced back to the origin.

Source - German media coverage.
> The fact it does not have hipster dev approved status is also an added bonus.

What are you talking about ? the hype is strong with Go. So strong devs are persuaded they need to use Go at all cost then complain Go has a garbage collector ( just go go-nuts mailing list).

So strong there are countless articles on the net about "How we moved from X to Go..." just like in 2007/8 with Rails.

> The minute we see a bloated testing suite with yet another DSL, for Go, we are in trouble.

GoConvey and co ...
I think it really matters that the guys behind the Pandora/Pyra are open source enthusiasts, and not only can they talk the talk, but walk it too.. I mean, the thing with the Ooya was that there were just Too Many Suits involved, trying to cash in.. in this case, its techies driving the ship, and well .. it shows! The products are awesome! :)
I wonder though, maybe non-overlapping sets of bugs are actually better for science? That is, it could avoid systematic errors. Of course, one bug free implementation is clearly better!
If that is true, then fMRI studies of V1 in humans are totally screwed. You show them anything, and the unconscious effects overwhelm the stats software and you get 'hits'. As the article goes into, you better be damn careful with your controls and your p values if you want to actually do anything useful in fMRI. If you want to just publish papers, it seems like a great field, but there seems to be better ways to just make a paycheck.
What happens to you if you fall into a black hole?
My interpretation is that he's basically calling out all of society as a kind of consumerism.

The > 40 folks spend most of their time crafting the illusion of a pursuit of meaning ("Hey, why don't you try my product or my religion or my self-help book or my investment plan or why don't you sit down and listen to what I have to say?") The < 40 folks spend most of their time experimenting with or purchasing or rejecting all the ideas/products that the > 40 folks create.

The author calls them "meaning games" because he asserts that meaning is not universal truth but more of a cultural trend. So it's a game because you never actually achieve meaning. You just play the game and constantly think you're about to achieve meaning. That creates a kind of enthalpy that perpetuates society.
The second you launch a Go routine, gdb becomes useless.
In the positive: whatever captures the mind and imagination, anything that makes you say "this is the future!".

In the negative: whatever outrages and makes you say "this must change for us to move forward!".

Basically anything that charges you with emotion that feels "big".

I think the author would agree that Elon Musk, Donald Trump and Steve Jobs are some of the biggest recent makers of meaning games.
Certainly, golden handcuffs are a much less pressing concern than actual handcuffs that the less fortunate have to deal with. But this seems to highlight that no matter how much you're earning in Silicon Valley, you're still on the lesser side of the asymmetry against the founders, VCs, and management that run this town.
Here are a few more applied papers/articles:

+ Hulu: http://tech.hulu.com/blog/2011/09/19/recommendation-system/

+ Amazon: http://www.cs.umd.edu/~samir/498/Amazon-Recommendations.pdf

+ Spotify: http://www.slideshare.net/erikbern/collaborative-filtering-a...
That's a strong claim. While I'm sure the sentiment is understandable for some fields of academia, others have produced significant results that have been adopted by the industry, sometimes very quickly.

Machine Learning has a lot of theoretical results produced by academia, but the more practical techniques (decision trees, SVMs, neural networks, etc) also all came from academia. The engineers scaled the algorithms to run on bigger datasets, but the initial work is still driving those systems.

Graphics research has seen comparable contributions between industrial research labs and academia. Sure, a higher proportion of papers from academia don't end up practical, but the number of papers that are very practical makes that quite irrelevant. It's to be expected since you can't predict what works in advance, and industrial research labs just don't bother publishing negative results, not that they don't get any.

Many programming languages and compiler techniques came from papers.

I could go on but you see the point - it depends on the field.
The MacBook Returns
Video Liveness Verification for Mobile Devices Using Built-In Motion Sensors
Further, I believe that is an option (requirement?) when paying your renunciation tax on abandoning US citizenship. You're required to pay taxes on all your assets as though they were liquidated that day, and to cover the case of illiquid assets such as employee stock options. [1] In this case they will take 30% of the value of the shares at time of disposition. This is something employees holding ISO and NSO could be allowed to opt into on exercise when there is a spread between FMV and strike.

[1] http://www.renunciationguide.com/expatriation-and-tax-detail... (Tax on deferred compensation and non-grantor trusts)
I've been met with "but if you quit without having vested all your shares, we'll have to pay you back at FMV!" - and this was a CEO that said this. Staggering ignorance w.r.t. equity.
It's almost like cities (or more specifically, voters in municipal elections) don't realize that the only sustainable way to reduce prices is by increasing supply: http://www.amazon.com/TheRent-Too-Damn-High-Matters-ebook/dp.... We know what to do, we have the technology, and we only lack the political will to make it happen.
>I'd like to have a go at controlling a wifi quadcopter with it though :)

I have two Pandora, and have done just this, albeit BTLE instead of Wifi (Edit: see http://flexbot.cc for a compatible device)! The nubs are superlative for the job - quite high resolution - and very ergonomic. I daresay the Pandora/Pyra are a perfect reprogrammable wifi controller for RC hobbyists .. I've considered trying to wire up a FrSky interface or something, but never got around to it .. maybe when my Pyra arrives I'll have another go.

BTW, I ported CRRC-Sim to the Pandora, and its really, really nice. Probably the best RC-sim platform I've ever played - having the nubs, and the screen all integrated into a handheld portable controller .. really, really nice! Hope you enjoy the experience too - watch for the CRRCSim port for Pyra, when you get it!
> Nearly every language has continued to repeat Tony Hoare's "billion dollar" mistake of allowing null to inhabit any type.

Perhaps I was unclear. I could not agree more with this assessment (see link to my blog post in sibling).

I was merely commenting on Swift's choice to do it in a (to quote the OP) "clever" way, rather than a general one like Rust or Scala.
True, but this is research, not business. Getting 2 programs that don't agree, even when your post-doc has cleaned up all the bugs, is the point of reproducing the research. Ideally, you want to know if you both ran it the same way so you know it's 'true'.
Could you please provide the link?
It's arrogant to assume that evrybody who wants this shouldn't need it because their need are simple. I know of very few places that have a single CRUD app.

But hey, maybe not everybody needs this; there are a huge number of people who do though and they benefit immensely.
Alternately it could be seen as evidence that PowerPC assembly syntax is a mess. For anyone who doesn't know, the way it works with typical PowerPC assemblers is that instructions take unadorned numbers for all arguments, and determine whether they refer to registers or immediates based on the instruction: "li 1, 2" sets R1 to the immediate 2 ("load immediate"), while "mr 1, 2" sets R1 to the value of R2 ("move register"). And then because people find bare numbers confusing, you have includes that do "#define r1 1" or equivalent for each register, so when writing assembly manually you can write "mr r1, r2". But because these are just dumb macros, nothing stops you from writing "li r1, r2" - the assembler will just macro expand r2 to 2 and treat it as an immediate!

Other architectures have the R prefix as an intrinsic part of the syntax, so if you write R2 in a slot where the instruction requires an immediate, you'll just get an error. If PowerPC did that, you'd still need to remember the right inline assembly constraint letter for GCC, but getting it wrong would 'just' result in an unpredictable compile error when the compiler decided to use r0, not silent misbehavior.
One nit: management weren't maximising shareholder value -- Makerbot seems to be tunneling into the ground.

Rather they were actively strip-mining all possible value and cash flow from a rapidly decomposing corpse.

The question remains whether or not 3D printing is itself a viable long-term business. Robert Gordon in The Rise and Fall of American Wealth points to it as among the few bright spots, and I'm reminded strongly of Cory Doctorow's Makers. But ultimately these devices are almost certain to be built by existing (or newly emerged) large toolmakers.

I still see the primary value as being rapid prototyping. Once you've got the design you want, it's really hard to beat production-at-scale economics.

As for shakeout -- the US auto industry ballooned then consolidated massively in its early days. Yes, if you'd bet on GM you would have won big (through the 1960s), but if you'd bet on any of numerous other firms, you'd have lost everything.
Yet another lock-free SPSC queue in Rust
I hope I'll still be able to climb trees when I'm 40.
too bad dota 2 is a better game
> What he is asking about is neither openness nor reproducibility (which are, indeed, very important). He is asking that researchers produce code that he can put into production.

That is 100% not what he's asking. I don't know how you could even interpret that as what he's asking.

He wants to be able to take your research and run it over an updating dataset to verify that the conclusions of said research actually still apply to that data.
Or perhaps is a temper tantrum that manifested in infosuicide.
>"As long as the employee's enter into the agreement with full transparency that this is how the compensation works then it's completely fair."

That's literally the logic that was used to justify indentured servitude.
I'm not trying to argue the wrong-headed institutional incentives are irrelevant. It is true that once one gets over the learning curve, Nix* gives you artifact reproducability for free, but that still leaves the problem of the learning curve, and caring about reproducability in the first place.

Thank you for yours, and others', work making artifact evaluation a priority. Concurrently, people (including myself) are trying to do something about that learning curve. Hopefully both efforts will massively succeed within a decade :).
> debugging is way harder. Hope you like printf.

You have other options: https://github.com/derekparker/delve
> In an ideal world with enough resources, every lab would have technical staff to help with this process, but most researchers unfortunately don't have bandwidth to spend on this problem.

And they shoot themselves in the foot constantly by not prioritizing non-crappy software.

Then think it's normal that a new student needs months of close support before they can start doing anything interesting. They think it's normal to spend weeks trying to get bitrotted code running again, or just give up and throw it out losing months or years of hard-won incremental improvements.

I'm not even talking about supporting reproducibility by outsiders -- they can't even achieve reproducibility within their own labs, because they don't follow practices that are baseline in industry (version control, configuration management, standardized environments, etc).
Books, religion, university research, fashion trends and charities. Wars, lynch mobs, cartoons, traditions, village fetes, school plays, professional plays, business strategies and restaurant reviews. Newspapers, television stations, YCombinator, football teams and new political parties. Anything to which a multitude of younger, stupider people can claim allegiance for which to be nice or mean to their peers.
seems like engineers are learning how they get screwed via the stock game
I'm talking about the openness of the papers and code, which is the subject of the article. You are talking about something different.
The process of design digital circuits will depend of course from company to company, depending on the need of higher performance modules. But the fundamental of digital design is that everything is done using Verilog and the change of process node is completely transparent.
How to succeed at networking
If your paper has results, it has code of some sort which can be put into a github repo.

That's the bare minimum. If you don't know how to make code agnostic to file paths or dependencies, that's too bad, but fortunately a field practitioner picking your code up will know how to work around those issues. At least they're not starting from scratch on trying to rewrite your code.
Bill, it's interesting to read your reply and see your worldview. It looks like you've had way worse experiences with employers than with governmental entities, and you see living with the former way worse than living with the latter. I know people who see the world in exactly the opposite way. They'll rail all day about how the government affects their lives and constrains their choices (and they have very concrete examples) yet they are happy working within constraints at work and see more opportunity there than they do in their governmental dealings.

Realistically, they have options in both spheres, but they only feel one oppressively and they tend to assume that everyone else does too. Where power is exercised at work they are okay with it - they recognize it as part of the system and don't feel like cogs.

I wish you the best in finding new glasses to see the world of work through, just as I wish the same for people I know who are fighting governmental oversteps. The key thing is - it's not all bad. There is badness out there but structure is not determinative. Look for happy people in any system. You'll find them. What we look for in life does affect what we see, and what we create. Best of luck to you.
Plato and Aristotle were early philosophers relative to us, but they were also the product of a long oral tradition that Plato was able to take and transform into what we now consider philosophy. We have fairly complete records of their work, but only limited fragments and secondary references to those that came before them in comparison. Even the catch-all term "pre-Socratics" highlights this difference.

That alone would account for some portion of Plato's influence, but that does a great disservice to his work. In every sense of the word, it was revolutionary. The word "great" gets bandied around a lot, and this article seems to struggle with it, but if you consider it in terms of influence, then Plato's position/ranking is unassailable. Nearly every western philosopher since has been influenced--directly or indirectly--by Plato's legacy. Just as you can't read Plotinus without a thorough understanding of Plato, even today there's an implicit assumption in philosophy that you have a pretty decent familiarity with Platonism.

Plato's legacy isn't just one of ideas; it rightly includes the very field of philosophy as we understand it today. For that reason alone, he is considered a titan of the field.