skysight-inc/HackerNews huggingface dataset:
a) You're sort of sidetracking here by making a statement about public goods theory and simply declaring that the internet is one. I respect your right to your belief, but you haven't really made a case why the internet is one here.

b) I don't want to sidetrack too much from your own sidetrack, but there's a great deal of literature on the theory of public goods, why they don't actually exist, and why government isn't needed to create or manage them. Even if you want to argue that this isn't the case, I'm not sure how the internet would definitely be one.

c) You're free to make an argument that you like things like the roads and water system. But do you really love them? Yeah, the freeway system kind of works, sure. The water system kind of works, sure. But it's not really flourishing, there's no market pricing on these things that truly eliminates waste (how many roads actually need to be built? Is overproduction of roads crowding more efficient means of travel like rail out of the market?), and innovation in these fields moves at a snails pace.
C++ is usually a premature optimisation.

I would use it for something like the Unreal game engine, because I know that:

- performance is important in much of the project

- the problem is complex enough to require high level language constructs

But for most tasks, my time would be better spent using a high-level language and then optimising the hot spots in, say, C.
Thanks! And yes, that's basically the plan. :)
This is huge. 87-99% shared code between iOS and Android. Someday companies as big as Instagram won't need to have entire separate product teams for separate platforms.

> React Native allowed product teams to ship features faster to both our iOS and Android apps. The list below shows the percentage of code shared between the apps for some of the products, which could be used as a proxy to measure how we managed to improve developer velocity:

Post Promote: 99%

SMS Captcha Checkpoint: 97%

Comment Moderation: 85%

Lead Gen Ads: 87%

Push Notification Settings: 92%
Wow, we really do live in the future.
Pay Off a Mortgage in Less Than 3 Years as an Airbnb Host
How to pick good startups to work for
I've had friends move to the Netherlands & definitely they have more disposable income than I do. I've also worked in the UK (Scotland) where I made a hell of a lot less but where health care and prescription drugs were 100% free - that bit right there saved me 25K / year.
Great article Martin. Do you have any performance figures or tips that you learned when porting the save feature?

Specifically how was performance across Android/iOS?
Oops, that was an internal link - fixing now.
OCaml on Windows: The easy way
Take the CSS for an small button and add all the variations you need. And after some time someone not so skilled like you arrives and adds a padding to the first button.

That on scale it's not easy solvable.

And that's the reason why we are looking for other approaches to isolate/share the main functionality.
SEEKING WORK - Remote (GMT-3)
Vinta is a web consultancy, with 4 years experience, known for building great products using state of the art technologies. With a strong focus in quality from frontend to backend, we deliver software with intuitive interfaces, beautiful code, well-tested features and easy maintenance. We offer services to all stages of product development. From building a product from scratch to helping existing teams on large projects, we are able to take innovative business to the next level.

here are some projects we support or own on github: https://github.com/vintasoftware/
feel free to check our website as well: vinta.com.br

We love product development and we understand your end-user needs together with you. Being experts in Python, Django, JavaScript and React, we have the necessary technical skills to realize your product vision. More than developers, we are consultants: we have the entrepreneurial mindset required to simplify requirements and deliver features. We simply don’t over-engineer, but produce maintenance friendly code to be delivered and validated ASAP. We are communication masters: we believe the key for a project’s success is good and timely communication. We are not a black box; we value collaboration with clients on all project stages.
In addition, if you happen to have a slow connection, all you see is blurred blobs instead of pictures. I never experience that with proper img tags because, you know, most major browsers have been doing progressive loading (which works with basic img tags) since several years ago and it works very well in most cases. I don't see why the guys at Medium felt they needed to reinvent the wheel. I hate Medium's layout and since they allow custom domains it's becoming very hard to avoid Medium links at all.
It also discourages people from providing hosted services based on a particular piece of software if they are in fact complying with the spirit of the GPL, but just suck at build infrastructure.

In particular, if I have custom patches to RethinkDB, I submit them all upstream, and I'm using some awful in-house build system because that's how everything is required to work at my company, I'm obligated to release the build system, even if any discrepancy between my awful in-house build system and the upstream one is a bug on my end. The one that's actually live is the corresponding source.

In theory this is good, because it means that if my awful in-house build system is, say, picking up some patched high-performance library, I'm obligated to distribute that library too.

In practice, that's much less likely to happen than just not having a great build system that does the same thing as the upstream build process, just worse. A legal obligation to have good build tooling is a weird barrier.
Seems good. I'll taste it
I'm happy to see the focus on productivity.

I saw the long awaited Non-Lexical Lifetimes tentatively mentioned in there, and I can only hope this will help move things forward, since it's pretty frustrating spending time fighting the borrow checker and refactoring correct code that really ought to run as-is.

