skysight-inc/HackerNews huggingface dataset:
Alejandro Aravena's open-source plans for low-cost yet upgradable housing
Some small part of me was hoping this post was a little deeper than Netflix.
Happiest Minds Saves $175,000 by Going Paperless
Sounded like it's straight out of The Office.
https://twitter.com/mathewi/status/716771686482202625

> The Editor in Chief of Süddeutsche Zeitung responded to the lack of United States individuals in the documents, saying to "Just wait for what is coming next".
Let me turn thing around then. Are you proposing there's zero value in having experience running a non-trivial business. Are you saying everything there is to learn about business can be had by reading a book, reading some stuff online and through observation?

If that were the case all MBA's and all Economists would be the wealthiest people in the world. That this is not the case should make everyone reflect a bit.

I take most everything I read from economists as total and utter bullshit. Including what they have to say in favor of high min wage. As a group their performance sucks. All they are good for is writing books nobody wants to read.
We'd like to introduce you to Thington
There are multiple open source implementations of it available, written in hardware description languages. You can program those on to an FPGA or even make an ASIC if your budget extends to that. The http://www.lowrisc.org/ lowRisc guys are working on an ASIC if you need a real chip.
Baked-in as part of the language; the query language is where it stands out. I'll get you examples of that.
Great point. Thanks for the link!
Drug Delivery Market (Targeted, Advanced) Worth $319B by 2021
I actually double-checked to make sure I wasn't on Yudkowsky's site.
1. College is useful for education.
2. College is useful for meeting people.
3. Most of the time and money spent attending college is used to meet people, and very little on education.

Let's just admit those three facts, and then we can start to have sane policy discussions.
You're not, and you beat me to writing the same comment by 10 hours.

Writing is the problem of communicating ideas, and doing to to a sufficiently prepared audience, effectively.

The problem with stunts such as this -- and there are others, the "if you stop writing for 5 seconds your text starts disappearing" demo a few weeks back comes to mind -- is that they confuse the medium with the message.

Yes, it's possible to have confusing writing on account of unfamiliar terminology. That's a frequent problem with many Wikipedia articles, or much academic writing of the past few decades (older works -- say, 1950 and prior, to the 18th or even 17th century -- are often far clearer).

