Ask HN: What programming blogs should I be reading? - <AUTHOR> <comment><USER2> [http://thecodelesscode.com/contents](http://thecodelesscode.com/contents)

Think Zen koans ([https://en.wikipedia.org/wiki/K%C5%8Dan](https://en.wikipedia.org/wiki/K%C5%8Dan)) for Software Engineering. Some of the stories are hit and miss, but overall it helps reflect a little, and reach enlightenment ... or at least being a smarter developer.

</comment><comment><USER3> [http://prog21.dadgum.com/](http://prog21.dadgum.com/)

</comment><comment><USER4> There is awesome people who created list of engineering blogs [1]. Eventhough it's about engineering, the content of blog still contains programming or technical detail from various companies or individuals contributors.

Since you don't give the specific programming topic, I give you a recommendation programming blogs in general.

[1]: [https://github.com/kilimchoi/engineering- blogs](https://github.com/kilimchoi/engineering-blogs)

</comment><comment><USER5> [https://www.dreamsongs.com/Essays.html](https://www.dreamsongs.com/Essays.html)

[http://tunes.org/cliki/glossary.html](http://tunes.org/cliki/glossary.html)

[http://philip.greenspun.com/](http://philip.greenspun.com/)

<comment><USER6> Greenspun's blog seems to mostly be getting testy about society today and also alimony.

</comment></comment><comment><USER7> I think the Mozilla's MDN [https://developer.mozilla.org/en- US/](https://developer.mozilla.org/en-US/) is the best for web stack, for others keep an eye on HN new posts everyday there is one link to new blog for sure :)

</comment><comment><USER8> [http://fabiensanglard.net](http://fabiensanglard.net)

</comment><comment><USER9> If you're at all interested in functional reactive programming, [http://elm- lang.org/blog](http://elm-lang.org/blog). Extremely interesting topics, and very pleasant to read.

</comment><comment><USER10> For those who wanted to sharpen their skills in programming and wanted an exercise everyday.

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

</comment><comment><USER11> [http://community.bartdesmet.net/blogs/](http://community.bartdesmet.net/blogs/)

</comment><comment><USER12> [http://blog.codinghorror.com/](http://blog.codinghorror.com/)</comment>


Google Cloud Vision API changes the way applications understand images - <AUTHOR> http://googlecloudplatform.blogspot.com/2015/12/Google-Cloud-Vision-API-changes-the-way-applications-understand-images.html <comment><USER2> I wonder what this means for computer vision startups like [http://clarifai.com](http://clarifai.com)?

Its hard to compete with Google on a task like image classification when Google has immense computational resources, tons of data, and hoards of top researchers.

<comment><USER3> Forget new services, even a small change in their existing products by Google can destroy lot of companies. Everyone remembers how they ruined email marketing by caching gmail images.

<comment><USER4> caching images prevents knowing the open rate; it doesn't prevent knowing the response rate on click actions. If people are reading your emails but not clicking, how is that valuable?

<comment><USER5> It's also valuable to know the open rate. If people aren't opening your email, maybe it means your email subject line isn't "zingy" enough. At least you could A/B test with different subject lines and see if it changed the open rate.

</comment></comment></comment></comment><comment><USER6> It's exciting to see more of these services come to market.

IBM Watson has a suite of vision APIs available that have some similar features.

For example, the demo at [http://vision.alchemy.ai/#demo](http://vision.alchemy.ai/#demo) has example images that demonstrate facial detection and identification, label extraction, object identification, and so on.

Another demo at [http://visual-insights-demo.mybluemix.net/](http://visual- insights-demo.mybluemix.net/) uses the Visual Insights [1] API to identify a set of relevant tags.

And the recently released Visual Recognition [2] API allows you to train the model with your own dataset. Demo: [http://visual-recognition- demo.mybluemix.net/](http://visual-recognition-demo.mybluemix.net/)

Disclosure: I am an evangelist for the Watson Developer Cloud suite of services at IBM.

[1]: [https://www.ibm.com/smarterplanet/us/en/ibmwatson/developerc...](https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/visual- insights.html)

[2]: [https://www.ibm.com/smarterplanet/us/en/ibmwatson/developerc...](https://www.ibm.com/smarterplanet/us/en/ibmwatson/developercloud/visual- recognition.html)

<comment><USER7> Wow, that looks fantastic! I was looking like something like this for ages.

Some feedback though:

\- As an independent developer, pricing is important to me. It was very difficult to find pricing for the Watson APIs (apparently it was in Bluemix?) and if I wasn't a little more determined (thanks to the ability to train my own classifier), I wouldn't have persevered.

\- If I already have a wealth of labelled data (I do), it seems difficult to train a new classifier for the Visual Recognition service. If I have 200 000 images each with an average of 20 labels (from a set of ~2000 labels) for example, the positive + negative sample per label is very time and bandwidth consuming, as I have to train 2000 classifiers using ~ 5000 images per classifier (for plenty of training data), for a total of ~10 000 000 uploads. It'd be far nicer to be able to upload a folder of JPEGs with a JSON blob per file containing labels (or a classifier name) and have Watson derive positive and negative samples from it.

<comment><USER6> Thank you for the solid feedback!

As a work-around for mass uploading, I might suggest signing up for a 30 day free Bluemix trial [1]. You could then upload your data to a container and script the creation of sample archives and uploads from there.

[1]: [https://console.ng.bluemix.net/registration/](https://console.ng.bluemix.net/registration/)

</comment></comment></comment><comment><USER7> I wonder what this'll mean for startups like [https://imagga.com/](https://imagga.com/) and how pricing will change.

Also wonder if they'll bring the ability to train your own classifiers using their networks...

<comment><USER8> We kind of expected that, as it was just a matter of time since they announces Google Photos capabilities and recently the TensorFlow.

Funny enough I just answered a similar question a few days ago here - [http://kaptur.co/10-questions-for-a-founder- imagga/](http://kaptur.co/10-questions-for-a-founder-imagga/)

The bottom line is - we believe we can provide much better API service with competing level of technology precision.

At the same time we also stress a lot on specific things like custom categorization training and enterprise/on-premise installations (both differ from custom software).

Actually we don't plan to run away in a niche market, though some people suggest it as a proper strategy. We'll give them a good run for their money on the broad use-case. I believe that the "Hacker" culture works in our favour in this case and I hope you help us prove it :)

</comment></comment><comment><USER9> I wonder how long it will take for someone to integrate this with Google recaptcha...

<comment><USER10> Using Google Vision API to break Google Recaptcha? Interesting...

<comment><USER11> They may already had the foresight to train what their Recaptcha looks like.

<comment><USER9> sort of how the old captcha helped digitize books, people entering recaptchas is free tagging to train vision's net.

<comment><USER12> Which is why the data from ReCaptcha and NoCaptcha should be public domain – it was created by society, it should be usable by society.

<comment><USER13> If the data was public the black hats would use the ReCaptcha and NoCaptcha data to defeat *Captcha and we'd be back to Square 1.

<comment><USER12> The black hats have far easier way to use it.

But this data shouldn't belong to a corporation.

It's inacceptable that Google has the ability to use this dataset, their market monopoly in this online market, as competitive advantage in the self- driving car market.

Btw, black hats have no demand at all for captcha-solving solutions by training captcha solvers – instead, hiring people from Bangladesh is far cheaper and faster.

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> Finally Google is releasing their best dog food as cloud service. Is better than "copy" AWS.

</comment><comment><USER15> Wondering how this can be used for specific content detection! Say I want to take pictures of a crop using a drone and analyse the pictures for pests and disesases etc ...

<comment><USER8> One if our key features in imagga.com is exactly this - being able to train our own classifier with our help. Let's talk more if you are interested.

</comment></comment><comment><USER16> I've been going round in circles for the last 15 minutes, trying to sign up for access. I've tried every ID I can find in my account for the "Google Cloud Platform user account ID", but none seem to be working, and it won't allow me to submit the form without a valid ID.

Is anyone else having the same issue/know where I can find this ID?

<comment><USER17> As it's for whitelisting, it is generally an e-mail address - the ID you are logged into Google with when accessing the Cloud console. If that doesn't work for you, let me know - I work on GCP and I can ping the people who can fix it.

<comment><USER16> It worked — thanks!

</comment></comment></comment><comment><USER18> I wonder if there is an API to train this on a custom dataset.

They have a few built-in models, but those seem pretty limiting in terms of uses cases. I can think of a lot more where you would want to be able to train on your own specialized images and labels.

<comment><USER8> There are multiple open source libraries for this, however optimising and iterating is the key. Preparing the dataset to be representative enough and has no overlap of categories/labels is also quite important.

This custom categorization is actually one of our most requested services at Imagga - here is some info if you are interested - [http://imagga.com/solutions/custom- categorization.html](http://imagga.com/solutions/custom-categorization.html)

</comment></comment><comment><USER19> The default assumption with cloud apis is the company offering the service will not use data for internal consumption (even when it comes to training ML models?). I'm assuming this will be the case with this one also?

</comment><comment><USER20> Where can I see the couple hundred lines of Python code that powers the robot?

<comment><USER17> You jest, but [https://tensorflow.org](https://tensorflow.org)

<comment><USER20> I'm not jesting. They mention it on the page.

</comment></comment></comment><comment><USER19> I know this may not be useful early on, since Google may not have a lot of this kind of data that would make image recognition more useful, but I think it makes sense to have a plan for eventually making it possible for developers to integrate depth information. For example for those who have an XBox Kinect, or more recently a "Project Tango" tablet.

</comment><comment> tianlin-shi This seems like a warning sign for all horizontal companies that claim to solve AI/CV/ML in X years. If you don't focus on a specific vertical, Google will beat you.

</comment><comment><USER21> worth mentioning: [https://www.projectoxford.ai/](https://www.projectoxford.ai/) from Microsoft

</comment><comment><USER22> What about a speech recognition API? That would be awesome!

</comment><comment><USER23> Can this tell you approximate volume or quantity?

</comment><comment><USER24> Great! The recognition seems fairly accurate, based on the examples they provided (haven't used Google Photos myself much, though). I'm still wary, though; I really hope we won't see a repeat of the labeling black people as gorillas fiasco, which happened as recently as earlier this year: [http://mashable.com/2015/07/01/google-photos-black-people- go...](http://mashable.com/2015/07/01/google-photos-black-people- gorillas/#wk4MIeWqCGqI). The article mentions that Google was looking into how these mistakes can be prevented... I wonder what they did/are doing?

<comment><USER25> They likely didn't purposefully "do" anything wrong -- at least in the sense of some racist engineer tampering with the system to have it come out with those results.

But this is the nature of machine learning algorithms, including both the process of supervision and ability to view the impact feedbacks have on the algorithms, and also, the impact the quality of the training set given to the algorithms. At a lesser company, the problem could be as simple as very few black people represented in the training set, so that when the algorithm sees a dark-colored human-like shape, it is more "likely" that that shape is a gorilla (which is human like and pretty much always has dark fur) than it is a human, because the algorithm was trained mostly on light-colored humans. The Google Photos algorithm obviously takes in more kinds of input and factors besides visual composition so there was probably more to it than this.

Or maybe not...who knows? I'm not interested in reviving a discussion about importance of diversity in the engineering workforce, but this is one kind of problem that can slip by the most competent and well-intentioned of engineers simply because they're less aware of how disenfranchisement can propagate into technical problems, no matter how correct and powerful the math behind the algorithm.

Another example from a few years back was when HP released a auto-tracking webcam that became infamous after a black retail employee uploaded a YouTube video of how the camera ignored him but not his white co-worker:

[http://www.cnn.com/2009/TECH/12/22/hp.webcams/](http://www.cnn.com/2009/TECH/12/22/hp.webcams/)

I'm in 100% agreement that this was likely not HP's intentional fault, and also that face detection of darker complexions is computationally more complex than it is for lighter complexions because of how contrast is used by the algorithm...but I most definitely know that if I were an HP engineer, and if the CEO and/or my direct boss were black and tried out a prototype that behaved as it does in the aforementioned YouTube video, there is almost no fucking way that the product would be released as-is, with my excuse being "Well, accurately detecting black faces requires a much more complicated training set -- that's just how math works!"

<comment><USER24> I have no doubt that neither Google nor HP made those error maliciously. I was just curious as to whether or not it's possible to incorporate some sort of... tact?... into these recognition algorithms to avoid labeling people (or other things) offensively. Is it just a matter of a larger training set? It would be hard to cover all sorts of people in all sorts of poses, with all sorts of lighting conditions, etc.

<comment><USER26> It's not about tact, it's just the algorithm doing its best. In order for the algorithm to be capable of "tact", it needs to recognize that it's looking at a person (or whatever). And if it recognized a person, then there wouldn't have been this problem because it would just label it correctly.

<comment><USER27> You can certainly include tact. The algorithm thinks it's more likely it's 51%-49% gorilla/person split, but a level above that chooses person as the answer as even though it'll be wrong more often, the _impact of the error_ is lower.

This is why you shouldn't just train your system to hit higher accuracy figures but also investigate the type of errors it's making. This needs to be done while thinking about your specific use case and domain.</comment></comment></comment></comment></comment>


Galaxy Tab vs. iPad: Can Samsung Become a Real Apple Rival? - <AUTHOR> http://www.dailyfinance.com/story/samsung-apple-rival-ipad-galaxy-tab/19795669/ <comment><USER2> I've seen the Galaxy, and while it's nice, there's no way I'd rather have it than the iPad. It feels clunky, and let's face it...right now the app store is one of the appeals of the iPad.</comment>


Show HN: Deploydo – Deployment made easy - <AUTHOR> https://www.deploy.do/ <comment><USER2> The idea of these hosted deployment systems always scares me. Essentially you have no choice but to open SSH to the universe. This is far beyond best practices for at least a couple reason. The first would be that if at all possible you should be hiding SSH behind a VPN so that casual or not so casual attempts at breaking in to the server are made that much more difficult (this makes even people somehow getting a stolen private key a non-issue). The second would be that giving an 'unknown' third-party this kind of access to your systems leaves you open to them being exploited and then exploiting you (and this scenario seems much more likely than someone guessing your password if you are using one on SSH for some reason).

All in all, deployment seems like something to me which I'd always want to keep in-house.

<comment><USER3> I'm comfortable with having a company I trust enough handling deployment. In order to trust them I have to see them do difficult things well and it probably needs to be more than just a couple people. A small deployment service like this will probably remain in the area where I don't know enough about them to trust them. This is why I turn to Continuous Integration tools (CircleCI) or Project Hosts (Beanstalk, Springloops) for deployment. By observing them doing complicated things I get the feeling that they know what they're doing. Perhaps OP should think bigger.

<comment><USER2> I personally wouldn't trust CircleCI to do this stuff either. They already don't exactly have a great track record for security.

<comment><USER3> Upon thinking about it, I agree. I don't want CircleCI to have the SSH key.

I think webhooks are a good model. At worst it could deploy at the wrong time (which would be pretty bad).

</comment></comment></comment></comment><comment><USER4> > Ever asked yourself why deploying your projects to your servers is such a > pain?

Personally, no. I haven't heard it from my peers either. I just use rsync and quick scripts; others use PaaS (self-hosted or managed) that generally handles deployment pretty neatly.

The only place I've heard complaints about deployment is inside of large multi-tier organizations, where the problem boiled down to communication issues between dev and ops, not tooling.

I suspect I'm supposed to be the target audience here, but I'm not sure what problem this solves for me. On a first impression this looks mostly like a way to lock myself into a workflow that leaves a lot of unanswered questions (re: server security, platforms/frameworks supported, etc), with very marginal benefits.

<comment><AUTHOR> > I just use rsync and quick scripts How do you handle zero-downtime > deployments with rsync? Also what about rollbacks, how do you handle these?

In case you have team of a few people, how do you know what already got deployed? How do you know if anyone is deploying just at the moment when you are deploying something?

We wanted to solve these questions with our tool. In case you haven't had these problems yourself, I think you aren't our target audience as you pointed out :)

</comment></comment><comment><USER5> Web UI vs SSH is hardly the problem. More often, it's setting the environment set up on the remote server that's a terrible pain, then you have to set up domains and ssl and all that nonsense.

TL;DR configuration is pain to do manually every time, I hope you can make it go away. If you have ideas, comment below.

<comment><AUTHOR> It's not only the ui. The reason why we build deploydo is that we needed to have a transparent deployment process which can scale up to 30 servers.

We wanted to be able to see what was deployed to which servers and when. Just like your github newsfeed.

Another goal we wanted to archive is confidence: We wanted a process where we can clearly see everything which will be changed on the server, therefore we implemented line-by-line diffs between the server and the repository.

These things were the real pain in our process.

<comment><USER6> I'd really like you to make a case for why I, as somebody who won't store production credentials in my code repo, should feel good storing them in _yours_.

I run the a SaaS cron monitoring service (Cronitor.io) and we ourselves make liberal use of SaaS tools to simplify our lives and free us to focus our time on places we can add value. But I'm skeptical of storing all the things our apps need -- private keys, passwords, paths, ports and hostnames -- with you. And that doesn't even touch on the risk that if somebody compromised you, wouldn't they essentially have a key to the back door of every one of your customers? What have you done to mitigate that risk?

Aside from all that, congrats on shipping! It's an important milestone.

<comment><AUTHOR> Currently we are working on improving our security by encrypting user data like config files. Then we would store the password for decrypting these data on the client. We would only decrypt these things when required (e.g. when deploying). Note that this is currently only a concept and not implemented yet.

Otherwise the same applies to GitHub: If GitHub gets hacked, your application details will also be compromised.

> Aside from all that, congrats on shipping! It's an important milestone. > Thanks :)

<comment><USER6> > Otherwise the same applies to GitHub: If GitHub gets hacked, your > application details will also be compromised.

Right, which is why you don't put your credentials in your source code on Github. This is common practice and one you seem to accommodate in your product, so I know you're very familiar with it...

I hope you guys are transparent about these sort of things, it will mean a lot to your adoption rate I think. A lot of people out there who could be interested in a tool like this if they felt comfortable with the security implications.

</comment></comment></comment></comment></comment><comment><USER7> from the features page:

> You can deploy nearly any programming language with our tool that works by > just transferring the files

Maybe I misunderstand something, but this sounds like it trivializes the complexities of a typical deployment process. Services need to be restarted, code updated, database migrations run and so on...

I think for it to be successful you need to figure out a way to make automating those fragile deployment steps easy (and solid). This is a problem lots of configuration management tools are trying to solve (chef, puppet, ansible, fabric, capistrano etc). Or at least help integrate deploy.do with such tools.

<comment><AUTHOR> We provide hooks in our deployment process which you can use to do these kind of tasks. E.g. if you have to restart your web server after your deployment you will typically add something like `sudo service httpd restart` into the hook.

If you have a really complex deployment process and need more than just our hooks we are not the right tool for solving your problem. But for your typically php or rails application you will be happy with deploydo :)

</comment></comment><comment><USER8> "Ever asked yourself why deploying your projects to your servers is such a pain?"

I know exactly why it's such a pain. Because every deployment tool available only deals with the _easy_ parts.

</comment><comment><USER9> Yes, I want to use a web interface like this, and the config management feature is something that I would find very useful.

No, I'm not comfortable giving a third-party service SSH access to our servers. Besides, all of our machines are on a private network behind a VPN. This is a best practice that most, if not all, companies should follow.

<comment><AUTHOR> We can understand your point. You have to trust us like you have to trust your server hosting provider.

</comment></comment><comment><USER10> It is really worth having a .do domain? given that they are fairly expensive and seems like google will treat them as specific from Dominican Republic and not generic[1]?

[1][https://support.google.com/webmasters/answer/1347922?hl=en](https://support.google.com/webmasters/answer/1347922?hl=en)

</comment><comment><USER11> "shinny" should be "shiny" on this line:

We will do the rest for you. Just look on our shinny loading indicators while we are deploying your code without any downtime!

<comment><AUTHOR> Thanks for pointing this out, just fixed this.

<comment><USER12> Also: Start using deploydo in 5 minutes, completly [sic] free!

<comment><AUTHOR> Thanks, fixed.

</comment></comment></comment></comment><comment><USER13> There's a lot of explanations of source code deployments, but it never mentions compiled binaries. Is it capable deploying build outputs?

<comment><AUTHOR> It would be possible to deploy your binaries but in this case you have to rebuild the whole project on each server. If you have long build times, deploydo is not the right tool for the job.

</comment></comment><comment><USER14> This is difficult for some setups, as it relies on an open SSH port. Our AWS instances are not publicly accessible, so this makes it hard.

</comment><comment><USER15> Why not just use ansible?

</comment><comment><USER16> >You just provide us login credentials to [your] server ...

<comment><USER17> This type of comment is now highly discouraged on Show HN posts. Please post only constructive negative comments, or if you don't have any - rather choose to not comment at all.</comment></comment>


Ask HN: How to sell mobile source code - <AUTHOR>

About a year ago I wrote and released a fun personal project: a real estate app for iPhone. Besides the technical and UX excellence it is consistently getting low rating and retention numbers. The reason for this is that I can not legally get my hands on enough data to make it useful and engaging.
Knowing that I can't attract enough users made me scrape all plans for great enhancements and cool features. While the server and the app practically run themselves and require no maintenance, I don't have any incentive or desire to keep it either. I imagine some of the agencies in the industry may be interested in releasing their own apps and they can probably benefit from my code.
What is the best place to search for potential buyers? Industry groups, app marketplaces, social media, etc? <comment><USER2> where can i go to check out the app?

<comment><AUTHOR> <http://itunes.apple.com/us/app/open-house/id373474126?mt=8></comment></comment>


Ask HN: Interested in live code+design of 3 apps in 3 months? - <AUTHOR> https://twitter.com/niftylettuce/status/754853376970686464 <comment><AUTHOR> I would be designing and developing the apps using React Native, React, Node, Glazed.io, MongoDB, Mongoose, Android/iOS simulators, adhering to [https://github.com/niftylettuce/rapid-mvp- standards](https://github.com/niftylettuce/rapid-mvp-standards) and the thoughts shared at [http://glazed.io](http://glazed.io).

</comment><comment><USER2> Yes</comment>


To Elon Musk and the Model S: Congratulations  - <AUTHOR> http://blogs.wsj.com/drivers-seat/2012/06/29/to-elon-musk-and-the-model-s-congratulations/ <comment><USER2> Footnote, not mentioned in the story: Elon Musk tweets that he'll donate the $1M to Doctors Without Borders in any case, as though he'd lost the bet:

<https://twitter.com/elonmusk/status/218897974242181121>

100%. Class. Act.

<comment><USER3> In addition, Elon said that he had already committed in his will to give away most of his fortune to charity. <http://i.imgur.com/Mnk7U.jpg>

Elon also experienced near-death back in 2000 during a visit to South Africa. He almost died from cerebral malaria. (According to an interview) He tweeted about it here: <https://twitter.com/elonmusk/status/152394000857448448>

<comment><USER4> _In addition, Elon said that he had already committed in his will to give away most of his fortune to charity._

Is donating your fortune to charity in your will really altruistic? You're just giving away something you would no longer need, something which you wouldn't be able to use in any way after you're dead.

On the other hand, by writing that will now, you get to feel damn good about yourself and also have a lot of people praise you.

I think the people volunteering their life and their youth for an NGO and going to work with people in need NOW are the ones who deserve praise, not billionaires who are pledging to helping the poor without risking anything. I wish I could be one of the former, yet our society always encourages and rewards the latter.

NB. I'm not arguing against Ellon Musk, I'm arguing against the way you phrased that sentence, and what people are sometimes mislead into viewing as a great deeds. See also Orwell's _Burmese days_.

<comment><USER5> Relatively speaking, it is. He could instead use it to have lots of progeny and make sure they'll be in a great financial position to pass on his genes.

<comment><USER6> I think hes still doing pretty well on both counts.

</comment></comment></comment></comment></comment><comment><USER7> Now if Top Gear just gives it an honest review and doesn't go for the entertainment cheap shot of pretending it runs out of power and pushing it down the road.

I look forward to buying my first used electric car in five to eight years. Probably a Leaf. Should be lots of hobbyists at that point rebuilding their own battery packs by hand.

<comment><USER8> The Top Gear review was somewhat staged for effect, but did point out a real shortcoming with the vehicle.

Top Gear reviews hardly make a difference anyway, I think anyone who has watched even a few episodes knows they exaggerate negatives for entertainment value almost constantly; the Tesla was hardly their only "victim" in this regard.

<comment><USER9> Top Gear is highly influential both in terms of viewing figures and general perception. Of all the people I know who saw the episode, they all had genuine reservations and believed it to be about accurate journalism, not comedy.

Second, as another reply points out, they did not really point out genuine shortcomings but rather fabricated events and used strawmen. If you analyse existing usage of sports cars, you will probably find the vast majority are used for short and medium distance driving on the road, not cross-continent or highly intensive race track driving. Hence the design and marketing of the Tesla.

<comment><USER10> If they take Top Gear seriously, the people you know surely are not intelligent enough to amass the resources to by a Tesla roadster.

<comment><USER11> It's not a matter of intelligence. It may be a comedy, but most of their reviews are grounded in some level of truth, and for many people the segment will have been their only exposure to electric vehicles.

<comment><USER12> Not to mention they pulled the same "joke" when reviewing the Nissan Leaf.

</comment></comment></comment></comment></comment></comment><comment><USER13> Wait. So you mean the guy started PayPal, SpaceX AND Tesla.

Mother of god.

What have I been doing with my life.

<comment><USER14> Could he be a chance at Person of the Year?

<comment><USER15> Century more like!

</comment></comment></comment><comment><USER16> Is anybody in LA test driving the Model S this weekend? How did it go?

</comment><comment><USER17> Has Elon ever talked about space in the mid-range future? Ten, twenty, thirty years from now? It's easy to talk about plans they already have for next year, or hopes we all have for a thousand years for now, but I'd like to hear someone knowledgeable about the time between point A and B.

I don't need nuanced predictions, just reasonable conjecture.

<comment><USER18> His 10-20 year timeline is a man on Mars.

I haven't seen the actual roadmap for that anywhere, but I wouldn't be shocked to learn he has one.

[http://news.discovery.com/space/spacex-elon-musk-mars- astron...](http://news.discovery.com/space/spacex-elon-musk-mars- astronauts-20-years-110423.html)

</comment></comment><comment><USER19> Here is a compilation of "first drive" videos of the Model S, as well as a list of initial review articles:

[http://www.treehugger.com/cars/jurys-tesla-model-s- rocks.htm...](http://www.treehugger.com/cars/jurys-tesla-model-s-rocks.html)

</comment><comment><USER20> Can't wait to do a test drive of the car.

<comment><USER21> I don't really even feel a need to test drive it first. I'm just waiting until I have a place to charge it and my current car dies.

<comment><USER22> I wonder, what fraction of households in the US has the electric power necessary to charge an electric car?

<comment><USER19> 240 volt at 40 amps is the same as an electric oven, so I'd say almost all of them.

<comment><USER23> The bigger barrier is people living in apartments.

<comment><USER24> Hardly a problem. As soon as there is demand, apartment buildings will start offering power outlets along with parking spaces.

Don't live in a building with onsite parking? Parking lots offering charging spaces will begin to spring up. That's the nice thing about capitalism: if there's an opportunity to make a buck, someone will jump on it.

<comment><USER22> They expect to sell 20,000 cars (Model S) in 2013: [http://www.detroitnews.com/article/20120509/AUTO0104/2050904...](http://www.detroitnews.com/article/20120509/AUTO0104/205090454/1148/rss25)

It could take quite some time until market demand for power outlets will become significant.

</comment></comment></comment></comment></comment></comment></comment><comment><USER25> "It's better for journalists to write about the story than to somehow become part of the story."

And yet, this is at the top of Hacker News.

</comment><comment><USER26> Everything I've read about Elon Musk recently has really made me root for the guy. He is disrupting two _very_ difficult industries.

This was posted on HN a few months ago, but I really thought this interview with him was exceptional: <http://www.wired.com/science/space/news/2008/08/musk_qa>

What's most impressive to me is that this interview was almost 4 years ago, and he's done exactly as he said. He's focused on results and he's spending his considerable capital on things likely to make an impact on the world, not on frivolous applications like social networks.

<comment><USER27> I'd really like to know how he's doing it. Is it because he's personally a brilliant engineer, micromanaging the projects to success? Or does he have an eye for great talent, able to rapidly put together highly productive teams? Or is he so motivational that he can take ordinary engineers and inspire them to do extraordinary things? The stuff they're doing is _hard_. A lot of very talented people have failed in the space and automotive businesses. To succeed in both to the degree he has is mind-boggling. Tesla and SpaceX still have a long way to go, but where they've been in a few short years is remarkable.

<comment><USER28> He's extremely smart and extremely hard-working; he has personally, aggressively recruited others whom he's identified as the key people he wants working for him, and by all accounts he inspires them to work as hard as him; he's trained himself into deep domain expertise in both rockets and electric cars and serves as the chief designing engineer of his companies' products; but maybe most important, he has really extreme determination. Consider this exchange after SpaceX had lost its first three launches in a row:

Wired.com: At the end of the day you're still zero for three; you have so far failed to put a rocket into orbit.

Musk: We haven't gotten into orbit, true, but we've made considerable progress. If it's an all-or-nothing proposition then we've failed. But it's not all or nothing. We must get to orbit eventually, and we will. It might take us one, two or three more tries, but we will. We will make it work.

Wired.com: How do you maintain your optimism?

Musk: Do I sound optimistic?

Wired.com: Yeah, you always do.

Musk: Optimism, pessimism, fuck that; we're going to make it happen. As God is my bloody witness, I'm hell-bent on making it work.

<http://www.wired.com/science/space/news/2008/08/musk_qa>

Compare Paul Graham:

"I now have enough experience with startups to be able to say what the most important quality is in a startup founder, and it's not what you might think. The most important quality in a startup founder is determination. Not intelligence-- determination."

<http://paulgraham.com/startuplessons.html>

<comment><USER29> There's another key here: both those industries were calcified with few innovators, so they had large latent pools of super-talented people that had been previously under-utilized.

By offering a compelling vision, Elon has sucked up much of the top talent in the space industry who had just been waiting for someone to come along with an uber-cool program for them to work on. His vision is so cool, in fact, that they are willing to work for much lower wages than they would make at a big defense contractor.

Similarly with Tesla, there was a large pool of talented engineers who are passionate about electric cars, who had just been waiting for the right company to come along and rescue them from dead-end projects at the big car companies.

<comment><USER30> Honestly, this is by far the best explanation of Musk's success I've seen. Target calcified industries where great talent is under utilized.

<comment><USER31> Could he target healthcare next? :-\

Seriously -- it's not glamorous but it could really use an innovator.

(Then again, who would have said an electric car could be glamorous?)

<comment><USER3> Very unlikely according to what Elon said in an interview: Source: [http://www.gq.com/news-politics/newsmakers/200901/elon- musk-...](http://www.gq.com/news-politics/newsmakers/200901/elon-musk-paypal- solar-power-electric-cars-space-travel)

\</comment></comment></comment></comment></comment></comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>----

Elon: "It's important enough to be on the scale of life itself, and therefore goes beyond the parochial concerns of humanity," Musk says of our interplanetary destiny. "We're all focused on our little things that are of concern to humanity itself. People think of curing AIDS or cancer as being very important, and they are—within the context of humanity. But curing all forms of cancer would improve the average life span by only two to three years. That's it."

"In other words, while eradicating disease is a worthy pursuit, and would extend the lives of individual human beings, my life's work is extending the life span of life itself."

\</comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>----

Elon did talk about some projects he would like to do if he had the time. <http://www.youtube.com/watch?v=5FESP1h7IZM>

1\. VTOL supersonic electric jet: fast, quiet, low-cost to operate (what he jokingly referred to in Iron Man 2, IIRC)

2\. Prefabricated metal sections for creating a double-decker/box highway, that could be dropped in place like a lego system with minimal disruption to traffic.

3\. Fusion problem, magnetically-confined fusion, gets easier as you scale it up.

<comment><USER32> People of all ages get cancer, including children.

<comment><USER3> Yes.. it was interesting to hear that coming from someone who has 5 kids: [http://www.forbes.com/pictures/mkm45fjlie/elon- musk-10/#gall...](http://www.forbes.com/pictures/mkm45fjlie/elon- musk-10/#gallerycontent)

</comment></comment></comment><comment><USER33> How about a sense of proportion?

With due respect for electric cars and their great possible environmental impact, SpaceX is what is _important_ of Musk's projects. It is what might make his name remembered in a few hundred years.

<comment><USER34> I think both projects are equally important. Arguably, Tesla might be even more important considering it will affect far more people much sooner.

<comment><USER8> The Tesla is still an impractical car for 90% or more of average consumers. It's still mostly a rich person's toy/fashion statement. That's OK though, if it eventually leads to something that is practical and affordable.

<comment><USER35> The original Tesla was only practical for 1% of consumers. If the Model S is practical for 10%, that's real progress.

Low cost and high reliability come from volume production, which creates a chicken and egg problem. Elon started with the very high end, and is working his way down as a method to gradually build volumes and develop experience and technology to eventually build high volume low cost cars for everyone.

Contrast that to the "expensive fat econobox" approaches the other carmakers tried and abandoned.

<comment><USER10> At $50,000 base price, we're not at 10% yet. But yes, progress.

</comment></comment></comment></comment></comment><comment><USER36> Musk seems like a great guy, but a comparable bet for the journalist would have been closer to $50. $1 million is just not that much to a man worth $20 billion.

<comment><USER37> Where'd you get $20 Billion?

<comment><USER36> Whoops, should be $2 billion. Too many zeroes, misread.</comment></comment></comment>


Chase had ads on 400k Sites, then on just 5k, with same results (2017) - <AUTHOR> https://mobile.nytimes.com/2017/03/29/business/chase-ads-youtube-fake-news-offensive-videos.html <comment><USER2> [https://news.ycombinator.com/item?id=13992576](https://news.ycombinator.com/item?id=13992576)</comment>


MSVC's implementation of the C++ Standard Library - <AUTHOR> https://github.com/microsoft/STL <comment><USER2> I would like to stop here and thank one of the microsoft STL contributors Stephan T. Lavavej[1] for all the work he has done on maintaining his own MinGW repository for many many years, keeping his hand compiled gcc, SDL and boost versions up to date.

1\. [https://nuwen.net/stl.html](https://nuwen.net/stl.html)

<comment><USER3> You're welcome! My MinGW distro is due for an update, which I should hopefully have time for soon.

<comment><USER2> It is a bit embarrassing to admit that I've been a fan of your works since early 2000s. Learned sockets from libnuwen.

[https://github.com/nurettin/libnuwen](https://github.com/nurettin/libnuwen)

<comment><USER3> Wow, I didn't know anyone followed my personal library (when I was still learning the language)! Glad it helped. Cool to meet a true fan :-)

</comment></comment></comment></comment><comment><USER4> These kinds of announcements from Microsoft still boggle my mind a little.

It seems only a little while ago that I heard stories of a friend's high school programming teacher, who received threats from Microsoft's legal department for emailing them a patch to fix a crash in Windows 95.

<comment><USER5> More than half of it is templates that you can't hide just because of the nature of templates.

It's still the same Microsoft.

<comment><USER6> I prefer the same old Microsoft as the FAANG.

</comment></comment></comment><comment><USER7> I'm not sure you've noticed, but one of the core authors of this STL implementation -- Stephan T. Lavavej -- has exactly the initials of the project he's working on: STL. This means he's perfect for this job :)

<comment><USER8> [https://en.wikipedia.org/wiki/Aptronym](https://en.wikipedia.org/wiki/Aptronym)

<comment> 0-_-0 > Jaime Sin who in 1976 was made a cardinal by Pope Paul VI, thus becoming > known as "Cardinal Sin"

</comment></comment></comment><comment><USER9> I'm not well-versed in C++, so I'm a bit confused about the difference between the C++ Standard Library and the Standard Template Library (STL). Wikipedia tells me that they're related but technically separate things, yet this GitHub page says:

> This is the official repository for Microsoft's implementation of the C++ > Standard Library (also known as the STL)

and appears to use the two terms interchangeably. Is this the C++ Standard Library or the STL?

<comment><USER10> [https://stackoverflow.com/questions/5205491/whats-the- differ...](https://stackoverflow.com/questions/5205491/whats-the-difference- between-stl-and-c-standard-library) this is a pretty solid answer to your question

<comment><USER9> Duh, I knew I should've googled first. That definitely clears it up, thanks!

</comment></comment></comment><comment><USER11> The implementation of std::regex appears to be NFA based [1] which is surprising because backreferences are part of the standard.

How are backreferences implemented here?

1: [https://github.com/microsoft/STL/blob/master/stl/inc/regex](https://github.com/microsoft/STL/blob/master/stl/inc/regex)

<comment><USER12> I think you're thinking of DFAs, which don't support backreferences. NFAs do. Right?

<comment><USER11> Maybe? But in theory any NFA can be reduced to a DFA through powerset construction, so there must be something else going on.

<comment><USER13> That's only for regular languages. Backreferences aren't regular.

<comment><USER11> Yes, hence my question about using NFAs for std::regex!

</comment></comment></comment></comment></comment><comment><USER14> Cool! Are you going to accept patches to port this to other operating systems? It would be cool if `clang -stdlib=msvc` joined -stdlib=libc++ and -stdlib=libstdc++.

<comment><USER15> I'm at CppCon and attended the talk today where Microsoft announced this to the CppCon attendees. The folks speaking made it clear that they do intend to accept pull requests, and that they're positive about it being used outside of the VC++ environment under the appropriate license (Apache 2 with LLVM Exception).

<comment><USER16> What's the LLVM Exception? (asking for a friend ...)

<comment><USER17> From [https://llvm.org/foundation/relicensing/LICENSE.txt](https://llvm.org/foundation/relicensing/LICENSE.txt)

        --- LLVM Exceptions to the Apache 2.0 License ----

        As an exception, if, as a result of your compiling your source code, portions
        of this Software are embedded into an Object form of such source code, you
        may redistribute such embedded portions in such Object form without complying
        with the conditions of Sections 4(a), 4(b) and 4(d) of the License.

        In addition, if you combine or link compiled forms of this Software with
        software that is licensed under the GPLv2 ("Combined Software") and if a
        court of competent jurisdiction determines that the patent provision (Section
        3), the indemnity provision (Section 9) or other Section of the License
        conflicts with the conditions of the GPLv2, you may retroactively and
        prospectively choose to deem waived or otherwise exclude such Section(s) of
        the License, but only in their entirety and only with respect to the Combined
        Software.

<comment><USER18> Thanks!

Now, can anyone ELI5 the high-level goal of this exception? At a glance it looks like GPL2 folks are still not happy with the patent provisions of Apache 2.0 and this is added to appease them.

<comment><USER19> There's two pieces to the exception.

The first piece is standard for compilers, and essentially says "our compiler linking in bits of this code into your code doesn't count." It means the license matters if you're modifying the compiler and support libraries yourself, but not if you're merely using the compiler.

The second piece revolves around the concerns of mixing licenses: Apache 2 and *GPLv3 are happy in combination, but that's because of some explicit compatibility text in GPLv3; this extends the compatibility text to GPLv2.

</comment></comment></comment></comment></comment></comment><comment><USER20> There is no reason to use MSVC when clang-cl[1] exists. Both Google and Mozilla build their browsers for Windows platform for more than a year without using MSVC. So it is a pretty solid platform and ready for production.

[1] [https://clang.llvm.org/docs/MSVCCompatibility.html](https://clang.llvm.org/docs/MSVCCompatibility.html)

<comment><USER3> As barchar (my coworker on the STL team) mentioned, not only does Clang use MSVC's STL on Windows, but also the support is from both Clang and Microsoft. We test MSVC's STL with Clang as a first-class citizen, and have shipped features active for Clang before they were active for C1XX (MSVC's compiler front-end), notably Class Template Argument Deduction.

Clang is a great compiler! We think it's extra great with our STL. We added Clang/LLVM to the VS installer to make using it easier.

<comment><USER21> > not only does Clang use MSVC's STL on Windows,

You can use libc++ nowadays. Works good enough for me.

<comment><USER22> std::filesystem? std::error_code?

</comment></comment></comment></comment><comment><USER23> Microsoft has come a long way lately when it comes to open source. Apple seems to be the only major company that is still not an enthusiastic participant.

<comment><USER24> Apple wrote and open sourced their C++ compiler (clang) and C++ standard library (libc++), both part of the LLVM project, years before Microsoft did. In fact it was more than a decade ago in 2007 that Apple open-sourced clang, and now widely adopted by the industry. Sure Apple's participation in open sourcing may not be "enthusiastic" with huge "Heart Open Source" billboards but it gets real job done and has real positive impact.

<comment><USER25> Now if only you could run GPL software on the largest platform Apple sells products for...

</comment></comment></comment><comment><USER26> Ooh, nice! It's always fun to look at alternative STL implementations to see how a class is implemented.

</comment><comment><USER27> Due to its nature of C++ templates, MSVC STL source code was practically available to anybody. I think in theory, I could get hand on free of charge version of MSVC without agreeing the MS EULA then extract the archive, again without agreeing the MS UELA, and peak the source code.

In reality, I don't bother to do that and whenever I teach C++, I ignore MSVC and its STL. I'm willing to teach but Nooo, it's MS who prohibit me to do so.

Now I can't use that excuse anymore.

</comment><comment><USER28> I wish they'd post the UCRT source on GitHub too.

(Yes I know it can be found in the SDK, but having it as a repo on GitHub would just be so much more convenient.)

</comment><comment><USER29> Does this still need

        #pragma warning(disable : 4786)

    ?

<comment><USER30> We are unaware of any such bugs requiring such a suppression; please create a self contained repro and file an issue.

<comment><USER3> That's the symbol truncation warning. IIRC, the suppression is no longer necessary because the compiler removed the warning completely.

</comment></comment></comment><comment><USER31> The MSVC library has always been "source available" with Visual Studio, but I guess MS thought that they're very unlikely to actually make a profit from it[1] so they're giving it a permissive license instead.

[1] The "new MS" seems to delight a lot of people, but IMHO it's not all great; I'd much rather they not be "shedding" all this open-source stuff and kept selling software, if it meant they wouldn't stuff telemetry in everything they touch.

<comment><USER32> Actually, the c++ lib has never been available to my recollection (only the base CRT). And they don't even ship the CRT with the compiler any more.

<comment><USER33> > And they don't even ship the CRT with the compiler any more

Just in case you/any other reader didn't know: That's just because they don't consider the ucrt compiler-version-specific anymore, it's distribution (binaries and source) moved into the windows SDK, E.g. Windows Kits\10\Source\10.0.17763.0\ucrt. The vcruntime is still with MSVC.

But this source never included the STL.

<comment><USER31> _But this source never included the STL._

You mean things like vector, map, etc. ? The source for those is already in the header files.

<comment><USER34> They mean the entire C++ standard library. There's plenty of non-header code in there.

<comment><USER3> The separately compiled parts of the C++ Standard Library have shipped in VS installations for many years (look for xrngdev.cpp in a subdirectory typically named crt/src, that should be distinctive enough). This was intended for debugging purposes, covered by the VS EULA as always. These parts weren't standalone-buildable and we occasionally forgot to ship a file or two, but we always tried to make it all source-readable.

Now, being open source enables much more.

</comment></comment></comment></comment></comment></comment><comment><USER35> Standard library of Cpp uses templates extensively. So both terms are used interchangeably.

</comment><comment><USER36> Ew that's a lot of preprocessor usage.

<comment><USER3> We really don't like the preprocessor, but it is currently necessary for many things, especially supporting different architectures, compilers, and Standard version modes. We regularly purge our implementation of no-longer-necessary macros, even when it breaks (non-Standard) code, as we recently did with `_NOEXCEPT`, and we look forward to removing even more.

Please file an issue if you encounter macros that don't appear to be necessary.

</comment></comment><comment><USER32> I was looking for this a couple of months ago but I couldn't find it in the CRT source. I don't see any tags indicating compiler version releases, so it's a bit useless for debugging purposes (which is the main use I would have for it).

CRT source really should also be also in an easy to find place instead of tucked away in the Windows SDK. But I've given up expecting any kind of actual developer consideration from the new Microsoft.

<comment><USER34> This is a separate layer from the CRT source, which is why you didn't find it there. It's maintained separately, versioned separately, and deployed separately.

This also doesn't actually appear to _have_ any commits corresponding to any released compiler versions- commit history only goes back a couple of weeks. I suspect they'll show up once an actual release has shipped out of this repository.

<comment><USER3> Our commit history is stretched across multiple Microsoft-internal source control systems. In my career (2007+ in MSVC), that's Source Depot, two databases of Team Foundation Server, and currently Git in Azure DevOps.

Unfortunately, we will not be making the history prior to the GitHub "Initial commit" public. It would be a huge amount of work, would bloat the git repo, and would be of little utility. (We occasionally have to perform programmer- archaeology, but rarely more than a year, and usually it's only something that the developer who made the change can do due to personal memories.)

Consider this a fresh start. We will figure out a way to tag commits corresponding to shipped releases.

</comment></comment></comment><comment><USER37> Any color on why the choice of CMake for build? Versus bazel or open-sourcing Microsoft's tool? Something like bazel remote builds is an absolute game changer for large C++ projects (especially versus CMake).

(re "We're working on a CMake build system... Until that's done, we're keeping our legacy build system around in the stl/msbuild subdirectory. (We're keeping those files in this repo, even though they're unusable outside of Microsoft, because they need to be updated whenever source files are added/renamed/deleted. ")

<comment><USER38> If the Microsoft tool you are referring to is MSBuild, that one is already open source.

<comment><USER39> Is it? Finally an opportunity to understand how the damn thing works.

<comment><USER40> [https://github.com/Microsoft/msbuild](https://github.com/Microsoft/msbuild)

It's also fairly well documented: [https://docs.microsoft.com/en- us/visualstudio/msbuild/msbuil...](https://docs.microsoft.com/en- us/visualstudio/msbuild/msbuild)

</comment></comment></comment></comment><comment><USER41> They want you to contribute but you have to assign microsoft your copyright and give them a guarantee in case anyone sues microsoft over your work. (People sue without merit literally all the time and legal fees are bankruptcy material for any individual).

No, flipping, thanks.

Surely microsoft can, you know, pay you for the copyright if they want own it when they decide to merge your work? Or just take it on the same license. And as far as providing legal guarantees for microsoft? Yeah that's gonna be a no from any sane individual. Perhaps a big company like google might agree to those terms but also, perhaps not.

So no they don't want you to contribute, at all, or they'd do it right.

This looks quite disappointing. But as noted elsewhere you can read some source, or fork and refuse to contribute back I guess... But why?

<comment><USER42> > you have to assign microsoft your copyright

No, you don't. You have to provide Microsoft (and anyone else, for that matter) a license to use your contribution per the CLA, but you still own your work. See section 5(a), [https://opensource.microsoft.com/pdf/microsoft- contribution-...](https://opensource.microsoft.com/pdf/microsoft-contribution- license-agreement.pdf).

All open-source licenses effectively require this; otherwise, by default, nobody would have a right to copy or use your contribution.

> give them a guarantee in case anyone sues microsoft over your work

I don't see an indemnification clause in the CLA. Which language are you referring to?

> (People sue without merit literally all the time and legal fees are > bankruptcy material for any individual)

If they had even a shred of plausible belief, the estate of Elvis Presley could sue you tomorrow for defecating on a sofa at Graceland and potentially bankrupt you, even if you've never visited. What's your point?

<comment><USER41> Release your patch on the same license as the project. The End. Everyone is granted a license to the patch under that license. Nobody can take your code and re-license under a non-compatible license.

"a. Copyright License. You grant Microsoft, and those who receive the Submission directly or indirectly from Microsoft, a perpetual, worldwide, non- exclusive, royalty-free, irrevocable license in the Submission to reproduce, prepare derivative works of, publicly display, publicly perform, and distribute the Submission and such derivative works, and to sublicense any or all of the foregoing rights to third parties. "

The project has a license, just use it.

<comment><USER43> You realize most FSF projects have similar copyright assignments, right?

<comment><USER41> I have never been asked for a copyright assignment by the FSF for a patch. Maybe that happens and if and when it does I'd talk about that too.

[https://lwn.net/Articles/359013/](https://lwn.net/Articles/359013/)

This is hardly a dangerous, radical criticism that is novel and needs to be fought on all fronts...

<comment><USER44> How big and/or complicated have your patches been? Copyright assignment is not necessary for not-legally significant changes: [https://www.gnu.org/prep/maintain/maintain.html#Legally- Sign...](https://www.gnu.org/prep/maintain/maintain.html#Legally-Significant)

Copyright assignment has long been used as an argument of why not to contribute to FSF projects, and is arguably one of the reasons that Clang/LLVM were able to garner contributions from a much broader set of folks.</comment></comment></comment></comment></comment></comment>


The Case for a Tesla-GM Merger - <AUTHOR> http://www.popularmechanics.com/cars/hybrid-electric/a25958/the-case-for-the-tesla-gm-merger/?src=socialflowFB <comment><USER2> " Although I have been, and continue to be, bullish on Elon Musk's prospects, I'm often told by more sober and successful men that Tesla is not built on sound business principles."

"The Volt suffers from its association with Chevrolet and GM. If the only place to buy a Volt was the Apple Store, every celebrity in the world would have five of them and the waiting list would stretch into the next decade."

"The potential benefits of a Tesla-GM merger are plain to even a business- school dropout like your humble author."

"Forget the Gigafactory and all those headaches. General Motors has factories aplenty. And with the pros from Detroit on the case, Tesla can focus on innovation instead of sales-and-service support."

This seems to be like a very naive few from an over simplified model. "Forget the gigafactory" along with everything that makes this whole concept silly. I still don't see the "potential benefits being plain to see".</comment>


Google flags all internet as malware - <AUTHOR> http://www.techcrunch.com/2009/01/31/google-flags-whole-internet-as-malware/

<comment><USER2> For those who don't get to see it.

<http://myks.org/stuff/google_may_harm_your_computer.png>

</comment><comment><USER3> So it looks like google fixed it pretty quickly. They are saying it is human error right now. What they are saying happened is that they were updating a list of malware websites. Some how the there was a typo made and the servers were told to include every website as malware. It was shortly fixed, and it only lasted about 40 minutes.

Contrary to early reports, google did not get their malware data from stopbadware.org, google just works with the site to create the criteria for the list. Also, legitimately bad sites still have warnings. Link:[http://googleblog.blogspot.com/2009/01/this-site-may-harm- yo...](http://googleblog.blogspot.com/2009/01/this-site-may-harm-your- computer-on.html) Link:[http://blog.stopbadware.org/2009/01/31/google-glitch- causes-...](http://blog.stopbadware.org/2009/01/31/google-glitch-causes- confusion)</comment>


The Evolution of Stupidity: File Systems  - <AUTHOR> http://www.enterprisestorageforum.com/storage-management/the-evolution-of-stupidity-file-systems.html <comment><USER2> The article talks about repeating mistakes, and descends into the world of file systems, but I didn't quite understand what the problem is that is repeated there.

Anybody care to explain?

(FWIW my impression is that there's lots of reinventing going on in the open source FS development; everybody wants to reinvent the cool features from ZFS, but with improved performance or a slightly different architecture, and they all seem to be eager to learn from their own and other people's mistakes).

<comment><USER3> I, for one, thought that he was going to argue against the overall hierarchical FS metaphor. Personally, I wonder what things would be like if the OS provided a key-value store (or some such NoSQL-ish API) as a core service instead.

<comment><USER4> I suspect that you would still have some semblance of built over such a file- system. Hierarchy is useful for organizing data, and I often find myself using keys that allow me to abstract hierarchy in my NoSQL systems. ex: "/foo/bar/0113" -> data

</comment></comment></comment><comment><USER5> I'd hardly call people who design file systems stupid.

I don't expect them to be psychic, or know everything. I don't even expect them to be the most knowledgeable person in their field. They're just human.

Calling them stupid because you saw something they didn't isn't just rude, it's ridiculous.

</comment><comment><USER6> I'm fine with some of the criticisms but using XFS as the posterchild example of a free file system done 'right' is a bit much. XFS has absolutely terrible performance for lots of use cases (deletions, for instance).

What the author also fails to understand - apparently - is that the problems plaguing the storage industry are perennial, they will never be resolved. We will always yearn for more storage that is more reliable at a lower price- point, no matter how good our current technology is.

<comment><USER7> _> XFS has absolutely terrible performance for lots of use cases (deletions, for instance)._

Depends /heavily/ on hardware. XFS evolved on high-end machines, and performs awesomely when you have:

* EITHER large write cache (write cache size >> journal size), think `decent RAID controller',

* OR at least put the journal is on a separate harddrive -- which is very real on average workstation.

Been there, done that, the difference is astonishing.

It boils down to specific media access patterns: XFS uses mixed physical/logical journaling; some operations cause a lot of `physical' (i.e., low-level) representation of directory and file metadata to be written to the journal.

Having harddrive's heads fly back-and-forth between different areas (journal vs. metadata) is a sure recipe for abysmal performance. On the other hand, if you have large write cache to handle journal, or at least employ separate harddrive head to serve journal, directory and file metadata has pretty good locality (thanks to very smart allocator) and the other head doesn't have to move too much.

EDIT:

it's worth noting XFS handles large (multi-gigabyte) files very well, as compared to other filesystems. Both r/w access and creation/removal is fast, on any hardware. This is XFS's original and primary use case: handling large multimedia and scientific datasets.

Want to keep countless virtual machine images? XFS is the way to go, especially thanks to smart allocator which lessens fragmentation as compared to competing filesystems.

tl;dr: XFS is optimized for handling large files. With the right setup -- possible on mid-end hardware -- it also handles numerous small files (say, linux-kernel-size projects) very well.

<comment><USER6> Yes, large files are fine.

But contrary to your claim many (10's or 100's of millions) of small files and performance is terrible, orders of magnitudes slower than vanilla ext3.

I don't consider the linux kernel to be 'many' files.

<comment><USER8> As we were developing openstack swift, we evaluated many different file systems and settled on xfs because our testing showed it to be faster than other file systems when storing many small files (where "many" is much more than the number of files in the linux kernel).

Unfortunately, I can't find the test results that back up my claim.

<comment><USER6> Yes, storing files is fast. We ran similar tests to yours and storing never was the problem, deletion also wasn't a problem as long as the number of files was in the low millions. The problem comes around when you start to delete files once you have 10's of millions of entries.

I helped a customer set up a CDN and this was one of the most painful mistakes I ever made to correct for. It took weeks to migrate all the data to EXT3 filesystems while the system was live. The whole point was to end up with something scaleable, the 'sweep' ran 3 months behind the write so after 90 days, with the filesystems nicely filled to 80% capacity or so we found out that deleting a single file would take an impossibly long time.

In the end we found a manageable workaround, to try to select candidates for deletion on a directory-by-directory basis which improved performance to the point that we could migrate the data but it still was a pretty scary operation.

</comment></comment></comment></comment></comment><comment><USER9> A linkbait headline that makes the writer seem like the one that is stupid.

If anything he seems to be saying that old known mistakes don't get fixed as we don't learn from the past. This is not evolution but it is an example of the widescale misunderstanding of that word that seems to be common in some parts of the world, it is in fact the exact opposite.

</comment><comment><USER10> It's not a very good article. It's rambling, almost incoherent.

</comment><comment><USER11> I think he is confusing ignorance for stupidity. It's difficult to find good, sensible information about file systems. And I'm only talking about selection for using a file system. If I wanted to develop one, where would I go to learn?

</comment><comment><USER12> I think this article is (doing a bad job of) attempting to explain that limitations behind the current byte-stream oriented interfaces and hierarchical organizations that have been around for 20 years. These two limitations show their heads when 1) people want extreme speed (parallel I/O), and 2) file systems begin to contain billions of files. People are storing more and more structured data, and building enormous middleware layers on top of the read/write to only present richer interfaces to higher levels.

</comment><comment><USER13> Young people only want to talk about the "presentation"? Appliance based systems were far easier to "management" than provisioning file systems?

Rambling & incoherent this article is.

</comment><comment><USER14> Did he have a point?

</comment><comment><USER15> print version: [http://www.enterprisestorageforum.com/print/storage- manageme...](http://www.enterprisestorageforum.com/print/storage- management/the-evolution-of-stupidity-file-systems.html)</comment>


The German Tank Problem (2010) - <AUTHOR> http://www.statisticalconsultants.co.nz/blog/the-german-tank-problem.html <comment><USER2> Countermeasures* to this problem reminded me of an incident in which the Germans were able to outsmart Allied military intelligence.

* [https://en.wikipedia.org/wiki/German_tank_problem#Countermea...](https://en.wikipedia.org/wiki/German_tank_problem#Countermeasures)

This is something I read in _The American Axis,_ which discusses how Charles Lindbergh was duped into helping delay American involvement in WWII. The short version: He was taken on a grand, multi-day tour of the Luftwaffe's large air- force… never the wiser that the planes he saw on airbase after airbase were the same ones, flown in overnight from the last airbase! Naturally the US MI questioned Lindbergh after his travel and grossly overestimated the power and size of the Germain air force, just as they had intended!

(As I recall, Lindbergh wasn't a Nazi sympathizer so much as a dupe; although the other subject of the book – Henry Ford — certainly was. In fact, Ford plants produced the faultiest American war planes, by far, dooming quite a number of American pilots. There's every reason to think this was intentional.)

 _Update_ I read this book 8 years ago and my memory isn't 100%. It looks like Lindbergh, per the book, was also a Nazi sympathizer to some degree, although he comes off much more sympathetically than Ford.

<comment><USER3> > Ford plants produced the faultiest American war planes, by far, dooming > quite a number of American pilots. There's every reason to think this was > intentional.

That is quite an assertion to make about someone, even long dead. Could you provide some evidence?

<comment><USER2> As I mentioned, I'm pulling this from a book. [http://www.amazon.com/The- American-Axis-Charles-Lindbergh/dp...](http://www.amazon.com/The-American- Axis-Charles-Lindbergh/dp/0312290225)

One reviewer on Amazon says:

> _This is one of the most carefully researched, extensively footnoted, > beautifully written, books on this subject ever published. The sources > include entries from Lindbergh 's journal, Lindbergh's speeches, FBI files, > letters from German archives, Ford company records, and many other primary > sources. Every assertion of fact is backed up with unimpeachable > documentation._

IIRC — by this point it was Ford's son running the plant(s) in question, but Henry Ford himself is not just a known anti-Semite, but quite literally ran and anti-Jewish propaganda paper in Dearborn, MI. It hardly takes a leap to look at the abysmal performance of planes built by Ford and suspect that management there was particularly … lackadaisical in their pursuit of quality.

<comment><USER3> > Henry Ford himself is ... a known anti-Semite

Agreed; he's not my favorite person at all and made an awful call by supporting Hitler. But ...

> It hardly takes a leap to look at the abysmal performance of planes built by > Ford and suspect that management there was particularly … lackadaisical in > their pursuit of quality.

Things like that alarm me; it's a proven method for condemning the innocent and unpopular. We can form hypothetical links between many events - Billy is a mean person and disliked Joe, Joe's been murdered, so hang Billy; or, every morning the rooster crows and then the sun rises, therfore the rooster is doing it - but most will be false. We need evidence to differentiate truth from imagination.

From the Amazon page, Publisher's Weekly seems to think less of the book (though Kirkus likes it):

 _Although Wallace (Who Killed Kurt Cobain?) is a recipient of Rolling Stone 's Award for Investigative Journalism and appears to have done much primary research, he delivers a highly speculative rehash of material handled much better in A. Scott Berg's Lindbergh, Robert Lacey's Ford: The Man and the Machine and such seminal studies as Charles Higham's American Swastika. Wallace tries and fails to sensationalize well-known facts about the parochial American fifth column of the late 1930s and early '40s, a bungling movement of which Ford and Lindbergh were among the most public faces. Wallace sees a conspiracy in what he presents as Ford's pro-Nazi partnership with Lindbergh: a dark and powerful alliance designed to hinder the Allies at every turn. In fact, the two men were far more naive than effectual in their attempts to prop up American isolationism before Pearl Harbor. And Lindbergh, who counted Harry Guggenheim among his closest friends, found Ford's hatred of Jews repugnant. Once war was declared, both Lindbergh and Ford helped the Allied effort. Lindbergh helped develop the Corsair and later, as a "civilian observer," flew more than 25 combat missions over the South Pacific. At the same time, Ford (with Lindbergh's help, and after a few false starts) became the leading manufacturer of the B-24 bomber. Were Ford and Lindbergh half-witted dupes of Nazi propaganda before the war? Undoubtedly. Were they Nazi agents either before or after the start of hostilities? Wallace fails to make the case._

<comment><USER2> I used the word "suspect," didn't I? The numerical output of B-24 bombers is dramatically undercut by their failure rate.

The quote you're posting is mostly about Lindbergh. I don't recall the book trying to say he was "partnered" or "allied" with Ford in a Nazi conspiracy, mostly that he was a useful dupe. This changes nothing. We will probably never know for sure how much of the bombers' poor construction was intentional or not, but you can hardly say there's no reason to seriously _suspect_ it.

<comment><USER3> > We will probably never know for sure how much of the bombers' poor > construction was intentional or not ...

That's the reasoning that so alarms me. That can be said about anything (and is often used by propagandists): We will never know for sure if person X kidnapped and killed a prostitute, or if AIDS is a conspiracy of western doctors to kill Africans, or if the Muslim next door is a terrorist, or if aliens kidnapped my cousin, or if the KGB is following me.

Without evidence it's just a random guess and slanders the accused.

</comment></comment></comment></comment></comment></comment><comment><USER4> Note to self: when manufacturing tanks, use UUIDs as identifiers, not sequential integers.

<comment><USER5> This also matters for user visible ids in applications, like user ids, etc. It's really easy to say your competitor has only 2000 users if you sign up to their service and your id is 1992.

<comment><USER6> pks are sequential. If you sign up as 1992 they have 1992 customers.

<comment><USER7> _pks are sequential. If you sign up as 1992 they have 1992 customers._

Does not follow. Only follows if:

\- PKs are sequential

\- _and_ PKs are non-zero non-negative

\- _and_ they have not been reset at any point (or the sequence generation otherwise modified)

\- _and_ all preceding PKs are those of customers (as opposed to test values, invalid PKs due to a sequence number that was generated but the registration did not complete, or customers who have since left the service)

If PKs are sequential and natural and the sequence has not been modified, then you know there are _no more than_ 1992 customers. Not exactly 1992.

</comment></comment></comment></comment><comment><USER8> I always love this story.

I wonder about the potential for error due to bias in the collection process. For example, I would expect older tanks to be more prone to breaking down due to mechanical problems, which might change how likely they are to be captured or destroyed. (I can't tell if that likelihood would go up, because they're more likely to break down in combat, or if it would go down, because they're more likely to be in the shop instead of on the battlefield.)

Evidently it didn't affect the accuracy of this technique too badly, but it makes me wonder.

<comment><USER9> But only the single largest serial number, and the number of samples are being used. Not any of the serial numbers seen besides the largest one.

That means any such noise as you describe will have no effect. As long as a high-serial number tank is ever destroyed or captured, the method will work. It only takes one.

<comment><USER8> You can get away with only using the count and the maximum because of the assumption of uniformity. Once that assumption goes away, the assumption no longer works.

If earlier tanks are much more likely to be captured, then the number of samples will be exaggerated compared to the maximum number seen, so you'll underestimate production. If earlier tanks are much less likely to be captured, then the number of samples will be smaller compared to the maximum, and you'll overestimate.

</comment></comment></comment><comment><USER10> Alternative application of the solution. It's an interesting bit of math, with many theoretical and real world applications.

[http://what-if.xkcd.com/65/](http://what-if.xkcd.com/65/)

</comment><comment><USER11> Thus Seal Team "Six".

</comment><comment><USER12> The moral of the story is to use random serial numbers.

<comment><USER13> no you want to just skip numbers randomly to inflate the estimates

<comment><USER14> The irony here is that, at the beginning, the Nazi Party started counting members at 500 to make themselves seem bigger than they were.

<comment><USER15> <glances at the UIDs in his system's /etc/passwd>

</comment></comment></comment></comment><comment><USER16> This reminds me of a popular German graduation prank. Three goats are set loose in a school building. However, before the goats are released, the students paint the numbers 1, 2 and 3 on them to facilitate an orderly recapture procedure.

<comment><USER17> I think you mean 1,2 and 4.

<comment><USER18> You may have missed the joke...

<comment><USER19> Explain? I don't get it

<comment><USER2> The joke plays off the one we've all heard before, about pigs being released with numbers implying one is "still at large" — the joke being that the Germans are such industrious and efficient engineer-types that even school pranksters still facilitate an efficient clean-up. I thought it was clever!

<comment><USER20> I'm a german and i didn't get it. Which may in itself be an implicit joke about germans.

<comment><USER2> I'm not surprised. It's based on stereotypes that an actual German would not be as likely to share. (You may also be less likely to have heard the joke this plays off.)

</comment></comment></comment></comment></comment></comment></comment><comment><USER21> Ok, can someone _explain_ why this method performs so well?

Take the highest serial number, add a tenth of it then subtract 1. Presto.

What is the underlying logic here?

<comment><USER17> It's not "add a tenth":

> For example, let's say 10 tanks were captured

It's "add 1/n" where n is the number you collected.

Think of this related problem. Numbers are randomly chosen from 1 of 2 ranges. One range is from 0-10, the other is 0-100. The numbers are:

4 3 1 8 5 2 7

Which range were the numbers chosen from? It could be either, but statistically the answer would be from 0-10, since if they were chosen from 0-100 the chances of all of the numbers being lower than 10 is very low.

Now, say you didn't know the ranges ahead of time, and the numbers were:

117, 232, 122, 173, 167, 12, 168, 204, 4, 229

Now, the upper bound can't be 100 or 200, since there is a 232. So it is at LEAST 232.

Which is more likely, that the upper bound is 256, 500 or 1000 ?

Intuitively you can assume that if it was 500+, you would expect at least one number in the 300-500 range.

The highest number should be 232 + some amount that is inline with all the other numbers. It could be exactly 232, but the chances that you happened to pick the highest number itself is also low.

Basically you are solving this problem:

If you were going to select 10 numbers at random from a range of 0 to N, how high should N be so that there is a high probability that the highest number you select is only 232.

Since a uniform distribution is assumed, you are basically just adding one more uniformly distributed data point.

<comment><USER22> It's actually "add m/n" where n is the number you collected and m is the highest sampled serial number.

</comment></comment></comment><comment><USER23> An interesting aspect to this that seems to be overlooked is that the conventional intelligence was probably intentionally fudged in order to garner funds and support and raise anxiety and fear as a means for motivation.

You can't overestimate the production of tanks by that much when you are observing the production facilities. You would either have to have been tricked, i.e., knowing that it is being observed the same tanks were "shipped" multiple times or you, for some reason thought there were more factories which you didn't have eyes on. I'm not sure how to judge whether it would have been in the Nazi interest to provide an impression of high productivity or hide the true nature of the numbers.

Another interesting aspect to this is that it provides the background for why the US military operates with what would otherwise be seen as abject retardation. There is a strategic value in being aimless, illogical, and confused in your operations for various reasons. One reason is that if you have "random" serial numbers your enemy can't do these kind of calculations.

</comment><comment><USER24> Reminds me of [http://blog.cryptographyengineering.com/2014/10/attack-of- we...](http://blog.cryptographyengineering.com/2014/10/attack-of-week- unpicking-plaid.html)</comment>


U.S. recession odds rise to 40-45% in six months: DoubleLine's Gundlach - <AUTHOR> https://www.reuters.com/article/us-funds-doubleline-gundlach/us-recession-odds-rise-to-40-45-in-six-months-doublelines-gundlach-idUSKCN1TE36Q <comment><USER2> I'm surprised this sort of thing is on HN's front page.

Yes, we are on the tail end of a long expansion cycle, and a recession is inevitable. However, prediction headlines like this have been on the front page of CNBC, MarketWatch, etc every other day for FIVE YEARS now.

On the alternating days, there are headlines about how the expansion has a xx% chance of continuing for another two years.

Financial news is the lowest form of clickbait trash.

<comment><USER3> > a long expansion cycle, and a recession is inevitable

Not necessarily - Australia has an expansion ongoing for the last 30 years.

</comment></comment><comment><USER4> Yield curve inversion != recession, as most people on HN have clarified numerous times. it's not even the top 10 predictors.

US has THE strongest economy in the world right now. You'll see depression in China (already happening), and recession in Japan/EU/Canada/Mexico first. US has the lowest unemployment rate in 30 years, wage growth, 3% gdp growth, and foreign direct investments going through the roof.

<comment><USER5> >US has the lowest unemployment rate in 30 years, wage growth, 3% gdp growth, and foreign direct investments going through the roof.

This really has nothing to do with whether a recession is around the corner or not. They don't just gradually come about over the course of years; they happen in an instant. Before anyone is even aware of what's happening the layoffs start piling up and it becomes exponential, as decreased business spending and consumer confidence feedback into each other. Fall of 2007 was the peak of irrational exuberance with a multi-decade low in unemployment and all time market highs, but by spring of '08 there was mass panic and people had lost everything.

<comment><USER4> the 2008 recession was characterized by 0% interest rate and bad mortgage loans. the 2000 recession was characterized by threats of emerging jobs offshoring and bad investments into internet companies that don't make money. the 1990 recession was characterized by threats of sky high oil price, and so was 1980.

Nothing like that exists to hurt US economy right now

<comment><USER6> >...bad investments into internet companies that don't make money.

Uhh

</comment></comment></comment></comment><comment><USER7> Nobody really knows when the next recession will be or how bad it will be. Whenever it does arrive, the most interesting impact will be on the pension funds. A terrible but short recession e.g. 50% equity decline for 1-2 years after which the Fed re-inflates the market is not as bad as a prolonged period of stagnation e.g. 20% equity decline and then no growth for 5-10 years. In the second scenario, trillions of dollars worth of pension funds head towards insolvency.

</comment><comment><USER8> There will be a concerted effort to tank the economy before the second half of 2020, I would be willing to take bets on it, particularly if the extended faffing about in the wake of the Mueller report's failure yields nothing and Democratic candidates continue to be this underwhelming.

<comment><USER9> It so happens that it's very easy to bet on that and put your money where your mouth is. Just buy some LEAPS puts on SPY. Don't even need margin for that.

For example the SPY 2020/09/18 $230 put trades for ~$5.6 a share.

<comment><USER10> I've never tried this -- how would I do this using ETrade or similar?

<comment><USER9> Just to be clear - I think you're wrong, so I don't recommend it.

You need stock options permissions (don't know where is that in ETrade), and then you need to find options on SPY. Here are quotes on Yahoo: [https://finance.yahoo.com/quote/SPY/options?p=SPY](https://finance.yahoo.com/quote/SPY/options?p=SPY), select desired expiration date. Wait for VIX to be low so that premiums are cheap, and load up on those puts.

And again, I do not recommend it. You'll quite likely lose 100% of the option premium you paid.

<comment><USER10> Understood, not planning to do this immediately.

I've also considered trading the VIX, but the only ETFs I've found seem somewhat uncorrelated or less volatile. Can VIX be traded directly?

<comment><USER9> You can go long or short on VIX but read what "contango" is and what happened during the volpocalypse.</comment></comment></comment></comment></comment></comment>


Ask HN: FOSS projects recommendations for learning Python Programming style - rwx<comment> </comment><comment><AUTHOR> Django is a great way to learn how to do things right. They aim for high test coverage, PEP-8 code, latest Python support without breaking legacy support (with clear breaks), high-quality documentation, and so on.</comment>


Fedora Summer of Open Hardware and Fun Sweepstakes - <AUTHOR> http://orvtech.com/en/general/verano-hardware-libre-fedora-raspberry-pi/ Finally the prices for the Fedora Linux open hardware started to go out some weeks a go, I got mine last week.
http://orvtech.com/en/general/verano-hardware-libre-fedora-raspberry-pi/ <comment><AUTHOR> Finally the boards started to ship, I got my Raspberry Pi last week. It is smaller and faster than I was expecting to be hones.</comment>


Google Wallet moves to the cloud, opens up to all credit and debit cards - <AUTHOR> http://www.engadget.com/2012/08/01/google-wallet-moves-to-the-cloud-opens-up-to-all-credit-and-deb/

<comment><USER2> There's a bit of sleight of hand going on here, in that it seems to be a Mastercard prepaid card in the phone which just charges your transactions to other cards you have on file with Google. So you don't pay the retailer with Amex, you pay with MasterCard and the charge eventually lands on your Amex. This makes it a bit like PayPal, but we already know that PayPal prefers to draw money from your bank account rather than your credit card because it is cheaper. It will be interesting to understand how the fees are structured around all of this because it seems to me there could be 2x friction in play...

<comment><USER3> I wonder how this plays in with chargebacks & consumer protection from cards.

If Google's partner bank is a proxy between the merchant and, say, your Amex, what happens if you need to invoke a chargeback? Does Google's partner get involved and push back against Amex?

</comment></comment><comment><USER4> Summary spam stuffed and tagged with SEO spam.

[http://googlecommerce.blogspot.com/2012/08/use-any-credit- or...](http://googlecommerce.blogspot.com/2012/08/use-any-credit-or-debit- card-with.html)

<comment><USER5> Ironically, I posted that link immediately after we posted the announcement and it didn't get any traction. I think people like the editorialized versions better, or something.

<comment><AUTHOR> I think HN's policy of requiring the article title be used as the submission title really hurts here. Blogspam reposts generally have snappier titles than primary sources like company blogs (even to the point of outright lying in many cases).

This is a hard problem that no social news site has solved. One idea would be to allow users to connect stories to each other through some sort of collective voting mechanism, so blogspam submissions could be linked to each other and the primary source even after they hit the homepage.

<comment><USER4> I think HN could easily solve it - they don't need anything from these sites, a moderator could just replace their URLs and it doesn't matter if the content farms don't like it - it's not like digg and reddit where their widgets made it some sort of (probably massively lopsided) traffic and link exchange.

<comment><USER6> I am so in favor of this approach. If HN wants to maintain high quality, it needs to make a commitment to primary sources and ban secondary sources.

Articles that are replies to articles should be fine, but articles that summarize other others really have to go unless they (1) do a remarkable job of shining like on the subject or (2) provide a novel viewpoint/opinion amongst the summary.

We should call seo spam summaries "spummary" or "spammary".

</comment></comment></comment></comment></comment><comment><USER7> For those of you who wonder why Starbucks and others continue to support their own card apps instead of PayPass/Google Wallet: credit card fees. Starbucks loads up $25 at a time, with a single $0.30 fee (or whatever they are charged), rather than having to pay $0.30 per small $3 (iced coffee, for example) transaction.

</comment><comment><USER8> AFAIK, this still does not support phones which lack a secure element (T-Mobile US, SGSII... probably others as well). Hopefully that will come in another iteration or two.

<comment><USER9> Those phones don't have NFC anyway, which is a more realistic impediment. It's NFC-based wallet that is the real innovation here. Online payments by themselves are hardly new territory.

<comment><USER10> However, my Nexus S (on T-Mobile) does have the NFC chip and the Play Store is still reporting it as being incompatible.

<comment><USER11> Could you side-load it?

<comment><USER10> I'm planning to try. My wife's got a Galaxy Nexus on T-Mobile, so I'll install it there and see what I can do with it. Now to get it away from her for 30 minutes...

</comment></comment></comment></comment></comment><comment><USER10> Still being blocked for users on Verizon....

<comment><USER12> My friend with a Verizon Galaxy Nexus who had previously sideloaded the Wallet.apk says that his Wallet application updated from the Play Store today with the new features.

<comment><USER3> There seems to be a loophole where if you have already sideloaded a version originally downloaded form the Play Store (i.e. if you extracted the apk from a rooted HSPA+ Nexus device), then you can get updates.

If you've not installed it, then the store won't let you have it.

</comment></comment></comment><comment><USER13> Does this have anything to do with competing with Stripe as a payment system? The article seems to focus on the mobile aspect, so I'd assume not, but engadget focuses on consumer improvements.

</comment><comment><USER14> When can I use my HTC One X as a replacement for my credit card? Call me when that happens, until then I see this as just another PayPal.

Unless we're already there, but some short internet searches found nothing but misleading blog post titles.

<comment><USER15> The One X has an NFC sensor, so it should work with Wallet. Doesn't it?

<comment><USER16> The international version does, after lots of hacking and side-loading. The AT&T HTC One X does not. It is missing the secure element. As soon as Google decides to take this seriously and make their software compatible with devices whose names do not start with Nexus, then yeah, I'll be interested in this too.

And it really is up to them. It shouldn't be any more difficult than hitting install in the Google Play store. If I choose to buy an "insecure" phone, that's up to me. Warn me, fine ... but don't make the software incompatible. That's lame.

<comment><USER17> It's not that it is missing the Secure Element. Simply that Google does not have access to the Master Keys for that Secure Element.

</comment></comment></comment></comment><comment><USER18> They need to get WalMart, Target and some large grocery stores to gain critical mass here.

<comment><USER19> Works at Whole Foods and Peet's coffee.</comment></comment>