Cheers and happy 2017 to the Rust project!
Sous Vide startup Anova gets acquired by appliance giant Electrolux
VMs share resources from the host: disk, network, memory. Just like a container shares resources from the host.

Containers re-use the running Operating System from the host, it saves memory but it can only run a single OS.

A VM can run any operating system, and each VM runs its OS independently. VMs are memory intensive, there is a base 100-500MB to pay to run any VM because of the independent OS. (Note that the advanced VM managers have evolved to have memory deduplication and COW across VMs.)

Containers exist to save memory. That was the critical pain at the time they came to existence. Memory was expensive, it was a major problem when you wanted to run 10 hello world applications as 10 separate VMs.
If a casino could lose money, you'd either have only small, locals casinos, or none at all. Votes are rarely referendums on ethics.

In this case we'd (and by we, I mean Nevada residents) compare two scenarios: a world without the big Vegas casinos (and their tax revenue, their employees, the good stuff), or a somewhat rigged world with the casinos.
Yeah volumes skip unionfs. This article is full of FUD. The author demonstrates they don't really have enough experience to make these claims. I wonder if google has database nodes in containers? Kubernetes is adding the features for containers now. I think it is stable now.
Ubuntu Linux Daddy Mark Shuttleworth: Carrots for Unity 8?
That's still a lot more work and error-prone than using garbage-collection.
Specialization only works on seller's market, i.e. when there's more demand than capacity. If there's more capacity than demand, it makes sense to try and capture bigger share of the market while being less efficient at delivery.
What would be the biggest hurdling block to rewrite the main feed into React Native? As a follow-up, do you think there's a performant enough ListView implementation in RN to build the feed with?
I use Firefox because it works fine and doesn't appear to be trying to exploit me.

I don't know what "WebExtensions" are or how they differ from regular extensions, but if Firefox breaks all the adblockers and scriptblockers that I depend on to make the web tolerable, I'm going to have to downgrade that "works fine" rating.
Chrome is all about delivering web content to the user, as the web page developer designed it. Firefox moves the balance of power closer to the user. And not just with extensions, but by building in Readability mode and letting users pick fonts, sizes, colors etc. Even though Firefox is going to move away from their old addon model, they are constantly pushing to standardize more functionality in the new model. They really want users to experience the web on their own terms, even when that means putting a lot of extra work into the core framework of the browser.
This sounded scary to me at first, but in practice I've found it to be the opposite.

Separating css, html, and js makes sense when you're writing a document, and the content is the html and the css is strictly formatting.

It makes less sense when you're writing an app, and the styling of the html is an integral part of what is being created. The javascript works the same way; it's often integral to what's being rendered, not just patchwork adding small amounts of functionality to an existing document.

But probably most importantly is that react gives you a different way of separating concerns: it's very easy to put different chunks of the UI into different components/files, so your app is divided by functionality, instead of divided by technology. Keeping the html (and sometimes css) with the js that uses it helps increase the cohesion of small units in your UI that intimately work with each other, while separating those from other js/html/css for other units.
Plus there's the fashion of uploading one npm dist per function, as well as a bundled dist, for projects not using tree shaking to keep their browser bundle small.

OTOH while I'm mostly a perl hacker, there's a metric fucktonne of duplication on CPAN too, so I'm not sure that comment necessarily applies (there may be more duplication on npm, but I don't have data for that).
Two reasons: There's a number of extensions I want to keep using. Those are not available on Chrome. And I fear for my privacy when using Chrome.
The data wasn't petabytes 3 years ago, it grew to that amount over time.

But with that said, if you have replication and operational workflows set up, you minimize the chance of issues.

If you have mission critical data, you should set up your database to handle failovers of any type, let alone docker.
Good luck finding one that isn't.
Nobody is saying blog posts cannot be shared on HN - we are saying they do not fit the category of "Show HN". That is a particular category, with specific implications.
If y was a struct, you couldn't return a reference to it AFAICT. Just like C# say.
Why "weaker guarantees across platforms"? These crates have the same guarantees about platform support. Availability across time is also similar, really.
dupe of https://news.ycombinator.com/item?id=13584097
https://www.youtube.com/watch?v=2HQaBWziYvY I can't help it...
That is true, but I think lots of capital is partially an effect rather than a cause. IE global investors would rather invest in a US startup or listed company than a European or Canadian one.

I think USA provides a good environment for companies where most other countries look after people first. One result is that people with skills that make money for companies will have above average salaries. The downsides of the American way are well documented.
I see. Yeah, Angular probably doesn't target environments where it isn't the main/driving DOM/context.
I look at JSX as more of a helper to lower the barrier to entry. In the end it's all just Javascript. You can render the (virtual) DOM in React without using any JSX/HTML syntax. So it's not "everything mixed into HTML", it's "there is no HTML until the top-level render() is instantiated".

