"Change the PCB" and "Move the Fans" – Nvidia Teases Its Radical RTX 30XX Cooler - <AUTHOR> https://www.overclock3d.net/news/gpu_displays/change_the_pcb_and_move_the_fans_-_nvidia_teases_its_radical_rtx_30_series_heatsink/1 <comment><USER2> wow, it's like they're saying that... they.. what? rotated the power connector 90degrees and "took a holistic approach" or did I miss what it was, this breaktrough in thermal design ? maybe I was distracted by their fancy animations and missed the part where they told what it was they changed</comment>


Use "-g -O2" option when employ gcc to compile your project - <AUTHOR> http://nanxiao.me/en/use-g-o2-option-when-employ-gcc-to-compile-your-project/ <comment><USER2> If you care about performance in your debug build, GCC has a special option for that: -Og

Changelog: "A new general optimization level, -Og, has been introduced. It addresses the need for fast compilation and a superior debugging experience while providing a reasonable level of run-time performance. Overall experience for development should be better than the default optimization level -O0. "</comment>


Nokia former engineers now their software runs on 1B mobile - <AUTHOR> http://nordic.businessinsider.com/two-former-nokia-engineers-did-what-google-and-apple-wouldnt---now-their-software-runs-on-1-billion-mobile-devices-2017-5/ <comment><USER2> You write about an application yet not a link to the project's website in the article.</comment>


Demo HN: Using NLP to process Twitter feeds. Released beta site, need feedback - <AUTHOR> http://beta1.tweetspeedreader.com

<comment><AUTHOR> The site is largely an experiment. If useful I'll make sure it stays up. I'm mainly interested in using Natural Language Processing techniques to determine relevant content in order to filter through social streams. As a heavy twitter user and developer, I'm scratching my own itch.

<comment><USER2> Hey congrats on doing this. NLP on tweets is not trivial at all given just how colloquial it is. I like being able to navigate a visual map of what people are talking about.

<comment><AUTHOR> Thanks. I've had to develop custom corpora for handling misspellings, netslang, SMS slang etc... even with this very early demo I have ideas which I haven't implemented. The next releases should do a considerably better job.

</comment></comment></comment><comment><USER3> Why do you need write access to my account?

<comment><AUTHOR> Write access is needed because of a feature where you can post replies, favorite, or new posts. This feature isn't turned on in the beta but is planned for future releases. I should have figured this might concern some people starting off. No ill intent is intended. Thanks for the feedback, I will need to turn this off prior to a second release.

</comment></comment><comment><USER4> Cool service - but with one little bug: it seems that you cannot handle non-US letters like æøåÆØÅ.</comment>


Are Google and Facebook Evil? - <AUTHOR> https://dev.to/dougblackjr/are-google-and-facebook-evil-bac <comment><USER2> Corporations aren't evil. The people that work at them are (or aren't).</comment>


Why do we have so many lives? - <AUTHOR> http://leostartsup.com/2011/12/why-do-we-have-so-many-lives/

<comment><USER2> Because, if you can't keep one friend's secrets in a different box from another's, you'll never have more than superficial friendships. People will learn that you cannot be trusted and won't tell you anything important, particularly if you ever publish things. There are all kinds of things I know that I cannot publish, or repeat from one friend to another; that's the price of intimacy.

Because the ability to change your focus, your attitude, or your mood – to adopt, perhaps, a wholly different personality – by changing contexts is a superpower, not a liability. Put me on the karaoke stage and I'm a big ham; put me in a suit and I'm a professional; put me in a library with a math book and I'm a mathematician; put me in the kitchen with a chef's knife and I can make dinner. I don't try to solve complex math problems on the karaoke stage, and if I can't stop thinking about cooking in the library I'm not going to enjoy doing math problems. My programmer self turns out to be annoyingly nonverbal when he's focusing, so it's a good thing he's not always around or my poor friends and relatives would never hear from me.

And because the idea that one has a unitary, consistent, conscious personality is ultimately an illusion anyway. I've read enough psychology and philosophy to know this, but I've also met enough Alzheimer's patients to _understand_ this.

There are other reasons, but this is a start.

</comment><comment><USER3> I pride myself on being able to move between many different worlds, being able to communicate and befriend different kinds of people. I don't speak the same way to my peers and to 50-year olds. There's nothing wrong with that. It's challenging, but it's good for the mind. Moving successfully in different cultural circles gives you better perspective on the cultural forces which unconsciously shape you and your peers.

"Just be yourself" is one of those overly facile pieces of common advice that is more harmful than helpful.

</comment><comment><USER4> (I feel like the author doesn't say enough to distinguish the personality differences between the example lives and the new "single" life.)

I'm all for reducing complexity in one's life but not at the cost of surrounding myself with people that challenge my own understanding and beliefs. They're not there to convince me to change my mind, instead they help me solidify my position better. Having different parts of one's personality is important to not become a narrow-minded or uninformed individual. Your own personality facets shouldn't be so divergent that you change so much in different social situations and never move beyond superficial communication.

If I only ever focused on one facet of my personality I wouldn't learn anything. That seems counter to the approach an entrepreneur/founder would need to be successful.

</comment><comment><USER5> Do we really have many lives or do our lives have many facets?

I think there are some people who actually have multiple lives, but most of us just have many sides because we have to deal with people in different ways, but it's nowhere close to being whole other person with a different life.

<comment><USER2> The safe thing to say is that "having many lives" is just a metaphor that means much the same thing as "having many facets of one's life".

But for an infinite amount of additional discussion, visit the local philosophy department.

</comment></comment><comment><USER6> I saw the title and I thought: oh, an article written by a younger person. And boom, sure enough, there it was.

I do not mean that as a ageist comment at all. It's just one of the things I've noticed about younger people is that they feel there are all these different lives. And somehow they must choose between them. To me, part of the reason why is that they confuse who the actor and who the responder is.

To assume there are all these different lives, you must assume that there are all of these different social groups that "tell" you what to do and how to act. Then you respond doing as you are told. _It's not that this is a lie, it is just woefully incomplete_. A better way of looking at things is that _you_ are the person communicating. As a good communicator, it is your job to communicate things in ways various groups can consume. For my existentialist friends, being deep does not preclude being authentic.

So no, I don't tell the same off-color jokes in a religious group as I would when going out with friends to a bar, but that's not because I am a different person, am trying to live a different life, or any of that. That's because I have learned that to effectively communicate with some people, off-color jokes shut them down. All communication ceases. This is bad for me and for them. So I choose to adapt my communication style. They can still know that I like an off-color joke -- I'm not hiding who I am or trying to change myself -- it's just that I'm smart enough not to share those things with them.

Something I've been cogitating on for a while: I think that younger people have kind of a hole in their life where they don't really know who they are. Probably a natural part of growing up. Because there's this uncertainty of their own personality, it's rather easy to begin to feel as if perhaps you have more than one! (Perhaps people of all ages feel this way. For some reason it is much more noticeable in younger folks. I know I felt this way when I was younger.)

Having said that, I'd also add that there's a difference between personal and public information. I am a firm believer in honesty and openness. But that doesn't mean that I have any responsibility to dump my life story on random strangers. It just means that for those things I choose to share publicly, I choose to be as honest as possible about them. _Given the context._

In fact, for sake of argument I'll take the opposite opinion (I love being a contrarian!) I'd argue that most people are really, really bad at being able to adapt their communication skills to a wide range of audiences. Instead, they seem to feel that nuance and depth are somehow deceptive. I blame this on many things, but technology definitely plays a role. When everything you do or say is public, it has a tendency to turn you into a one-dimensional person. That's a shame. It lowers the level of civil discourse for society as a whole.

</comment><comment><USER7> "Life is much more successfully looked at from a single window, after all." -- _The Great Gatsby_</comment>


Flight rules for Git – What to do when things go wrong - <AUTHOR> https://github.com/k88hudson/git-flight-rules <comment><USER2> I was a little disappointed to not see anything I don't use regularly. Some explanation of reflog might be helpful, in addition to a bit of detail on git internals that explains why things in Git are never really deleted until you run `git gc`. For instance, just yesterday I realized that a branch I had deleted erroneously (bad branch name) contained a few days of work. I looked in git reflog to find the SHA for the last time I checked it out, checked out that SHA, then made a new branch. No work lost. If I didn't know that, I'd be out a few days of effort.

<comment><USER3> > things in Git are never really deleted until _you run `git gc`._

wording there is a bit dangerous, see this snippet from `man git-gc`:

        Some git commands run git gc --auto after performing operations that could create many loose objects.

It doesn't say what those commands are. I've always found what I'm looking for in the reflog, so either I've been lucky or this cautionary note in the man page is conservative.

<comment><USER4> `git gc` will not remove objects mentioned in the reflog. The reflog entry for a commit that is not referenced from any refs (e.g., because you deleted the branch it was on) will last for `gc.reflogExpireUnreachable` time units. By default this is 30 days.

After that, then the object is subject to pruning by `git gc`, and may go immediately, or up to 14 days later, depending on the packing. That 14-day grace period is there for objects that never got referenced in the first place (so a tree that you are building to make a commit, for example, would not go away before you run `git commit`).

</comment></comment></comment><comment><USER5> No warning on rebasing or amending pushed changes make this pretty unhelpful.

Edit: Hang on it's worse then that, it just says 'always force push your changes' \- wonderful, you might drop commits that were previously on the branch head that someone else has pushed. Hooray.

<comment><USER6> Yea, I read the force push and was a little shocked. Admittedly, having local and remote branches that have diverged has ended up being one of the biggest problems for me using Git. I was force pushing to my remotes to sync everything up until I read up on this and realised that this screws things up if anyone else has checked out your remote. So little puzzled that they recommend this. I also haven't found out what the modus operandus is to get everything to sync up easily. Anyone know if a workflow to deal with local/remote divergence is documented somewhere?

<comment><USER7> I'm not sure you need a "workflow". In the case of a complex divergence on branch "foo" my procedure would be:

0\. Be on local branch "foo". If you've just tried to pull and got conflicts, abort the merge. (Note that for this to work reliably, you should never pull without first committing or stashing your changes):

        git merge --abort

1\. Create a new branch "m":

        git checkout -b m

2\. Merge origin into m, in several pieces if necessary:

        git merge origin/foo
        git merge [hash of some intermediate commit on origin/foo]

3\. Once you're happy with all this, switch back to foo and merge it, and push it upstream

        git checkout foo
        git merge m
        git branch -d m
        git push

</comment></comment></comment><comment><USER8> On undoing, fixing, or removing commits in git (Interactive help): [http://sethrobertson.github.io/GitFixUm/fixup.html](http://sethrobertson.github.io/GitFixUm/fixup.html)

</comment><comment><USER9> This is _dangerously_ vague.

Scenario: "When I try to push, I get an error message"

Answer: "...you must force push (-f) your changes"

A newbie could follow that advice and blow away their teammates' commits. Better advice would be to think twice and then consult someone with more experience before you even think of using git push -f.

</comment><comment><USER10> I was disappointed that there was no mention of how to get out of the common problem situations when working in multi-user git projects.

Eg, you've done work on a branch, and then attempted to pull in recent updates from master, but now while trying to commit there are a huge number of changes listed that you don't recognize.

In my experience this is a sign you've done something wrong (merge instead of rebase?) and what you do next can cause a commit that undoes your colleagues recent work. It's a minor inconvenience and not a permanent loss, but it's a common mistake to make when you don't have experience with multi-user git projects.

<comment><USER11> Lots of good feedback in the comments, but this repository appears to be about 7 days old. I think it's fair to call it a work in progress, even if there's no disclaimer to that effect.

</comment></comment><comment><USER12> For combining more than 2-3 commits prior to pushing, in cases where you only want to end up with one commit, I find `git fetch; git reset --soft origin/master; git commit` to be quicker than interactive rebase.

</comment><comment><USER13> > Flight Rules are the hard-earned body of knowledge recorded in manuals that > list, step-by-step, what to do if X occurs, and why. Essentially, they are > extremely detailed, scenario-specific standard operating procedures.

"Checklist" is the word for this. Checklists are widely used in aviation (they seem to have one for every case). I don't hear this term often in software engineering context, though Wikipedia says QA practices make use of checklists, too.

</comment><comment><USER14> I'm grateful this post was made as it allowed me to find the NASA flight rules [http://www.jsc.nasa.gov/news/columbia/fr_generic.pdf](http://www.jsc.nasa.gov/news/columbia/fr_generic.pdf)

However the commands are a little haphazard and as Gabe (gkop) mentions, not entirely safe.

</comment><comment><USER15> Since you're using a flight metaphor, let's continue it: when doing things like this, use your instruments! It helps a lot to have gitk (or tig) open next to your shell when doing things like this. Git is a DAG editor, you can treat it as such with the proper visualization.

</comment><comment><USER16> If you're using a rebase workflow this is much easier than interactively rebasing when you just want to squash the last N commits:

git reset --soft HEAD~N

This rolls back the history and places all the changes in those commits into staging. Commit with a new final message and off you go.

</comment><comment><USER17> The author teaches git reset --hard without mentioning git reflog. That's evil.

<comment><USER18> Indeed ^_^ I'll try to add reflog as soon as I can, or pull-requests welcome!

</comment></comment><comment><USER19> Common issue worth adding: removing credentials committed to a repo.

<comment><USER20> To take a stab at this:

* If the credentials have already been written into shared history (e.g. merged into origin/master), regenerate the credentials ASAP. If the credentials are in local revisions only, use interactive rebase to edit the commit(s) in question.

* Introduce tooling to create better separation between dev and production credentials. Most automated tests should be able to run using bogus credentials. Pre-commit hooks can attempt to scan for accidental credential inclusion. Use a config system that loads credentials based on environment.

</comment></comment><comment><USER21> I really like the idea of "flight rules" to document common problems and codify how to resolve them. Does anyone know of any other good examples similar to this?

</comment><comment><USER22> I found some of the wording a bit vague, I think diagrams or even short animations could have added clarity

</comment><comment><USER23> Why is e.g. 'I need to combine commits' considered something that has gone wrong?</comment>


Who writes Linux?  Big Business  - <AUTHOR> http://blogs.computerworld.com/14576/who_writes_linux_big_business

<comment><USER2> Terrible! Skilled paid programmers are writing mission-critical code to improve Linux!</comment>


IE9 Public Beta Release Today - <AUTHOR> http://www.fastcompany.com/1689097/microsoft-brings-apps-to-windows-7-with-internet-explorer-9

<comment><USER2> It's interesting to watch the tension at Microsoft.

The IE team has to embrace standards (HTML5/JS/CSS) as much as possible to be thought of as a serious competitor in the browser wars. (Since the browser is the new OS.)

The rest of MS has to push Silverlight as the way to build applications, or else Windows itself is endangered, if there's nothing Windows-specific about future app development. (Hoping the browser _isn't_ the new OS.)

Seems like both Microsoft and Apple are trying to figure out where to go in the post-PC era. Apple's clearly betting on mobile (which is a good bet), but MS is tied to their Windows/Office/Exchange legacy, and falling behind horribly in mobile. (We'll see if Windows Phone 7 does anything for them.)