But the problem most often isn't just the vocabulary, it's the structure of the writing. Pop open a book of Darwin or Adam Smith (I've been reading both) and turn to a random page. Once you get over a slight old fashionedness of the writing, the thoughts are clear.

It is impossible to tell a narrative clearly if you've not organised your own thinking about it.

I've been doing a lot of thinking ... well, about a lot of things. One of those topics is of data and narrative, and the difference between a dry factual presentation (say, a data table, or a simple list of events) and a story which weaves these into a consistent whole. Our minds typically work very well with narrative, sometimes too well, as false narratives can be constructed. But the best presentations I've encountered include both solid facts and a story which ties them together. Finding an author who does this well and with skill is truly impressive.

And the good ones expand your vocabulary. Another point, and one to keep in mind.

There's also Einstein's dictum: make things as simple as possible, but no simpler. The same applies to language.
My literature review process
Very cool paper.
This piece has nothing to do with programming. The problem is simply with jobs, and a common career mentality, which goes something like this: "If you do good work, your career will take care of you. If you weren't taken care of, then it's the career's fault."

Nothing could be further from the truth.

There are two things that boost careers. The first is the employer. Your employer determines your success through their success, and so your fate truly is in their hands as long as you are just doing work that is provided. Hence successful companies produce successful employees with successful careers. But to be good at this, you need to be a visionary employee. You must be able to tell apart the good entrepreneurs from the idiots. You need to become a good follower, not worker.

The second is overreaching your job's boundaries and overachieving. This is what catches a lot of people, because it's being non-complacent when that's all that is being asked of you. It's the ability to demarginalize yourself because jobs are maginalizing, not people. If you fit a better job, your career will take you there. Either a good employer will recognize your worth, or you will recognize the worthlessness of your employer and move on.

I have this extremely strong hunch that we all rise to our potential. And when I see someone complaining of how little they've accomplished, in more cases than not, they will make excuses, talk of regrets, and list all the bad luck and negative circumstances that surrounded their demise. Rarely do I hear them admit how bad they sucked, or how bad they compromised, or how they let it happen because they didn't act otherwise.

"I am still just a programmer."

That's you marginalizing yourself. Mark Zuckerberg was just a programmer. But you become more not by fitting tighter into that cast. You become more by breaking it. Eventually people will stop calling you just a programmer. And if that's your employer, you either just got promoted, or fired.
Or, it could be an indication that they've had a pretty good career with only trivial regrets. That's how I read it.
Calling something a fad or saying it is too complex to be solved is also part of the willful blindness people seem to have on this issue.

I think it is all part of a trend of outsourcing ownership of your health to doctors and hospitals and the pharmaceutical industry, all of whom have financial disincentives to really fix this issue. Nassim Taleb's writings on iatrogenics was really eye-opening in this regard.
It's worth noting amidst all the debate about whether it's feasible or worthwhile to offer older versions of the game as server options, blizzard has already done this for a long time with Diablo 2. You could (can still) choose to play classic or expansion on the legit battle net servers, and both had ( possibly still have ) vibrant communities. So it's not like this would be particularly novel as an idea to them, I'm surprised they haven't done it with wow already.
In the example above, if Employees are only in one Department and suddenly you have the situation where an employee is in more than one department, you don't need to create a link table to model that. In other words, you don't need to think, "Is this a one-to-one, one-to-many, or many-to-many relationship?" before you start, it can just emerge as you go.
They have like 1 woody Allen movie avail for streaming. Enough said.
Also cf. the Loop/Blinn chapter in GPU Gems 3 http://http.developer.nvidia.com/GPUGems3/gpugems3_ch25.html
I used to work for a private server that shut down in 2010 (Phoenix Wow). It was my first exposure ever to a big code base, teamwork with version control and some reverse engineering. The "cores" were usually forks of the Mangos project (TrinityCore, R2) written in C++ and pretty unstable (uptime was usually only hours). If Rust existed in that era it would've been much better.
The problem legally is Blizzard is going to have an extremely hard time proving a private server user downloaded an unauthorized copy of WoW from a third party rather than from Blizzard themselves when the version they are playing was the live version.

There are a lot of nuanced stipulations involving the legal distribution of the Wow client:

* The game has always been distributed using peer to peer seeding, such that Blizzard has never been the exclusive provider of game data, they just told users where to get the data from.
* Blizzard has in several cases (mostly early on) recommended users download whole copies of the game from third party websites like fileplanet back in the day when the servers were overloaded with players updating to new versions of the game.
* Blizzard has always made WoW available as freeware, and has never auth-gated the download pages before the Battle.net launcher. Old versions of the game used to have installers hosted on Worldofwarcraft.com that anyone could download with a URL regardless of being signed in or not, and users could make accounts without buying the game anyway.

This isn't some classical "game developer sells copies for money and people were sharing copies without permission". Today, anyone sharing WoW clients through torrents is obviously violating blizzard IP, but the distribution methods of the client in the past, combined with the fact no player needed to have an account or paper trail showing they had a legit "claim" to the game to have the client, means they cannot realistically argue that anyone playing a private server also violated their copyright on the client. They could have easily obtained it legally, and just changed the home server to a private one so it never updated. That is a violation of the ToS in the game, but not an IP violation, and ToS are civil matters that are often not even upheld in court when tested, and WoW has a fairly grandiose ToS if it were ever put in a real trial.
(0) Regarding Schema-on-Need, let's assume the following scenario: When I begin developing an application, I'm not quite sure what my data model should be, so I insert data into the database without defining a schema. A few months later, I have a clearer idea of the data model I want, but my existing data set doesn't fit exactly in this model. Do you provide some way to “fit my database to a schema”?

(1) Could you provide a proper specification of Brodlist's query language? Your example is too small to convince me that Brodilist's query language can express everything SQL can express.

(2) Could you provide an example of a nontrivial application (like a small ERP module) that illustrates how Brodlist is more convenient to use than a traditional SQL DBMS?
Aligning Text Smartly in CSS
It irritates me too (along with a lot of other trendoid jargon) but these newfangled kids here seem to all use it consistently.
One barrier I see here is that the venue generally controls the available vendors in most cases. They hold all the cards and set the rules.
1) Thanks!

2) No one was interested in the technology as powering a semantic web search engine. I think Fred Wilson said something to the effect of, "Who would want this?"

3) It's pronounced 'broad list'.
Videos that you like are discoverable by your friends even if it is not viral

Various startups have tried to do that for traditional content (getglue being the best known example), and, while quite fun, they're not good for surfacing independent or 'unpopular' content. They tend to just confirm what's already popular. If this feature is going to help with discoverability it'll need to do more than "likes".
Rendering images for Retina or any high DPI screens
Like you mentioned there are other startups doing this, and some of them are farther along eg. http://dispatch.ai/