Also, regarding the CSS questions, setups like CSS Modules in a Webpack build make the CSS very maintainable. Not to say there aren't drawbacks, but IMO having the classes be dynamic makes everything way more flexible. And, tools like hot-module-reloading make front-end development so much more enjoyable.
> gives the house an additional edge

Technically, additional decks reduce the expected edge of a card-counter who has only seen some number of cards. Which functions the same way...
As mentionned already, and as Pete Hunt famously talked about in "Rethinking Best Practices" (you can find it on youtube), you want to separate -concerns-, not technologies. Often there is a 1:1 between those things, but not in modern web development.

So we've seen a push toward components that mix technologies, but separate concerns. And it's been great.
> This is something that I would love to see happen with open source projects:

That won't happen. But not for lack of trying!

My consulting company, Paragon Initiative Enterprises, has produced over a dozen high quality open source projects that make it easier to write secure PHP software.

For starters, we wrote an entire CMS that has secure automatic updates baked into its core as a first-class feature (including for extension developers): https://paragonie.com/project/airship

Worried about SQL injection? EasyDB makes it easy and intuitive to use prepared statements. https://github.com/paragonie/easydb

Need Content-Security-Policy headers quickly and easily? You want CSP-Builder: https://paragonie.com/project/csp-builder

Want all the security of libsodium with an even simpler interface and a separate class for dealing with the filesystem? Check out Halite: https://paragonie.com/project/halite

Want to stop CSRF (including replay attacks)? https://github.com/paragonie/anti-csrf

Want to quickly examine the differences between two PHP Archives (e.g. for reproducible builds)? https://github.com/paragonie/pharaoh

We even wrote the community's accepted interface for generating cryptographically secure random numbers in PHP 5 projects: https://github.com/paragonie/random_compat

And coming soon (pending an audit), a pure-PHP implementation of libsodium that will likely be adopted by WordPress so its automatic updates are Ed25519 secured: https://github.com/paragonie/sodium_compat

And even more: https://paragonie.com/projects

Guess how many clients we've gotten from all this open source software we wrote over the past two years that demonstrably improves the security posture of software written in PHP?

Zero.

My solution: Our next project isn't going to be OSS, and it's unlikely that any of our future ones will be unless it's intended to be a giveaway.

The open source + consulting business model may sound good in theory, but it simply doesn't work. (Though, I will grant that it's possible that the "consulting about someone else's open source project" is more sustainable, due to near-zero investment in said project itself.)
ArsTechnica has an article on this. It's not new (Apple is using a different name), Apple didn't develop it, and they're adding to to MFi because 3rd parties asked for it. There's nothing special, it's just another form factor for a USB connection.
A used Milli-Q system (makes ultra-pure deionized water for scientific research) is only a few hundred bucks on ebay.

Mind you, drinking water deionized to such levels will actually accelerate teeth decay, and has been shown to give organ damage and other unpleasant side effects in mice who were given it for long term consumption.

Though I suppose you could go through the hassle of deionizing the water, and then adding back just the ions you trust (Ca, Na, Mg, Cl, etc.).

For a more pragmatic approach, you could just limit yourself to bottled water, beer and wine imported from Europe; >99% of all European drinking water is non-fluoridated.
And it seems to me that most people's framework tends to fall somewhere between the two. People actually aim to maximize some function that depends on both self-interest AND the greater good. The weighting between the two varies between individuals, based on numerous other variables, but very few people are 100% one way or the other (Mother Teresa vs a sociopath). So ISTM now that the goal isn't to convince people to follow a particular moral framework, but rather to attempt to influence the variables that already steer people toward one or another. One of those is exposure. There's that Mark Twain quote, "Travel is fatal to prejudice, bigotry, and narrow-mindedness..." Another, as discussed above, is financial well-being. The more comfortable one is personally, the easier it is to consider the plight of others. There are certainly others.

I agree with you that while there are some appeals to self-interest that support a goal of equality, fundamentally it is an issue of morality. And I agree with you that you can't logic someone from one moral framework to another. But I would add that almost everyone does have some amount of 'maximize the greater good' built into their moral framework already, so the only logical way to work toward this is to focus on the variables that will add weight to that side of the equation.
and someone like this smart person in your example would now be highly unlikely to get an h1b visa with the current lottery system.
once you introduce a lottery, it's no longer about hard to find skills, it's about how can you churn out most applications to win most visas.
i'll be looking for the elimination of the lottery system in any proposed fixes.
Webinar “Introduction to Singularity”
Not really that different than paying anyone to do anything political. There are paid protestors, paid picketers, and so fourth. It's not even a lot different than the "click here to spam your congress people" websites.