<comment><USER3> The IE team is part of the Windows division, Silverlight is part of Server & Tools. If anything IE is more about selling Windows than Silverlight is. Silverlight is cross-platform (Mac, Nokia) and is about selling ... servers and tools.

<comment><USER2> Then the tension is even more poignant, since making IE better makes Windows less relevant.

<comment><USER4> Not if they're aiming for "The best/fastest/most awesome browsing experience is IE9 on Windows! Buy Windows now!"

<comment><USER2> That would be a nice fate for Windows--"the best operating system for web browsing." ;-)

</comment></comment></comment></comment></comment><comment><USER5> I'm a Microsoft developer who has switched to Mac at home and is running Chrome at work. I really don't care about IE9.

Someone please enlighten me (this is not sarcasm... I'm asking): what is the value of IE9 over everything else on the market?

<comment><USER6> It will eventually ship with Windows?

It's probably better than IE8, and if you just use a standard Windows PC then Microsoft Update will perhaps give you IE9 automatically? (Sorry, I don't use Windows enough to know whether browser updates are automatic.) So the common non-computer savvy user will benefit.

<comment><USER7> Browser updates from Microsoft have ALWAYS been opt-in and that is the reason you don't see the same adoption rates like with other browser manufacturers.

As a web developer, it's my biggest gripe with Microsoft.

<comment><USER8> Microsoft ships IE as a critical Windows update. It's as "opt-in" as _any_ critical Windows update.

<comment><USER7> If you have Windows set to automatically update then "critical" updates will be install without prompting the user. However, when it attempts to install IE it will always as for the user's permission. I feel that it's a bit different than a regular hotfix.

</comment></comment></comment></comment></comment><comment><USER9> Pinning to the taskbar is sneaky as I guess that'll always launch IE.. and people will be even less aware of the browser than they already are.