what will Zippy do to differentiate from those robots? Why will Sprig and SpoonRocket buy a Zippy rather than a Dominos or Dispatch robot?
How to set up cron job for PeepSo? What cron job setting shall I use?
The pulp platform has taped out a RISC-V based microcontroller, but I don't think they have plans to sell/really distribute any asics unfortunately.
Sigh, I know that it's easy to paint an outside group of programmers as incompetent fools who choose to ignore the Obvious Solutions(tm), but how many times must this be discussed before people realize that distribution package managers cannot replace the language-specific package systems? Language-specific package systems have requirements which distribution package managers like apt/dpkg, rpm/yum, pacman etc do not fulfill.

Just to name a few requirements:

- OS-independent. It's great that your package manager works well with your OS, but as a developer I want to target all my users, not just one OS. Nor do I want to make a bazillion packages for different OSes which takes a lot of time. I know that a lot of people have this attitude of "no, make a package for MY OS, I don't care about other OSes or how difficult it is for you", but this sort of "my way or the highway" unemphatic attitude is unhelpful. Clearly developers have chosen the highway.

- Ability to release outside OS package management schedules. I don't want users to wait half a year for the next distribution release before they can use the latest version of my app/library. Yes, some of you are using rolling release distributions, but that doesn't help developers because not all users are on rolling release distributions.

- Non-root installs.

- Ability to install multiple versions in parallel. RPM and DPKG do it by suffixing a version number in the package name but this is kind of hacky, we need real support.

I'm sure some package managers (maybe Nix? Guix?) can do the above but they came too late, there's too little momentum.

So why didn't Ruby/Node/Python etc developers adapt RPM/DPKG/etc? A few reasons include:

- Arcane, or complete lack of, documentation. Try to make a Debian package. It's a nightmare: the documentation is scattered all over the place, throws arcane terms at you as if you should have known them for a decade, and doesn't explain basic concepts very well.

- Many OS package managers are written in C. Many Ruby/Node/Python do not know C (or know it well).

- Lack of understanding of the problem domain. Here I give you some credit. When writing language-specific package managers, the authors probably did not fully understand the problem domain in the beginning. If they did, they might have looked at OS package managers more (or at least learned more lessons from them). But the aforementioned problems still stand.

Don't even get me started on Make. Make has its own set of problems.
It reminds me of an old joke when Soviet Union tried to decrease alcohol consumption through rising alcohol prises:

When father came home, his son announced that vodka would cost 50% more and said:

- Father, does it mean that you are going to drink less?

- No son, it means that you are going to eat less.
Each version of WoW in general has completely different mechanics. Between different versions of the game they have changed effectively everything. If you were to play the live version of the game today and compare it to vanilla, it is much more different in both mechanics and technical implementation than a lot of standalone independent games have been by significant margins. Just think of Doom 1 and 2, or more recently Wolfenstein: The New Order vs The Old Blood, or CoD Black Ops 1 and 2. All those pairs of games reused game assets and engines almost verbatim, with much more similar or identical game mechanics compared to how much Blizzard changes between versions.

The argument these players make is that the version of WoW today is not the game they bought or played in 2006 at all, and by every metric you would measure "difference" in besides "is this the game Blizzard entertainment today calls World of Warcraft?" it would be measurably more different than dozens of games we consider independent products.
There are actually a number of really good PDF readers, in the form of general eBook readers. E.g., FBReader and PocketBook, both Android apps (FBReader is also available for other platforms).
It might be that the movie studios feel threatened and have decided that they're not going to help Netflix replace them anymore.
http://www.pulp-platform.org/
Library of Congress did change DCMA rules last year to allow consumers to modify an abandon-ware game to bypass authentication servers that no longer exist. However, they specifically excluded MMO-like games, only covering "video games that can be played by users without accessing or reproducing copyrightable content stored or previously stored on an external computer server". Still, it's at least acknowledgement that abandon-ware is a legitimate form of media that rightfully deserves preservation.

http://www.wired.co.uk/news/archive/2015-10/28/dmca-game-pre...
A few ARM CPUs have not a JVM, but the ability to accelerate a JVM by directly executing Java bytecode (Jazelle DBX).