This is community activism!
What's really needed is an error term that can be computed in parallel with your normal floating point operation. Floating point is impossible to write correctly in practice if you don't consider the accumulated error.
Work that would be shown regardless of gender. This would not have been show on HN if the dev were a white CIS male because it is basically regular work. Good work, but nothing to show off about. We all do that everyday. It's not a complain, I'm just explaining: you don't want to hear about the regular stuff, for that you have the coffee machine.
How can humility save the entrepreneur?
They were at home. Whether they were inside or in the backyard I can't say, big shrubs and picket fences. Some of the kids were whisked from school directly home by car even though it was a reasonable walk. These parents have an unreasonable fear that someone is going to kidnap their special snowflake.

We're back in the city now, not the downtown corridor but where the residential apartment buildings are. Lots of kids here. 3 parks within walking distance. 1 has an Olympic pool and kids splash pool. And in the week he's been enrolled lots of new friends. He's learning Spanish as well, not school Spanish but actual living Spanish. If he's like his father he'll learn the curse words first :-)

I think the poor planning of suburban neighborhoods caused the decline. Parks are too far apart. There are no sidewalks. Everyone is in a cul-de-sac making it difficult to pass by. I believe the suburbs are designed to be actively hostile to social interaction. This is the same adults as well as kids.
just my opinion as a father of a six-year old girl: it is indeed a good lesson to learn--eventually.

Whether it's a good lesson to learn now depends (or at least it would for me) on the child's age.
> I am eager to learn something new...

Learning is a life-long process. As it relates to the industry, consider these questions.

1) What are the most important problems in your field?
2) Are you working on ONE of them?
3) Why not?
On this subject, Richard Hamming offers excellent advice > https://www.youtube.com/watch?v=a1zDuOPkMSw
All AMP needs to do is add an "X" to the top right corner and if it's clicked ask the user if they want to opt-out of AMP.

Either way, the user get sent to the "native" version of the URL they requested when they click the URL.
Yes, yours is one of the use cases where C++ really shines. You really do need that combination of low-level performance and high-level expression throughout your codebase.
Forgive me if I've missed something here, but these where only trained against synthetic images (images that where scaled down using various formula). Due to this, I'd expect this to not work as well as it could on actual images taken by sensors.

Do any datasets even exist where the images are at sensor pixel level?

That way the model would 'know' about imaging effects (I can't think of any specifically mechanical effects that could be in play here right this second) etc?

Or am I way off base here....
It's the causation that you suggest that's wrong. Income inequality is not an _input_ into this equation. It's the measure of a system!

And what income inequality is really measuring is just the mix of jobs. If you have everyone working the same job for the same amount, you'd have 0 income inequality. It's when you have a different mix of jobs that are valued differently that you get income inequality. America has a different mix of jobs, which changes our income inequality in comparison to Europe.

I think that the best way to explain the differences in software compensation is in supply/demand factors. The limited immigration, weak STEM education, businesses understanding the value of software, and inefficiencies with outsourcing makes it so that software developers can command a higher salary in the US because there's both reduced supply and increased demand.

So yeah. That's my problem. I think that there are clear supply/demand factors that explain the difference in compensation, and income inequality is the measure of a system, it is not an input variable.
> Other generics systems provide more information to the compiler, so in addition to compiling faster and providing

The templating system in C++ is not generic type system, it's not even strictly speaking part of the C++ type system. It's usually define as a metaprogramming facility. Because it be used to abstract on types, it's the defacto generic system in C++, but it can also be used to abstract over definitions, expressions, computation shapes (like unrolling a loop on a factor relative to the size of a type). C++ templates are slow when compared to other generic system because of a lot of bad design decisions (compilation model and how/when a template has to be intanciated), but also because it can do more, and is used to do more.

> the compiler can use knowledge of specific type classes, interfaces, modules to optimize the implementation of.

Depends on what you mean by more information: In c++ complex type constraints can be express through template. Even more important, in you example you have to rely on someone in the rust compiler community to implement that specific type transformation. Because, the template system is extremely expressive,whoever designed the "option type" can also ship instructions to the compiler on how to specialize for NonZero type...

> You can also have nice features like GHC's rewrite rules which allow you to effectively tell the compiler how to optimize your types.

It's hard to have both, most generic type system are fast because they don't do much
as you start adding feature and smartness into the system, the performance degrades...scala compile time being a good example.

> Rust and Haskell both have it.
can you specialize on struct in rust/haskell or just implementation of traits ?