</comment><comment><USER10> Live stream over @ [http://www.microsoft.com/Presspass/presskits/internetexplore...](http://www.microsoft.com/Presspass/presskits/internetexplorer/liveEvent.aspx)

Needs Silverlight to watch. Kinda blows they didn't do it in HTML5, or even YouTube's live stream hip stuff.

</comment><comment><USER7> Pinning these "immersive app-like experiences" to the task bar sounds like one step back in terms of UI innovation. Having different webpages available from the task bar looks exactly like what I had with IE6 and multiple windows.

<comment><USER11> If it's anything like Fluid.app [1] on the Mac then I'm a big fan.

I have numerous web-apps setup as dedicated applications using Fluid and find it much nicer than having them as tabs in the same browser, or in their own browser windows. It means I can launch them with Spotlight easily, they have their own icon in the dock and start up without the address-bar or any other chrome.

At any one time I'd say around 75% of the apps I'm running are Fluid.app instances.

[1] <http://fluidapp.com/>

</comment></comment><comment><USER12> While interesting, the article perpetuates the myth that any cool new browser feature is somehow due to HTML5. Pinning apps to the taskbar is nice, but not related to HTML5 in any meaningful way.

<comment><USER13> Neither is SVG support, which is touted in this release.

</comment></comment><comment><USER10> Anyone want to join my IE9 beta launch party à <http://www.youtube.com/watch?v=gyas7BrbUFY> ?

</comment><comment><USER14> The action begins at 10.30 AM Pacific guys - definitely, keep an eye out for <http://blogs.msdn.com/ie>

</comment><comment><USER15> You can download ie9 preview here: <http://ie.microsoft.com/testdrive/>

<comment><USER13> The 'platform preview' is not a real beta. It doesn't have any components of the new UI, just a frame that renders a page with the new IE.

<comment><USER15> My mistake. It's here: <http://www.beautyoftheweb.com>

</comment></comment></comment><comment><USER16> Is it available for linux?

<comment><USER17> No. It is not even available for Windows XP.

<comment><USER18> Weird, it feels like they are missing out on such a large market not supporting XP when all their competitors still do. Seems like for the purposes of better integrating a few features they have decided to ignore the many improvements they could provide to someone on XP currently using IE8.

It just becomes another reason for people to make the switch, and I doubt they will win them back when they finally do decide to upgrade to windows7.

<comment><USER19> XP is dead and I'm not sure how Microsoft can make that any more clear than completely avoiding releasing products on it any more. Upgrade or lose out on the newer features available in later OS releases.

<comment><USER20> XP is being supported officially until 2014. Why would any company consider that dead?

<comment><USER19> Yes.. they support it until 2014. My 'dead' comment was really that from a feature set point of view. I'm supporting, but I'm not adding any new features. As a software company aren't you wanting your customers to upgrade to the latest and greatest?

<comment><USER18> They may want people to but it is happening very slowly. One big problem is that XP has all the features most users need and a big price tag on windows 7 doesn't help. Every windows before XP ended up having large game breaking issues which meant the customer base would switch quiet fast to the new one when it came out. Sure windows 7 is a nice addition on top of XP but in terms of day to day usage most people would easily be able to get by on XP.</comment></comment></comment></comment></comment></comment></comment>


100% of the world now uses the cloud - <AUTHOR> http://blog.fbeans.of.je/100-of-the-world-now-uses-the-cloud/

<comment><USER2> I remember when I was in school, the illustrations our instructor would use for the internet (networking class), would be a cloud. I always associated with "Internet". To me, having something interconnected and easily accessible is "Cloud". While I'm sure other people could defend their definitions, I'm pretty sure this was before the term was popular, so I'm going to continue my conceptualization of it in this way.

However, when it comes to cloud hosting, is VPS included? I only use one node right now, but if I balance my load across to servers, would it then be cloud?

<comment><AUTHOR> I have no idea about any formal definition of the term cloud. I'm sure there are a few! The cloud image as "the internet" is classic. It's almost certainly the reason for "cloud" computing today.

<comment><USER2> Exactly! It's funny how you could take something so broad and even try to make it something specific. To me the definition will always be very broad. Maybe I'm a cloud developer instead of a web developer now?

<comment><AUTHOR> Perhaps you /are/ a cloud. :/</comment></comment></comment></comment>


Huawei CEO: After September 15 No More Kirin Chips - <AUTHOR> https://sparrowsnews.com/2020/08/07/after-september-15-no-more-kirin-chips/ <comment><USER2> Long term I feel China is going to work around these sanctions and such and end up completely independent of US tech.

<comment><USER3> That'll probably happen in the long term. In the short term, China might answer by completely banning US companies from the Chinese market.

I don't see anything to win here. Probably every large company, including those from the US, have some kind of production facilities, storage or supplies in China. China applying similar restrictions would probably be a worse hit for the US than the current situation is for China.

<comment><USER4> I doubt the Chinese will take any rash, knee-jerk reaction here. They are very predictable and will stick to what is in their best interest. Since there is no democratic government either, these decisions are not at risk of changing - unless XiJinping loses a coop, which at this point is an impossibility.

<comment><USER5> if you think about it, we have reached a time in which we are all benefiting from china having a cool head about them and patience. it's really highlighting the power vaccuum that's happening.

</comment></comment></comment></comment><comment><USER6> This is a clear loss for consumers world wide. The Kirin SOCs were competitive with Qualcomm, and now they practically have a monopoly again.

<comment><USER7> And a clear win for democratic governments who do not send dissenters to re- training camps.

From a competitive landscape, yes it sucks. But Huawei / China needs to be punished for its blatant IP theft, I think this is a great place to start.

<comment><USER8> At the same time the US caused (directly/indirectly) the death of 400-800k people in Iraq. Somehow there is a double standard regarding human rights.

China is despicable but I think that the moral ground of the US regarding this kind of issue is quite shaky.

<comment><USER7> We are a democratic country, don't support a war, vote for someone in office who does not support it.

China on the other hand if you don't support putting muslims in concentration camps, you end up there yourself

<comment><USER6> I don't think there was a vote for invading Iraq, or any of the other countries targeted by the wrecking ball that is US hegemony.

Yes China is quite flawed, but this attempt at maintaining the status quo really only serves to halt progress.

<comment><USER7> Please don't be pedantic, We do not have votes on whether the president should sneeze into a tissue or a paper towel, but yes, the president that decided to go to war was voted in by the majority of the population.

Please do not try to push the CCP's propaganda by knocking the United States, it only ends one way, and that is all of us being slaves to winnie the pooh

<comment><USER9> I'm hardly of the opinion that the US is comparable to China, but it seems to me that a democracy that commits a sin is somehow worse than an autocracy that does so.

After all, if 150 million and one believe that killing a million civilians is acceptable and is able to support carrying out that activity that means that society is corrupt.

If 1 man believes that killing a million civilians is acceptable and is able to carry out that activity that means that society is merely incapable of enforcing moral will.

<comment><USER10> >but it seems to me that a democracy that commits a sin is somehow worse than an autocracy that does so.

Isn't that what design-by-committee is? Or upper management hiring consulting firms to "validate" a plan they already had in mind?

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> China made a big mistake in being too reliant on TSMC, etc. or maybe it did not have the capacity to go after too many targets. Or maybe it simply did not think it could be a problem.

They are quick to learn and adapt, though, not least when the Chinese state throws its whole weight behind something, so I'm thinking that after this initial shock, in a few years the result will be a decline of the relative importance of the Taiwanese semi industry because mainland China will have its own, with all the potential strategic consequences that this might mean.

<comment><USER12> I don't think it's a mistake. It's more that they don't have a choice. There are very few (maybe even only one?) foundries in the world with advanced processes. Building a foundry is not trivial. For how long has Intel stuck with 14nm now? The Dutch ASML lithography machine is one of the most advanced machines in the world, and it's pretty much the only one of its kind. China has been investing heavily in domestic foundries for years now, but it takes time.

<comment><USER13> I think it's just greed and poor risk management. Up until recently, china couldn't even manufacture ball point pens (which I think only 2 companies in the world produced). There's no money to be made at the bottom of the inverted tech pyramid. They rather put their energy in buying ball point pens and using those pens to write stuff that will in the short term make them more money on to of a foundation of sand. Similarly all of the investment from giants like Alibaba etc went into developing e-commerce on top of a tech foundation of sand

</comment></comment></comment><comment><USER14> Kirin's probably source something from U.S. designs right? Hence it's production run must end. I am guessing this means Huawei needs to switch to a design that is wholly originating from China (with possible input from Japan and Korea) but right now they are not up to the level of the Kirins.

This may really just mean Xiaomi or Oppo gains an advantage over Huawei and takes the top crown.

<comment><USER15> Huawei can still buy SoC with US technology in it if it's designed and manufactured by others.

US restrictions are all about Huawei's ability to use U.S. technology and software to design and manufacture semiconductors abroad. BIS made targeted rule "to impose a new control over certain foreign-produced items, when there is knowledge that such items are destined to a designated entity on the Entity List."

> (i) Items, such as semiconductor designs, when produced by Huawei and its > affiliates on the Entity List (e.g., HiSilicon), that are the direct product > of certain U.S. Commerce Control List (CCL) software and technology; and

> (ii) Items, such as chipsets, when produced from the design specifications > of Huawei or an affiliate on the Entity List (e.g., HiSilicon), that are the > direct product of certain CCL semiconductor manufacturing equipment located > outside the United States. Such foreign-produced items will only require a > license when there is knowledge that they are destined for reexport, export > from abroad, or transfer (in-country) to Huawei or any of its affiliates on > the Entity List.

[https://www.commerce.gov/news/press- releases/2020/05/commerc...](https://www.commerce.gov/news/press- releases/2020/05/commerce-addresses-huaweis-efforts-undermine-entity-list- restricts)

<comment><USER14> >Huawei can still buy SoC with US technology in it if it's designed and manufactured by others.

I don't get it, if the U.S. wants to cripple Huawei why would they let you buy SoC that way? The whole point I thought was that any company dealing with Huawei that used some material proportion of U.S. originated technology to deliver goods to Huawei had to stop. Which means in order for Huawei to build chips it needs a supply chain that is almost completely independent of the U.S.

The closets analogy I can think of is like building nuclear submarines. They are notoriously hard because its not possible to globalize the supply chain, everything in its design must be sourced within the country thus requires a specialized supply chain.

<comment><USER15> US actions must be proportional and related to the damage that they attribute to Huawei.

Even in close to lawless Trump era there WTO exists and sanctions can be challenged and ignored by other countries if they are excessive.

<comment><USER16> Trump has put the WTO out of action by blocking the appointment of judges.

</comment></comment></comment></comment></comment><comment><USER17> Either the PRC has overplayed their hand, or they are up to something. 2020 still has nearly 5 months to deliver more gifts.

<comment><USER18> If you think the Trump administration has out-thought China, you need to re- read this sentence.

<comment><USER19> When you're a gorilla, you don't really need to think through your punches if all you want is maximum damage.

</comment></comment></comment><comment><USER20> I thought that SMIC were producing Kirin chips:

[https://www.globaltimes.cn/content/1187993.shtml](https://www.globaltimes.cn/content/1187993.shtml)

<comment><USER21> When rereading the article with this in mind, Yu only announced the end of "Kirin high end chips", not of the complete Kirin line. So I assume those are still alive?

<comment><USER20> I don't know this particular website but it seems like the article was angled in a certain manner.

Here is the same story from Gizmo China:

[https://www.gizmochina.com/2020/08/07/huawei-mate40-last- fla...](https://www.gizmochina.com/2020/08/07/huawei-mate40-last-flagship- kirin-chipset/)

</comment></comment></comment><comment><USER8> Can someone provide more context about what SoC they are going to use for their phones from now on as this is not really clear from the article.

<comment><USER15> Most likely MediaTek for the lower end and Qualcomm's Snapdragons for flagship phones.

Huawei still needs license from BIS to use Snapdragons but it should be easier to get.

<comment><USER8> But Qualcomm is an American company. How would they be able to sell to Huawei?

<comment><USER22> the US's goal was never to stop selling to Huawei altogether, it's to prevent Huawei from moving up the value chain, i.e designing their own SOC. It's the same reason why other Chinese companies like Xiaomi and Oppo are not included in the entity list. You can bet once they starts to develop their own CPU, or their own OS, they would be immediately placed on the entity list because of "national security" reasons.

</comment></comment></comment></comment><comment><USER14> Lot of talk about TSMC building a plant in Wisconsin but as far as I could dig up its basically the same as what they already have in Nanjing. A play meant to make them appear like a neutral party.

<comment><USER23> TSMC's fab is planned for Arizona, not Wisconsin.

</comment></comment><comment><USER24> What they're not saying is that the Chinese will have to completely shut down many of their silicon foundries because of a lack of specialized chemicals only available from the USA and Japan.

<comment><USER25> Until now it hasn't been cost effective to develop internal sources for these supplies.

Now the US has provided an (essentially infinite) price support for domestic production and all the infrastructure and supply chain that go along with it.

</comment></comment><comment><USER26> this news does not make sense, what chips they would use for high end smartphones? because it can't be qualcomm

also what are they gonna use for smart watches, TV and their other products which are powered by kirin chips? you can't replace those that easy

</comment><comment><USER27> A plausible start of WWIII would be China seizing Taiwan in order to regain access to TSMC.

<comment><USER12> I really doubt it. China has its own fabs, they're just a few generations behind (14nm). That "only" means their chips are not competitive in certain contexts (heat, power), not that they can't have chips at all. They're investing heavily in research and development. It's just a matter of time before they catch up. There's no need to do something risky and expensive, like starting a war over Taiwan.

And taking over Taiwan will cripple TSMC's ability to provide to anyone. The moment they invade Taiwan, 100% of its population becomes anti-China (right now a portion of Taiwanese are still sympathetic to the idea of reunification). TSMC employees will revolt and the island will turn into a perpetual guerilla war zone. How do you produce chips in such an environment?

I still think WWIII could plausibly happen, just not because of TSMC.

<comment><USER28> Not to mention that Taiwan will trigger the explosive devices that they have embedded into infrastructure and manufacturing plants. China may coerce Taiwanese scientists, but won't find a functioning chip fab to use.

<comment><USER29> Hmm. Where can learn more about this deterrence measure?

<comment><USER28> If you expect a map with locations marked X, well good luck. This is just a long-standing rumor, as these things are obviously kept secret, but the fact that both west-germany and switzerland did this (we actually have hard evidence) to stop advancing soviet forces in the event of war makes this very credible.

<comment><USER29> I don't expect any form of hard proof. I am curious about the subject and looking forward to any reading or viewing material

</comment></comment></comment></comment></comment></comment><comment><USER30> Maybe the Chinese government can fix this with using some extra slave labour or else steal and extortion it from some small countries? Can't they just invade Taiwan or Korea and just grab it? As a last resort they could become a democracy, without slavery, without stealing and play by the rules, but hey what a weired idea if you can be a thug as well!</comment>


Create your own festival lineup with your favorite DJs' sets - <AUTHOR> https://app.edmnomad.com <comment><AUTHOR> EDM Nomad just released their own web app platform which allows you to create your own Virtual Music Festival with just a few clicks.

Just after the pandemic had started cancelling music festivals all around the world, we have decided to create something that comes in help for every music lover out there.

Because we are living with music in our blood, we put together EDM Nomad app where anyone with an account can easily create multiple Virtual Music Festival playlists with their favorite artist for free. As the demand for virtual festivals has risen, we have come with a solution for all those people who want to create their own music festival with their favourite DJ playing their favourite sets.</comment>


Came across this site that lists products with a lifetime warranty - <AUTHOR> http://lastmealifetime.com/

<comment><USER2> Nice idea for a site, somewhat misleading premise. "Lifetime" typically means the normal, expected lifetime of the product, at least on any product whose warranty I've looked at closely. For example, the osprey pack in there? The warranty doesn't cover normal wear and tear. So in a few years, zipper busts? You got some good use out of it, and they'll refer to businesses who'll repair the zipper for a reasonable fee, that you'll be expected to cover.

<comment><USER3> Osprey's warranty implies otherwise:

[http://www.ospreypacks.com/en/web/all_mighty_guarantee](http://www.ospreypacks.com/en/web/all_mighty_guarantee)

> Osprey will repair for any reason, free of charge, any damage or defect in > our product – whether it was purchased in 1974 or yesterday. If we are > unable to perform a functional repair on your pack, we will happily replace > it...

> My pack needs to be repaired. What do I need to do?

> If you live in the United States* and need a repair done on your Osprey > pack, you will first need to obtain a Return Authorization number. To do so, > click here or call our Returns Department toll free at 866-314-3130. We will > provide shipping instructions along with your RA Number. PLEASE, do not send > your pack in without an RA number. *If you live outside the United States, > please visit the International Customer Service page to locate the overseas > Osprey Distributor closest to you.

</comment></comment><comment><USER4> Be careful, a lifetime warranty isn't worth anything if the company behind it goes bust.</comment>


More Than 1k Android Apps Steal Your Data Without Permission - <AUTHOR> https://www.tomsguide.com/news/more-than-1000-android-apps-steal-your-data-without-permission <comment><USER2> Discussed at [https://news.ycombinator.com/item?id=20383432](https://news.ycombinator.com/item?id=20383432)</comment>


Show HN: A directory of single-page sites and useful apps - <AUTHOR> http://www.thetoolbox.cc/ <comment><USER2> I would love the ability to create my own toolbox based off of the sites you link. The basic idea would be I login, select the sites that I use and then can see them via my account, or link other people via citricsquid.thetoolbox.cc or something. For now I can load up the page and scroll through and remember which are useful with relative ease, but if you get to the point where there are hundreds or thousands of tools listed then it'll be hard to find the ones I like.

Great work so far, submitted 2 sites.

<comment><AUTHOR> Thanks for the suggestion, but that's a little outside the scope of the site. Plus, I have no clue how I'd even do that with a WordPress install…

But you're right that the site will be hard to browse once there's a lot of apps, so I'm planning better navigation and filtering features (for example, sort by most used).

</comment></comment><comment><AUTHOR> Really sorry for the downtime… I thought my WordPress install was ready to go, but for some reason the caching plugin was not activated. So everything came crashing down under the traffic, and then I was unable to log back in the admin to enable caching.

I'm now talking with the PHPFog guys to add resources to the server, but it's taking some time…

The lesson here: never EVER run WordPress without caching. Triple check that's it's active before you do anything.

<comment><USER3>
        I thought my WordPress install was ready to go, but for some reason the caching plugin was not activated.

Wordpress glitches just happen, it's ok. Your idea is really neat though, congrats and thanks for sharing.

</comment></comment><comment><USER4> Not loading for me right now.

The web really needs the equivalent of an app store. Search engines don't do apps justice. They don't have enough content to index and are often difficult to crawl anyway, being JS-heavy. Chrome Web Store is a good start, but a place with reviews and ratings of browser-independent, no-install, interactive websites would be excellent.

<comment><USER5> I don't know about "no-install"--I for one prefer the Chrome Web Store's model, because it gives users a definitive point (hitting install) where they can grant my app extra permissions for things like geolocation and increased local storage, rather than bothering them with fifty different prompts once the app is running (and giving them the chance to refuse, even though my app won't work without those things enabled.) Personally, I'd prefer if other browsers just adopted the CWS's .crx app format, and every browser allowed app installation from sources other than its "own" store.

<comment><USER4> That's not trivial for them. Adopting "crx" means they wouldn't have any say in the evoluion. The point of the web is for a browser to be able to take the lead with something like CRX and then work with the other browsers to standardise it.

Anyway, the permissions question is independent of the store mechanism. iOS apps ask for permissions on demand, Android apps don't.

My main point about no-install is simply that they're regular websites, not downloadable packaged apps. There's room for both, but right now there's no good mechanism to find regular websites with apps on them.

</comment></comment></comment><comment><USER6> Sorry, the site you're trying to access is busy! Error code 502

PHPFog

<comment><AUTHOR> Sorry for the downtime, I'm looking into it. It seems I stupidly didn't activate the caching plugin I'm using :(

<comment><USER7> feeling a little bad for your server right now ...

</comment></comment></comment><comment><USER8> Thanks for this great site - I hope it gets some traction and grows.

There are so many great sites/services out there that because I've forgotten about them. Having a simple index of sites like this will keep my memory about useful sites and help me discover new ones.

I really hope you are able to grow this site - i've added it to my Chrome bookmark bar!

</comment><comment> ezequiel-garzon Is Wordpress (along with a professional theme) the fastest route to a site as visually appealing as this one? In other words, what would other HN readers have chosen in order to deploy this content?

[1] <http://designerthemes.com/themes/construct/>

<comment><AUTHOR> I picked WordPress because I knew I had bigger chances of finding a theme that already matched the design I wanted. Otherwise if I was coding the whole thing from scratch I'd probably use <http://locomotivecms.com>

<comment> ezequiel-garzon Thanks! And keep up your site!

</comment></comment></comment><comment><USER9> A couple more:

<http://www.favicon.cc/>

<http://www.stripegenerator.com/>

I don't think I've ever actually used the stripe generator, but there should definitely be at least one favicon site on there.

<comment><USER9> Thought of a few more things to add:

<http://validator.w3.org/>

One of the browser testing tools: [http://www.smashingmagazine.com/2011/08/07/a-dozen-cross- bro...](http://www.smashingmagazine.com/2011/08/07/a-dozen-cross-browser- testing-tools/)

<http://www.pythonregex.com/>

</comment></comment><comment><USER10> Are you taking suggestions? I'd love to see Bookshrink [0] and Who Will I Know There? [1] on the list :)

[0] <http://bookshrink.com>

[1] <http://wwikt-peterldowns.dotcloud.com>

<comment><AUTHOR> Bookshrink is a very interesting concept, but I'm really trying to feature things that are useful and practical for a majority number of people, not just "interesting" sites. Thanks for the suggestion though!

</comment></comment><comment><USER11> Another suggestion: [http://ie.microsoft.com/testdrive/graphics/cssgradientbackgr...](http://ie.microsoft.com/testdrive/graphics/cssgradientbackgroundmaker/default.html)

IE's gradient builder, I find it nicer than the colorzilla one.

</comment><comment><USER12> Intrigued by Markup.io. I think I'll probably add this to my arsenal. <http://markup.io/v/0fk6myfx7wk5>

</comment><comment><USER13> If you're taking contributions it'd be great if Backup Box [0] was included.

[0] <https://mybackupbox.com>

</comment><comment><USER14> Excellent, bookmarked.

Feature suggestion: a suggestion box for people to request tools they would like to have but don't seem to exist.

</comment><comment><USER15> Seems not able to load website right now.

<comment><USER16> More specifically, for me: Chromium says "This webpage has a redirect loop".

</comment></comment><comment><USER17> This is awesome - a number of tools i've never seen before. I think i'll find them very handy.

</comment><comment><USER18> Love it. Especially the companion article about the proecess to set up thetoolbox.cc

Well done!

</comment><comment><AUTHOR> Feel free to suggest missing sites, either here or via the submission form.

</comment><comment><USER19> i think you might want a better font for the "I use it" links, they were difficult to read on my screen (it could also be the contrast between the text color and button color)

<comment><AUTHOR> I just increased the contrast, thanks for the feedback!

</comment></comment><comment><USER20> notepad.cc absolutely belongs here</comment>


PyPy Loop invariant code motion  - <AUTHOR> http://morepypy.blogspot.com/2011/01/loop-invariant-code-motion.html

<comment><USER2> This reminds me: could anyone tell me about future plans for unpython. It looked really nice, similar to shedskin and rpython. The last time I checked, and its a while ago, it seemed it played nicer with numpy and had plans for using OpenMP for the embarrassingly parallel loops and maps. I know that its author was on HN but I fail remember his id as of now. So unpython author, if you are reading this, I really liked it.</comment>


Facebook to Turn Users Into Endorsers - <AUTHOR> http://www.nytimes.com/2007/11/06/business/06cnd-facebook.html <comment><USER2> I love it. Just more evidence that Facebook really gets "people", while the only thing Google seems to understand is "data", to their detriment.

When Facebook announced their platform, they talked about social graphs, distribution, and virality. Google talked about "openness" and "platforms". They still just don't get it.

<comment><AUTHOR> This is the difference between computer science (which is about implementation) and web science (which is about people).

<comment><USER3> indeed. I have oft-wondered what is the difference between the highly respected Engineer and his lowly, unstructured counterpart, the developer. Facebook appears to be a developer company, while (stating the obvious) Google is an Engineer co. The two can coexist, but not peacefully.

<comment><USER4> Bah, that's a totally artificial distinction. I think that the difference between Google and Facebook has more to do with the company culture and the people at the top of the company than the programmers themselves.

"Engineer" is what a suit calls you, "Developer" or "Programmer" is what you call yourself, and "Hacker" is what other people call you.

</comment></comment></comment></comment><comment><USER5> A frighteningly good idea.

<comment><AUTHOR> The general idea behind Facebook is that the only way that you would care about anything (apps, ads, events, etc.) is if your friends tell you about it.

Technically, this doesn't make much sense since your friends don't necessarily share your interests.

But this isn't a technical achievement. It's a social achievement because it appears to be working.

<comment><USER6> Do you think it has legs? That is, do I really want this many commercial recommendations from people I barely know? At what point is the hassle more than the gain?

I was never a huge FB fan. I guess I just don't get it. Sure I _might_ be interested in whether Sue had the hives last Friday night or not, but hearing about the coolest sports drink from the chick I met two years ago in a bar? It just seems to fall apart after it gets stretched so thin, right?

<comment><AUTHOR> It's a bold experiment in human nature. Let's see what happens.

<comment><USER6> Perhaps it's a question of "how much" it succeeds instead of whether it succeeds or not. A young demographic is highly cohesive and peer-pressure- sensitive, whereas an older group with far-flung contacts isn't going to be so keen on the getting pitched so much. It's going to be a learning experience to see how it plays out. Could be a massive home run, from the comments I'm seeing.

<comment><AUTHOR> I think it has a bit to do with whether you trust algorithms.

Would you trust a recommendation made by some obscure collaborative filtering algorithm or one made by a friend whom you know well?

<comment><USER6> So here's my take: I don't want recommendations for crap I'm not looking to buy from anybody, friends included. In fact, if you want to stay my friend, be careful how much stuff you tell me I should be buying.

I'm probably a minority. I know I have a couple of friends that will email from time to time with stuff. Just today a friend emailed talking about a 45-disc James Bond DVD extravaganza. But one or two of those a week is about my limit. If I started getting even one a day from any source, I'd do a double-take.

But like I said, I'm not the demographic FB is pushing for. I've always heard kids were supposed to be very anti-commercial once they moved into their 20s. But heck, for all I know we should still be riding around in buggies and chariots. I've just gotten where as soon as I see somebody trying to pitch me, whether it's a google adword, TV commercial, YouTube ad or whatnot, I cringe. It's not a positive experience for me. Why would I want my friends as part of that? I dunno.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> "In addition, Facebook will allow advertisers to tap into the vast stores of data that its users provide...

initial roster of advertisers including Coca-Cola, Blockbuster, Verizon..."

Verizon? I thought that they already had that information?

</comment><comment><USER8> That's dangerous turf they're treading on. Messing with people and their whims is not a simple job - people grumbled a lot when facebook opened up outside college. A lot of people I know had that "why the hell is my dad on facebook"? moment.

Same thing when they introduced the "news feed" (or "stalker feed" as people used call it). I'm sure they are keeping the comfort of their users in mind, changing things a little at a time.</comment>


Court ruling stands: US has no right to seize data from world's servers - <AUTHOR> http://arstechnica.com/tech-policy/2017/01/court-ruling-stands-us-has-no-right-to-seize-data-from-worlds-servers/ <comment><USER2> Interesting that the way this article is worded, it almost sounds like the author wants to make you think this is a _bad_ thing.

</comment><comment><USER3> So, does this have any ramifications on the Megaupload case?</comment>


GAO: Climate change already costing US billions in losses - <AUTHOR> https://apnews.com/a40f2858a11b4cd5b2fac9f2556bd1f1 <comment><USER2> Report summary: we spent over $350 B in the last 10 years on disaster recovery, we expect that to continue to be very expensive in the future. They expect the cost by 2055 to be consistently $35 B / yr, though it appears this is mostly just a guess, and at best "really bad weather periods are expensive" which is obvious.

Article: mostly just attacking Trump's administration, entirely non- constructive.

I don't understand why this is on HN.

</comment><comment><USER3> That's one half of the story. We need to know how many billions in losses are cost as a result of climate-related regulations. And economically, how much money is 'saved' due to those regulations.

<comment><USER4> It's hard to model the dollar cost ("all of them"?) of runaway climate change, or of individual actions that are necessary but insufficient to avert it.

<comment><USER3> Ideally we would want an accurate trajectory of forecasted change to map the cost/savings, but the trajectory keeps getting readjusted and the cost/savings is fairly subjective, so modeling this is pretty much fruitless.

Cost fails to account for economic development as a result of the hurricanes and subtract that from economic damage.

Savings measurement requires accounting for theoretical scenarios which by nature are malleable.

Or you could just assume we're all gonna die and no actions will be sufficient, then we can all just stop working on climate change and save some extra dollars for the ride out.

<comment><USER5> _Cost fails to account for economic development as a result of the hurricanes and subtract that from economic damage._

Letting things break so that money will be spent replacing them is not 'economic development' [0].

[0]: [https://en.wikipedia.org/wiki/Parable_of_the_broken_window](https://en.wikipedia.org/wiki/Parable_of_the_broken_window)

</comment></comment></comment></comment><comment><USER6> This article is illogical. It simultaneously calls the report "non-partisan" while also pointing out that the current administration disagrees with it.

Furthermore, it gives the impression that the cost of every natural disaster is being associated with climate change.

Lastly, I do not see any mention of what it would cost to implement so-called climate change prevention strategies. For that, they would have to acknowledge that this is a global issue.

<comment><USER7> Non-partisan doesn't mean nobody disagrees with it.

If well established practices and fact are disputed by one party, that doesn't make it objective to abandon them. If non-partisan means splitting the difference between the major parties, then there would be an incentive for each party to tack as far away from center in order to sway the GAO.

<comment><USER6> Nonpartisan means not associated with a political party.

[https://en.m.wikipedia.org/wiki/Nonpartisanism](https://en.m.wikipedia.org/wiki/Nonpartisanism)

If the entire Trump administration disagrees with it, I think it it's fair to say that his political party is not on board.

The article/report is leveraging one Republican (moderate Susan Collins) to label it as nonpartisan.

<comment><USER8> If the Trump EPA says the sun appears blue to everyone, then is it a partisan issue to say they're incorrect?

Partisan means pushing a political agenda based on ideology or party. NOT that a particular party agrees or disagrees with them.

<comment><USER6> You're using the straw man argument, which is vacuous. You are also ignoring the correct definition of nonpartisan, which I linked above.

<comment><USER7> Not much of a straw man, since we are nearly certain about the fact that mean temperatures are rising as we are about the color of the sun.

Whether or not the changing climate is anthropogenic is somewhat less certain, (and more politically contentious), but we ought to be able to discuss the effects of these absent the cause without calling a report partisan.</comment></comment></comment></comment></comment></comment>


New Zealand lawmakers pass euthanasia bill - sahin-boydas https://www.newsweek.com/new-zealand-passes-euthanasia-bill-that-would-allow-people-terminal-diseases-end-their-lives-1471631 <comment><AUTHOR> Are they intentionally confusing euthanasia with assisted suicide? These things are completely different.

<comment><USER2> How so?

<comment><AUTHOR> > How so?

Imagine there is a machine connected to someone and that if a button is pressed, the mahcine will kill the person it is connected to.

If the person who it is connected to presses the button, this is suicide. The assisted portion is that someone else has created and connected the machine, but it is still suicide because the machine cannot kill the person without the button being pressed.

If someone else presses the button, it is something other than suicide. In the case that the act of killing the person is classified as an "act of mercy", then it could be classified as euthanasia.

The article uses these two phrases as if they are interchangeable, but they are conceptually quite different.

</comment></comment></comment><comment><USER3> I understand this is well intentioned. This also seems pretty dangerous. It puts a lot of trust in the complex bureaucracy that is the medical system.

<comment><USER4> Is that different to DNRs? It's the job of doctors to make life and death decisions. It's fine to not trust doctors; after experiencing some medical errors I don't either. But often there's no choice other than to trust doctors, if you are on the operating table for instance. Terminal illness is another such case.</comment></comment>


Deciding What Features To Implement - <AUTHOR> http://michaeldehaan.net/2011/03/23/features/

<comment><USER2> Nice list. Such lists are quite personal and depend on one's values and philosophy. Here's my own triage list:

1\. Is it reproducibly making the program crash or corrupting data? If yes, stop everything, fix that right now, today, and issue a hot fix before 24 hrs have passed, preferably before 2 hrs have passed.

2\. Things that are obviously annoying the heck out of a lot (a lot as in most that I know of) of customers even though no one has said anything specifically about it, but it's become obvious to me because of the kinds of trouble they are having. This sort of fix will often be subtle workflow issues, or things that are nearly invisible but which take a huge amount of trouble to implement. Few of my competitors address this sort of thing at all.

3\. Features I personally want, really need, and have been thinking about for a long time. This includes features that customers have asked for where I have been convinced it is necessary and won't screw up the program by breaking its underlying paradigm or making the interface too complicated.</comment>


How the Google EULA controversy shows the problems with lawyer written agreements - <AUTHOR> http://stakeventures.com/articles/2008/09/03/how-the-google-eula-controversy-shows-the-problems-with-lawyer-written-agreements

<comment><USER2> Of course the EULA should be written by a lawyer. Who else would you want writing it?

The real message is: communicate with your lawyer. Make sure s/he understands what you want, and make sure you understand what s/he writes.</comment>


'This' in JavaScript - <AUTHOR> https://zellwk.com/blog/this/ <comment><USER2> I don't like the explanation as a set of piecewise cases. _this_ just refers to the current object context. _this_ refers to the window at the top level because you're operating within `window`. There aren't "simple functions" and "object constructor functions", just functions, and the `new` keyword executes the function within the context of a new object. Event listeners are not a special case, it's just that the callback is executed from the context of the event -- which makes the difference between `function (e) { this }` and `e => this` much easier to understand.

<comment><USER3> The unfortunate thing about the lengths people go to in order to try to "fix" `this` in event handlers is that it wouldn't be a problem if people just implemented the event listener interface correctly.

PSA Don't do this:

      proto.foo = function() {
        /* ... */
        var self = this;
        element.addEventListener("click", (function(event) {
          self.iHaveAnUnhealthyObsessionWithLambdas(event.target);
        }));
      }

      proto.iHaveAnUnhealthyObsessionWithLamdas = function(clicked) {
        /* do something with clicked element `clicked` */
      }

Do this instead:

      proto.foo = function() {
        /* ... */
        element.addEventListener("click", this);
      }

      proto.handleEvent = function(event) {
        /* do something with clicked element `event.target` */
      }

<comment><USER4> The problem is that the approach is different depending on context. You are making use of the assumption that the addEventListener function knows to call the "handleEvent" method of the object in the second argument, and give it a proper "this" object. That's a big assumption, which should be documented in the code.

The code using "self" doesn't have this problem; it's more self-contained so to speak (no pun intended).

<comment><USER5> Agreed. Much prefer 'var self = this' style. Keep the model transparent for future maintenance.

One time I don't is in Jasmine, where they explicitly state that 'this' is shared across all 'beforeEach', 'it' and 'afterEach' calls. Which backs up your first point.

<comment><USER6> I thought self had gone out of favor due to its relatively new global purpose.

<comment><USER5> ok, call it something else. I meant to say, save away the current ref to 'this'.

</comment></comment></comment></comment></comment></comment><comment><USER7> It's possible to write javascript without `this`, a style preferred e.g. by Douglas Crockford, explained in the video below.

[https://www.youtube.com/watch?v=PSGEjv3Tqo0](https://www.youtube.com/watch?v=PSGEjv3Tqo0)

I've also started to write my code mostly without `this`, `class` or `new`, not looking back.

Another related, highly recommend reading: [https://medium.com/javascript- scene/the-two-pillars-of-javas...](https://medium.com/javascript-scene/the- two-pillars-of-javascript-ee6f3281e7f3)

<comment><USER8> Me too (and later my organization)

It doesn't bring anything (except a bit more performances when you create tons of objects, a setup that rarely matters unless we're talking video games or some very niche applications that somehow can't work with a subset of your data) but only create more cognitive load (bind, call, =>, closures using this, where Am I? is it a method or a function? Is it already pre-bound?).

Functionalities that create extra cognitive load and doesn't give you anything shouldn't be used.

<comment><USER9> I absolutely agree.

As a related side rant, the `new` keyword, or equivalent, makes great sense in a manual-memory-management language like C, and it's an offense to sanity in a language like Java or Javascript. Factory functions should be the default everywhere. So any JS coding style that encourages `new` is a wildly bad fit to the rest of the language.

But it _is_ important to admit the caveat, as you do, which is "when you create tons of objects".

Such situations are unequivocally in the minority (compared to line-of- business stuff where RAM and CPU more than sufficient to the task), but not the _vanishing_ minority. So we do still need a good solution for those.

Rendering, simulation, sampling/signal-processing, parsing... the list goes on. This isn't truly systems-level code, but it's easy to generate a billion objects per second. So we do need patterns for doing this kind of programming.

<comment><USER10> > Factory functions should be the default everywhere.

Factory functions still need to create the object somehow to return it.

<comment><USER9> Absolutely. The guts of the factory function should usually involve an object literal. Or in some cases, Object.create.

(If we're talking about Java, then obviously you have to have `new` somewhere, which is just one of the many shortcomings of Java, although obviously not a fatal one.)

<comment><USER11> I do really like JavaScript's ability to compose objects like that, and I feel that people interested in it as a language should definitely learn how to program in that manner. However, I suspect that for most people JavaScript is a means to an end, and it's more useful in a number of senses to try to write JavaScript more like other class-based languages. I mean, I feel like things like TypeScript sort of miss the point of having a dynamically typed language, but there is a solid case to be made for features like strong typing, especially as size and contributors go up.

</comment></comment></comment></comment></comment></comment><comment><USER12> Crazy we're still talking about it.

I thoroughly understand `this` now after over a decade working in javascript, as well as thoroughly understanding `this` in Typescript which I use more now.

And I still make a mistake at least once a week. I know what I've done as soon as the code fails, but it's still so ridiculously easy to get into a context you didn't think you were.

Of all the mistakes made in javascript, `this` stands head and shoulders above everything else, with its arm round the prototypal class structure.

<comment><USER13> I almost never use "this" in my JS code. I find that when you use a functional style of development, you largely avoid the "this" pitfall.

<comment><USER12> That debate is long over.

If there's anything that a decade of functional style being "the next big thing" has taught us, functional style is not "the next big thing" and most programmers don't work well in it.

<comment><USER14> i strongly disagree with this. half of my posting history on here is evangelizing FRP in javascript (in my case via bacon.js).

it has dramatically reduced the amount of time i spend on these and many other sorts of problems. honestly it makes programming way more fun. maybe haskell is a bit extreme for most situations but the concepts are not.

<comment><USER12> While you may love functional, and I'm not saying you shouldn't, I think you're strongly disagreeing with the statement you think I'm saying, "functional is bad", rather than the actual statement I'm making which is "functional programming's had many chances to become a mainstream language and it never takes off (outside a few specialities)".

What evidence do you have that functional is taking off? Since this board was around, every couple of years there's been a flurry of 3 months when a chunk of the community bangs on about functional programming.

First it was Lisp, then Erlang, then Haskell, then F#, then Scheme. I might have got the order wrong.

And it never, ever, ever takes off because while 10% of programmers find functional truly brilliant, the other 90% can't work with it.

For context, in that time Ruby (via Rails), Python (via Django and use in Science), javascript server-side (Node.js), Go, Swift, Rust and now possibly Kotlin have all taken off. Plus various other techs like NoSQL.

<comment><USER13> Hm. I guess it depends on your definition of mainstream.

In the front end space, functional programming is taking off, I think. Could be wrong, but React + Redux + immutablejs is a popular and very functional approach to UI.

Elixir appears to be on the same trajectory as Rails in it's early days. Anectodally, I know a lot of Rails devs and shops that are now primarily Elixir.

Most mainstream languages have adopted functional styles and best practices. Higher order functions, a general acknowledgement of the benefits of immutability, etc.

Fp may not be mainstream, whatever that means, but it's more popular than I can ever remember it being.

</comment></comment></comment></comment></comment></comment><comment><USER15> The numerous overloads of 'this' is one of the things that turned me off from JS. It's great that bloggers explain the usages and how it works in different scenarios, but really the better solution would be to not have the problem at all. I would trade overloading for verbosity. An editor can easily squash the latter, where as a human has to train for the former.

<comment><USER16> But there is no "overload" to `this` in JavaScript. It works the same way every time. It's an implicit parameter that is passed when you call the function. It can also be bound, just like all the explicit parameters. The six ways the author presents are just an incomplete list of "Ways you can create an execution context in JavaScript".

This may be confusing to people who expect `this` to have a certain functionality when coming from a different language, but `this` is very consistent in JavaScript. It's just not the kind of consistency people seem to expect.

There's a great way to avoid having the problem - don't use the implicit parameter! What exactly is it giving you, anyway? In almost all cases where people fail to use `this`, they essentially create a function to pass it explicitly. Why not just do that from the get go?

<comment><USER17> It may work the same way every time, but the way it works the same is different depending on context.

</comment></comment></comment><comment><USER18> Simple(r) explanation; this is whatever is "left" of the function call (i.e - obj.method() => this === obj inside the called method), unless you've used .bind/call/apply which explicitly sets what this should be via an argument.

If you're doing a direct function call like myFunc() there is nothing "left" of the function call. But you might think of it as actually doing window.myFunc(), which again explains why this === window. In strict mode this behavior has been "fixed" so that this === undefined.

It's all about how a function is called.

<comment><USER19> What about setTimeout(obj.method, 1)?

(Spoilers: this == window, not what is left of the function call)

<comment><USER18> As nhpatt notes you're not actually calling obj.method here, you're passing it as an argument, which will be called at a later time.

Looking at a possible implementation of setTimeout makes it clearer:

      function setTimeout(func, delay) {
        // wait for the delay to complete..
        func();
      }

Here you can see that when the function is called there's nothing to the left of it.

<comment><USER19> Yup, I get it. I was just pointing out that there are some edge cases to the "context is whatever is left of the function" rule-of-thumb.

</comment></comment></comment></comment><comment><USER20> Always name "this" and it will be easier to understand the context

      function Car() {
        var car = this;
      }

And if it already have a name, use that name:

      var foo = {
        bar: 1,
        say: function say() {
          console.log(foo.bar); // foo instead of "this"
        }
      };

</comment><comment><USER21> "You don't know JS" series dedicated the whole book to "this" mystery : [https://github.com/getify/You-Dont-Know- JS/blob/master/this%...](https://github.com/getify/You-Dont-Know- JS/blob/master/this%20&%20object%20prototypes/README.md#you-dont-know-js-this --object-prototypes) Read this, 3 times maybe, and you will become the master of this.

</comment><comment><USER22> Sometimes I wanna throw my hands up in the air and scream this is bullshit. But I can never figure out what this is

</comment><comment><USER23> Somewhat off-topic, but I saw your newsletter sign up form partway through the article and thought to myself "I would like to see new articles from this blog". The issue is I don't want to sign up for yet another email newsletter, and would much rather subscribe to an RSS / Atom feed. Do you have any plans to add one?

<comment><USER24> If you can't get a positive reply, I suggest [http://emails2rss.appspot.com/](http://emails2rss.appspot.com/)

</comment></comment><comment><USER25> There is an error in this article:

      const sayThis = _ => console.log(this)
      const boundFunc = sayThis.bind({hippy: 'hipster'})
      boundFunc()

Because you used an arrow function, `this` is _not_ {hippy: 'hipster'}. You can't rebind functions; once they're bound, they're bound.

</comment><comment><USER26> > bind is a method that is present in every function

There is surely a world of unexplained knowledge in that line for someone that doesn't know JS well

</comment><comment><USER27> In Jerboa, my JS-inspired scripting language, there's an alternative to the "function" keyword called "method". The only difference is that "method" functions expose `this' and "function" functions don't.

This removes the need for the `var self = this' hack and all the related weirdness.

An amusing consequence is that if you declare a simple closure as a method, its `this' pointer will be the stackframe of the lexical context where it is called.

        method test() { print(this.a); }
        var a = 5;
        test(); /* implicitly __stackframe__.test() */

(You should not actually do this, of course. It's fun though.)

The reason is straightforward: the `this' pointer is the object on whose lookup the closure was found...

</comment><comment><USER28> So many new guides to `this` in the comments here. Not sure why this blog post exists either. I agree with most people that JS is confusing to people who are used to OOP programming in Python or Ruby, and that "this" is one of the most confusing parts. The best resource I've found is [https://bonsaiden.github.io/JavaScript- Garden/#function.this](https://bonsaiden.github.io/JavaScript- Garden/#function.this) . Free, online, concise, accurate.

</comment><comment><USER29> Here's a fun one about `this` that you might not know. When running `eval`, `this` refers to the `this` in the calling context. Unless you alias the method. Then it refers to the global context.

        class Test {
            eval() {
                return eval('this');
            }

            aliasEval() {
                const e = eval;

                return e('this');
            }
        }

        const test = new Test();

        assert.equal(test.eval(), test);
        assert.equal(test.aliasEval(), global);

</comment><comment><USER30> _this_ is certainly tricky in JS :) I remember answering a question in a similar vein on SO a few years ago: [https://stackoverflow.com/questions/6039265/50-50-false-50-5...](https://stackoverflow.com/questions/6039265/50-50-false-50-50-true/6039428#6039428)

(I can't believe it was 6 years ago, time flies.)

</comment><comment><USER31> `this` was the single-most challenging thing when I was learning JavaScript organically by myself. Now that I get it, it's pretty simple, but I also love that with arrow functions, I've had to worry about the unboundedness of `this` far less.

</comment><comment><USER32> Somehow, after I understood this and prototypes in JavaScript it felt more OO than Java to me.

</comment><comment><USER33> Coming from an 00P background, I never grasped this, and why it was made in such a way.

This made me avoid JavaScript as much as possible. Fortunately, I finally dived in, building my first js heavy webapp -- without a single this in it.

</comment><comment><USER34> Not an incorrect article, but my opinion is that the focus should be informing people to not use this at all and more education on immutable data vs confusions on this

<comment> ryan-allen I agree, I only use this in classes in JS, outside of that usage I see it as an anti-pattern.

<comment><USER35> The one place I've used "this" outside the context of a class is when I built a monad as an object and decided to use set the "this" context to be the monad. So, for example "return/unit/pure" (or whatever you want to call it :-) ) is available as "this.return". In that way the functions passed to "bind" can be generic and still build the correct monad.

There are other ways to do it, but this struck me as the first time I had fiddled with "this" and felt that it was a reasonable idea.

</comment></comment></comment><comment><USER36> `this` in Javascript is an anti-pattern and so is this article...

I wish classes didn't make into ES6, object-oriented programming is a waste of time.

</comment><comment><USER37> What is the syntax used in the third example of "This in an object method"? I have never seen it, looks like an error to me.

<comment><USER9> When you say "looks like an error", did you try running it? I assume you have a web browser handy.

All the examples in that section both look correct to me, and run as I'd expect in the JS environment I have closest-to-hand.

If you want help on the syntax, you should pose a more-specific question. Exactly what code looks like an error, and why do you think it's an error, and so on?

<comment><USER37> Sorry, I was on mobile and could not run it in the browser console. It was an honest question, but I already got the answer.

</comment></comment></comment><comment><USER38> that is why sometimes we need to bind the this context in say like in jquery or react event handlers, they have different this every time! what a confusion isn't it?

</comment><comment><USER39> And in non-strict mode this behaves differently as well.

</comment><comment><USER40>
        this = "madness!";
        if (this === "madness!") {
            this = "SPARTA!!!";
        }

(sorry)

</comment><comment><USER41> thanks for sharing

</comment><comment><USER42> I'm not sure I like this guide, because in several places it seems to imply the value of `this` is decided by where you define the function, which is only really true for arrow functions. For regular functions, unless you take control of `this`, it will be decided by the caller.

Best way I can think to describe `this`:

\-----

1\. Either you decide in advance exactly what you want `this` to be:

\- Use `.bind()` on your function and fix the value of `this`

\- Create an arrow function and get `this` from the lexical scope

\- Alias `let self = this` in your desired scope, and only ever reference `self`

\- Create a wrapper function which fixes the value of `this` (essentially, implement `.bind()`)

\-----

2\. Or `this` will be decided by your caller:

\- Your caller will `.bind()` your function with an unknown value of `this`

\- Your caller will call `.call()` or `.apply()` with an unknown value of `this`

\- Your caller will attach your function to an unknown object, then call `unknownObject.yourFunction()`, setting `this` to `unknownObject`

\- Your caller will call your function as a standalone function: `let newFunc = someObj.someFunc` - then call it, setting `this` to `global` or `window`

\- Your caller will pass your function as a param to something like `setTimeout` and achieve the same effect, setting `this` to `global` or `window`

\-----

Obviously, most of the time if you're going to use `this`, #1 is to be preferred, #2 is to be avoided, so it's imperative to decide in advance what you want `this` to be rather than allowing it to be decided by your caller.

(Unless that's absolutely what you want, and you have a good reason why -- like if you're writing a wrapper function which is agnostic to the value of `this` that's passed)

<comment><USER43> I always advise against calling your `this` alias `self`, because of [https://developer.mozilla.org/en/docs/Web/API/Window/self](https://developer.mozilla.org/en/docs/Web/API/Window/self) \- ie. if you missed out the `let self = this` line, then `self` will still work but it'll refer to `window`.

<comment><USER44> Surely this is going a little too far - there are _tons_ of similarly innocuous names that will refer to globals if you forget to declare them. _name_ , _top_ , _find_ , _scroll_ , etc.

The real solution to the problem you're describing is strict mode and an editor that highlights undeclared variables!</comment></comment></comment>


$260 8TB Seagate Hard Drive - <AUTHOR> http://www.engadget.com/2014/12/12/seagate-ships-8tb-shingled-hard-drive/

<comment><USER2> And to think, I just dropped $80 for a 2TB drive last month. Could have gotten 4x the storage for less than 3x the cost.

<comment><AUTHOR> Yeah, pretty crazy!</comment></comment>


Nearly half of millennials plan to leave a job within two years - <AUTHOR> https://www.independent.co.uk/life-style/millennials-jobs-career-work-salary-quit-young-people-study-a8361936.html <comment><USER2> Also: Nearly half of employers plan to not give raises for a job within two years</comment>


Turning a laptop into a CCTV - <AUTHOR> http://vincent.is/turning-a-laptop-into-cctv/

<comment><USER2> Curious why the author didn't use an existing project like Motion.

[http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome](http://www.lavrsen.dk/foswiki/bin/view/Motion/WebHome)

<comment><USER3> Can anyone comment on whether it's worth using Motion or ZoneMinder or similar today? I was thinking about using ZoneMinder for a simple 4-camera setup, but it seems like there are kits (with proprietary software) which are cheaper and easier to set up.

<comment><USER4> I use motion at home.

Interestingly, the CPU usage went from 0 to ~30% when I added the first camera, but there was no noticeable increase in CPU usage adding the other 2 cameras.

I use it to record any detected motion, works a charm. It even has a feature to dynamically ignore parts of the screen. Say part of your camera's field of view catches a plant that blows in the breeze, the system will learn to ignore that area of the screen.

<comment><USER4> Edit: In fact, you can use motion to record images of the motion that it detects. You can then plug those images into OpenCV for facial recognition. Both Motion and OpenCV are very powerful pieces of software and they can compliment each other nicely.

Edit: ... or Reply.

</comment></comment></comment></comment><comment><USER5> I know it's really popular to use a lot of different TLDs these days, but there was a time when I saw a .is domain and could be very certain it was Icelandic (where I'm from).

I don't particularly like people using TLDs randomly, especially when they have a very strong correlation with a specific location, and the person or company using the domain has zero relation to that location.

(of course it's entirely your right, since you pay for it, and I have no right to tell you what you can or cannot do, but I'll still express my opinion)

Anyway, the project is cool, thanks for posting!

</comment><comment><USER6> Tough to read (honestly couldn't make it past the first paragraph) because of all the parenthetical expressions (which interrupt the train of thought) in every sentence.

<comment><USER7> Pretty sure it's grammatically incorrect as well. All those parentheses should probably be removed and replaced with em dashes.

<comment><AUTHOR> Sorry for that, I'll fix them tonight. It's quite obvious that there are too many looking at the article again

</comment></comment></comment><comment><USER8> OpenCV has a number of motion detection and blob tracking algorithms....those can reduce false alarms significantly. Curious why the author did not use those...

</comment><comment><USER9> Sorry for the offtopic but is this wordpress? If so which theme? :)

<comment><AUTHOR> It's pelican with the Hyde theme ([https://github.com/poole/hyde](https://github.com/poole/hyde)) I ported to pelican: [https://github.com/Keats/pelican- hyde](https://github.com/Keats/pelican-hyde)

</comment></comment><comment><USER10> Nice writeup!</comment>


Facebook Live: Now You Can Never Leave - <AUTHOR> http://www.newyorker.com/business/currency/facebook-live-now-you-can-never-leave <comment><USER2> It's just another implementation of the same idea as Meerkat or Periscope, that's all. Before freaking out about how this is going to imprison you in Facebook or whatever, I recommend watching one. They can be really fun and interesting, sometimes celebrities or other internet personalities just take questions, sometimes it's a person who is doing something interesting or visiting an interesting place. It'll be alright.</comment>


Users who can't buy; customers who don't use - <AUTHOR> http://yieldthought.com/post/1469153839/users-who-cant-buy-customers-who-dont-use

<comment><USER2> I may be out of date, but I always consider the C in B2C to be Consumer, not Customer, which I think makes the distinction much easier to comprehend. The maxim that "it's B2B when the user is not the person making the purchasing decision." is a reasonable heuristic, but not completely accurate.

<comment><AUTHOR> Thanks; do you have an example of when it's not accurate?</comment></comment>


Tesla Autopilot Crash Caught on Dashcam - <AUTHOR> https://electrek.co/2017/03/02/tesla-autopilot-crash-video-how-note-to-use/ <comment><USER2> Huge Tesla/Musk fanboy here, but I have no idea how they've gotten away with marketing decade old lane-keeping technology as autonomous driving to customers. Already resulted in a couple of deaths. It's clear from this video that the car didn't event attempt to avoid the upcoming obstacle, while the human driver in the pickup-truck ahead had no issues.

And somehow, stage 4/5 autonomy is a year away?

<comment><USER3> Driving has resulted in innumerable deaths. In most cases the auto-pilot feature increases safety. In a very small number it decreases it. Life's about trade-offs.

<comment><USER2> I agree that autonomous doesn't have to be perfect, it just has to be better than humans (by how much we will leave to regulators) but it's not clear that the actual safety of these systems has kept up with the marketing around them. I would love to see the evidence.

<comment><USER4> NHTSA's full final investigation into Tesla's Autopilot shows 40% crash rate reduction

[https://techcrunch.com/2017/01/19/nhtsas-full-final- investig...](https://techcrunch.com/2017/01/19/nhtsas-full-final- investigation-into-teslas-autopilot-shows-40-crash-rate-reduction/)

Here's the evidence.

<comment><USER5> The systems that steer the car should be evaluated independently of the emergency braking features, or else the benefits of the latter could mask deficiencies of the former.

</comment></comment></comment></comment></comment><comment><USER6> The author of this article shouldn't be apologizing for Tesla. The car should work to avoid hitting stuff. Period.

"The footage shows that the Tesla needed to merge or change lane in order to avoid the barrier – something the Autopilot should never be left to do without the driver intervening."

<comment><USER5> I wonder if the driver quietly agreed to a settlement with a non-disclosure clause? We know they are common, so the suggestion is not fanciful.

</comment></comment><comment><USER7> The most amazing part of the story is that someone managed to find the footage and link it with the Reddit thread. Those /r/ guys have got skills.

Wisdom of the mob doesn't always get it right, but when it does it's amazing the watch.

But yeah, those road markers drawn straight into the barrier is classic Road Runner.

</comment><comment><USER8> "The driver should have been awake at the wheel and looking forward. Had he been alert, he could have easily taken over in time to steer the car to the right. Clearly he wasn't alert in this instance with his hands on the wheel per Tesla's instructions."

I would have to disagree with this assumption. At that speed, there is no way he would be able to recognize what was going on and react in time to prevent the collision. There was such a sudden change in the direction of the lane that I had to watch the video five plus times figure out where things went wrong. In the end, Tesla shouldn't drive into stationary objects

</comment><comment><USER9> As a Model X owner the driver violated one of my personal rules for autopilot:

If you are not in a center lane then don't engage autopilot. You don't want to be able to collide with a barrier because of a little lane drift.

</comment><comment><USER3> The "Car needs service" indicator on the dash screen is an under-statement, isn't it?

</comment><comment><USER4> For all of those saying that Autopilot is dangerous.

NHTSA's full final investigation into Tesla's Autopilot shows 40% crash rate reduction

[https://techcrunch.com/2017/01/19/nhtsas-full-final- investig...](https://techcrunch.com/2017/01/19/nhtsas-full-final-investig..).

The report by the National Highway Transportation Safety Administration says that Tesla's Autopilots are reducing the number of crashes by 40%.

<comment><USER10> Not sure why you're being downvoted for posting this...

Facts rule, and the NHTSA is one of the best in analyzing accident statistics in the world.

<comment><USER11> I agree, this is crucial information for assessing the incident. Autodrive crashes are going to be greater than zero, the important question is are they going to be less than manual driving?

</comment></comment></comment><comment><USER12> Do autonomous cars not have proximity sensors that activate braking?</comment>


1:60 model of an Air India Boeing 777-300ER made from file folders - <AUTHOR> http://www.flickr.com/photos/lucaiaconistewart/sets/72157632208677161/

<comment><USER2> Someone should have given him a laser cutter. I can't imagine hand-cutting all those pieces.

A 3d printer would struggle with the voids, and would still need to print each piece individually.

</comment><comment><USER3> Someone should give him Dogecoin. Seriously, this is what internet currency is for. I should pay to see this stuff. Amazing.

</comment><comment><USER4> Someone should have given him a 3D printer.

</comment><comment><USER5> There's someone who has patience!</comment>


Show HN: Solving my problem of losing track of job applications - <AUTHOR> https://jobhuntbuddy.co <comment><USER2> I'm just wondering, did you do any market research? Are there actually people looking for this kind of service? It looks great and seems to have quite some features but people who are hunting for jobs don't seem to be the kind of demographic/proces who would pay for a service to aid their hunting process. It's mostly fire CV and forget. If they are without a job, why would they pay for something which has no direct benefit to them? Even if they do need it and pay for it, churn rate will be very high. Per user, even if they're looking for a job for 2 months, after that, why wouldn't they cancel?

</comment><comment><AUTHOR> I wanted to build something that kept all the details of a specific job application in one place, while giving me an overview of the status of all my applications.

I found Trello to be a nightmare to organize and structure with lots of data. Spreadsheets were too messy for me.

The best solution I found was creating a note (using Evernote or Bear) for each job application.

I'd paste question/answers to the online questionnaire lots of companies have you fill out so I can A) reference the questions in the interview or cover letter, and B) have some snippets to reuse in other applications. I'd add all relevant links, if I knew someone at the company, etc. This was great for keeping info in one place but didn't give me the overview of all applications I needed.

</comment><comment><USER3> It looks really cool but honestly I wouldn't want to pay for something like that, especially you have to feed the data yourself so you might as well use a spreadsheet and keep your data private.</comment>


Ask HN: Hiring employees from Apple, Google, etc. - <AUTHOR> Are there cultural differences between employees from the major tech companies that make their alumni more or less likely to succeed in a startup environment?  As an example, given two candidates with 5 years experience at Google and Oracle, all else equal, what are the tradeoffs? <comment><USER2> Yes.

Assuming Oracle has a very strong corporate environment as I expect it to, one could presume that many of their employees might be less inclined toward taking initiatives, ownership, and the likes while perhaps being better at taking directives.

All else equal, we cannot fit people into a mold; your interview process should help you answer these questions.

My two cents.</comment>


Edx launches new MicroMasters programs - <AUTHOR> http://blog.edx.org/micromasters?track=blog <comment><USER2> Why is a class in Animation and CGI Motion part of the curriculum in the Artificial Intelligence micromasters program?</comment>