"The Jazelle extension uses low-level binary translation, implemented as an extra stage between the fetch and decode stages in the processor instruction pipeline. Recognised bytecodes are converted into a string of one or more native ARM instructions."
I talked to a lot more black programmers in meetups in Atlanta than I have in San Francisco (I'm not American and was a visitor in both places) & was surprised by how biased against the former people in the latter were, despite evidence to the contrary.
The post successfully made the point, evidenced by it evincing a deeper feeling in you.
Oh shit boy, these other comments schooled you!
At $5 per month, isn't Firebase (https://www.firebase.com/pricing.html) a better option? Static hosting, CLI deployment, plus the DB itself.
> For PHP, you upload index.php

That's not inherent to PHP. It's just how most hosts are set up. The only major difference is the order in which things are done (and the necessity to have shell access to the host.)

The real comparison is this:

# PHP #
1. Install a server
2. (Possibly optional) Install a process manager
3. (Possibly optional) Configure the process manager
4. Configure the server
5. Start the server
6. Upload files

# Node #
1. Install Node
2. Upload files
3. Start the server
1) C++
2) It's clearer and allows for more powerful constructs (even if they're not being talked about yet).
3) Yes.
4) It depends on the number of writes but you can adjust the level of history to the level you want.
5) Great question. I'll have to circle back to this later.
6) The feature list above beats SQL Sever on each point.
7) Initially as a service but that could change.
8) The research stems from the Kayia programming language (kayia.org).
9) The feature set for the price. It solves a lot of back-end needs and yet is much cheaper.
Litany of failed ventures:
http://www.adweek.com/news/technology/6-hyperlocal-failures-...

Litany of crippling systemic factors:
http://streetfightmag.com/2013/08/23/why-your-hyperlocal-con...
FWIW, You can get transaction-time and the associated wall clock time in datomic's query language as well, though admittedly I can imagine cleaner ways of doing it :)

http://stackoverflow.com/questions/11025434/in-datomic-how-d...
Easily the most flattering comment so far. Thanks!
It's a great way to feel like you've accomplished something while actually making the real problem harder to discover and diagnose.
I was shocked the other day when I tried to watch Lilyhammer, one of Netflix's own TV shows, while in Singapore - it's not available! I can understand licensing issues for other content, but their own? Why would they do that?
The kind people go to. It doesn't matter. Whatever you like. Or if you don't like that then just walk around the downtown areas of any of the bay cities. Hang out at sidewalk cafes. Go to farmers markets.
It's definitely still an active project, but I'm on sabbatical this academic year and have had much less time than usual for my regular research. I'll be getting back to it in June. Also, Raimondas Sasnauskas, who implemented the instruction synthesizer, finished his postdoc position and moved on.

In any case, there's been a lot of progress since I did that UW talk, for example here are some early synthesis results:

http://blog.regehr.org/archives/1252
The article does not mention the cost of these houses which would seem to be the major point of information.

I think these developments can market themselves a lot better if they drop the terms "low income"/ "low cost"/"social housing" and adopted something like "young people homes" or "starter homes".
This approach uses much less memory, gives a render that is exact instead of approximate (it doesn't suffer from corner clipping or grid resolution issues as you zoom in), and is quicker to do an initial render because there's no CPU-side preprocessing involved. I haven't profiled both techniques side-by-side though so I'm not sure which technique is ultimately faster.
There's enough market for everyone. Once it does the job of getting it there, with enough location coverage, other factors inform the decision.

Would you like your spicy calzone delivered in a grey box, or an Italian sports car?

Not saying it's all about the looks - but either way, robot logistics is coming.
MathJax looks excellent.
Show HN: I made a bot that finds short and unused domain names
This bot lets you know of different things to call your pet project through short and unused domain names. Check it out: domain-name-shuffler.com
Pioneers of Private Astronautics in Russia: CosmoCourse
I've had many remote jobs (including current). Another option is to start as a (remote) freelancer / consultant and transition to normal full-time while remaining remote.
Only in theory. In practice any client will be hacked.
I agree the current model is broken and I also think this can improve it incrementally...but I think this problem needs to be rethought from the ground up.

I think multiple bidding strategies or price comparison is inherently flawed for service businesses. It forces adverse selection on both sides. Essentially, to the buyer, all contractors are vetted, licensed, and have insurance, and they have no other context, so they are forced to choose the cheapest bid.
However, the sellers (contractors) don't know what type of client this is, how much they might try to change scope, or what the actual project might end up costing, so they are forced to charge as much as possible to cover the unknown.

By forcing them to bid on the project, the better contractors, who are more aware of the potential costs and risks will bid higher than the less competent ones.

Essentially, this will skew the process in a way that the customer will always end up with the worst vendor.

Further, the contractor needs to confirm price upon inspection. If this leads to changing bids, as most industries do, either the customer will be too annoyed with your site and the contractor, or just go with the new bid...and contractors will quickly learn to bid low and quote higher on site.

I would love to hear your thoughts about this and how you hope to overcome adverse selection from a bidding model.

For what it's worth, I have my own ideas for the space, but they aren't technology driven solutions, they are people driven solutions.
But that's all an outgrowth of #1. They wouldn't be able to do it if people didn't need to go to college to get a job.
Polaroid SX-70 engineering
Usually, it's background music licensing issues.
My opinion is not popular, but I think Blizzard are absolutely right in this case, by many reasons (not only because of money).