Ask HN: What's the karma threshold for downvote ability - <AUTHOR> From HN's FAQ:<p>> There are no down arrows on stories. They appear on comments after users reach a certain karma threshold, but never on direct replies.<p>What's the threshold? Can the threshold change? <comment><USER2> When last seen it was 501, I think.

Just out of curiosity, did you try searching for the information? It's pretty easy to find:

[https://hn.algolia.com/?query=downvote%20threshold&sort=byDa...](https://hn.algolia.com/?query=downvote%20threshold&sort=byDate)

<comment><USER3> Yes down voting on comments start when you reach 501.

There was a recent post about HN's undocumented features: [https://news.ycombinator.com/item?id=23439437](https://news.ycombinator.com/item?id=23439437)</comment></comment>


Twitter's Value - <AUTHOR> http://mashable.com/2009/10/04/twitter-stats/

<comment><USER2> <http://www.youtube.com/watch?v=I6IQ_FOCE6I> All this classic video is missing is Twitter, now the center stage.

</comment><comment><USER3> Those numbers look wrong to me. It's unlikely that they did their series-A at such a low valuation.

</comment><comment><USER4> Bubble.

<comment><USER5> Twubble. (Doc)</comment></comment>


There's a web development Slack channel. Great community, check it out - <AUTHOR> http://webdev-collective.clarkt.com/ <comment><USER2> This is one of the few online communities I have joined where the people are genuinely friendly.

<comment><AUTHOR> +1</comment></comment>


Wherein I ridicule Facebook some more, then collaborate with the Panopticon - <AUTHOR> http://www.dnalounge.com/backstage/log/2015/04/21.html <comment><USER2> Man, I try not to think about these things (how much I'm getting tracked, or worse, how much my kids are getting tracked), but it's good to be reminded of the sad truth every now and then. Thanks, jwz.

</comment><comment><USER3> > So I guess what I'm saying here is: Run an ad blocker.

On a related note, run 'Facebook Disconnect': [https://chrome.google.com/webstore/detail/facebook- disconnec...](https://chrome.google.com/webstore/detail/facebook- disconnect/ejpepffjfmamnambagiibghpglaidiec?utm_source=chrome-app-launcher- info-dialog)

Adblock doesn't stop you from Facebook tracking you with their 'like' buttons, this 'Facebook Disconnect' extension will.

</comment><comment><USER4> Ugh. The site's down, here's the Google cache:

[http://webcache.googleusercontent.com/search?q=cache:Ju2jJJ_...](http://webcache.googleusercontent.com/search?q=cache:Ju2jJJ_Rf8cJ:www.dnalounge.com/backstage/log/2015/04/21.html&hl=en&gl=us&strip=1)

I emailed jwz, and he blames a reader here for a DDOS, specifically a synflood. Please knock that off.

</comment><comment><USER5> I don't really get the pointed outrage. But this isn't hugely different than anything anybody else does.

\- Individual products like AdRoll and Perfect Audience let you track users and show them ads. Ever been to a site and had their ads pop up everywhere afterwards? Ever looked at a product then gotten ads for _just that product_? Yeah, that.

\- Google lets you track conversions based on a ton of information. What Google ads users viewed, sure, but also referring site, region, demographic info. Hell, it'll tell you which pages you visited before buying. Everything but the search term you used ... unless the referrer was AdWords.

\- Emails all send you unique links, which allow you to do conversion tracking. Hell, you can even embed retargeting pixels in emails, so when you open a company's email, they can serve you ads based on that knowledge.

Every possible way that tech can track you, companies are tracking and advertising with. I get that it's kind of scary, but it's not just Facebook, and a lot of it is the digital equivalent of reading body language on people in your store.

So, yeah, run an ad blocker. But not just for Facebook.

<comment><USER6> He specifically brought up Google Analytics. Did you just skim?

The particularly pointed anti-FB sentiment stems from their selective policy enforcement, the privacy issues weren't specifically targeted.

<comment><USER7> Maybe this is a bit off topic, but I think trjordan's point was really that the tracking/retargeting industry is productized though. Google, Facebook and others ultimately serve as platforms for ads as well as providing tracking software. Meanwhile, companies like Marketo provide pretty advanced tracking/attribution data to the companies that use them. They specifically enable tying device IDs harvested through mobile apps that use their tracking SDKs to be linked with other browsing and email behavior to build extensively customized ad campaigns targeted at specific behavior patterns.

</comment></comment></comment><comment><USER8> >"Well, because that guy pointed out a bug without also blowing sunshine up my ass, I'm going to just leave our product buggy."

Has this guy worked anywhere before? (Yes, it's a joke, I know who Zawinski is). I am sure there is a faction in Facebook who thinks their filter system needs an overhaul, and I'm sure this post will go on a big pile of "why" somewhere. However, if you're asking an engineer who works near (but probably not on) something to go talk to another team, you need to be somewhat polite. Because you're not asking them to do their job - you're asking them to go tell a colleague that they aren't doing theirs. You want them to spend political capital internally to make Facebook/whatever better for you instead of spending it on what they think would be best.

I don't think he's a hypocrite for using and hating Facebook. That's just life. I think he's forgotten that people, even Facebook employees, have ideas and agendas other than his own and you need to be diplomatic if you want them to serve yours.

<comment><USER9> A long time ago, jwz used to use Justin.tv for the DNA Lounge webcast, and I used to use his rants as evidence that someone out there cared about a given bug and we should prioritize fixing it.

If anything I think it _helped_ that his rants were rude, since that made it clear how much he cared about the problems.

Startups are different though. What you wrote is probably a lot more true of a company the size of Facebook.

</comment></comment><comment><USER10> For the Like button issue, there's Shariff, which provides a privacy friendly social button bar: [https://github.com/heiseonline/shariff](https://github.com/heiseonline/shariff)

It only tracks when you actually use the button.

(also mentioned in the comments of the original article, but IMHO worth spreading)

<comment><USER11> There's also [https://github.com/tfrce/social-buttons- server](https://github.com/tfrce/social-buttons-server) , from [https://taskforce.is/](https://taskforce.is/)

</comment></comment><comment><USER12> If you feel trapped inside Facebook b/c your friends keep you there, you can start a Campaign for your favorite new/open social network on [https://www.iWouldDo.it/](https://www.iWouldDo.it/) and start having your friends migrate.

This new tool specifically offers a way to beat the "prison effect" of products that are subject to the network effect.

<comment><USER13> I still think it's futile for most people. Like a lot of other people, I begrudgingly use Facebook because it's an easy way to engage in "low priority" communication with lots of friends and family. Mass emails or texting is too demanding whereas the Facebook style of communication you can take or leave when you feel like logging in to read random posts.

The issue you touched on won't be easy to fight. I think that as long as these social platforms don't need to use any common protocol (like email), the natural state is to have a single major player with smaller ones maintaining pressure to improve and add new features.

I'm apparently one of the only people who likes Google+ for this sort of thing but no matter how hard I decided to bug and annoy people, there's no way I'd convince enough of them to migrate all of that stuff over there. Same goes for any other competitor. And unless you want to maintain redundant profiles for more effort (and more of the unavoidable marketing stuff) you can't just strike out on your own without defeating the purpose.

The fact that Facebook was the first to get your mom and your professor and your boss and your mailman to sign up means that they've got an incredible advantage. There's just no way to get that many people to opt into something else, especially as resistant to change as many are.

And unlike email, I can't just switch to G+ and keep bullshitting with my friends on Facebook like I switched to Gmail and kept emailing friends at Yahoo or Hotmail. Imagine if in order to change email providers, you had to convince everyone else to switch as well. We'd still be using our AOL addresses from 1993.

<comment><USER12> > There's just no way to get that many people to opt into something else

Not in one day. It's always a process. And with a system like iWouldDo.it, you "switch hypothetically" (using a pledge with a condition) and when your condition is met (i.e. "Alice, Bob and Chris are ready to switch, too"), you switch for real. Which results in other peoples' conditions being met, which makes them switch as well, etc. etc.

</comment></comment></comment><comment><USER14> Instead of embedding Facebook's "Like" button, I prefer to use the fb share URL to create my own "share" button that does not have fb tracking code. If I want to show a share count next to the button, I can make a call to graph.facebook.com with the URL and then show that number.

I can't think of a reason to put a fb Like button on a web page anymore.

</comment><comment><USER15> So we are tracked by facebook if we are logged in and see the like button on a different page. Does this mean that other sites are doing the same, if we see a button for their sites, like twitter or p interest? Or is facebook the main perpetrator here?

<comment><USER16> I don't know about Twitter or Pinterest's tracking, but I do know that most ad networks will also track you as much as they can between all the sites.

There are several products that help deal with this, but they don't get nearly enough attention. The one I'm familiar with is PrivacyFix [1], but there are several others that should also be investigated if this matters to you.

[1] [https://www.privacyfix.com/start/install](https://www.privacyfix.com/start/install)

</comment></comment><comment><USER17> Specifically, you want to use the EasyPrivacy filter subscription with your ad blocker.

</comment><comment><USER18> I don't like facebook either, but can't we just not use something without making a huge sensational scene about it?

Also, for those whose eyes hurt from the matrix color theme the site uses, you can change the colors by opening up console and running:

document.getElementsByTagName("body")[0].setAttribute("style", "color: #333; background-color: #ddd");

<comment><USER19> Normally I'm in favor of the "don't use it, then" approach. But it doesn't work with Facebook, because you're on it whether you want to be or not. Even if you've studiously avoided using it, you most likely have friends who use it and have given Facebook enough knowledge to identify and track you.

<comment><USER20> True story. I created FB account in 2012 - when I needed to log in so I could access their API documentation.

And what did I find? There was a 90% complete profile waiting for me. All my friends were already lined up, my personal data was already there, my photos were already there.

And thus I learned to love the Big Brother.

<comment><USER21> You should have learned to fear and try to fight him.

<comment><USER20> As a EU infidel, chances of me getting NSA to delete and stop collecting my dick pics is about nil for foreseeable future.

Thus I will proceed with activities more fruitful than trying to fight the windmills.</comment></comment></comment></comment></comment>


Finally – Now every business can get a video - <AUTHOR> http://www.veed.me/i-need-a-video

<comment><USER2> I love the chooes-your-own-adventure approach. I abandoned the process when I got to something about Facebook. I think you'd benefit from a bit more explanation up front, altho the link above did take me to the i-need-a-video page to start.

<comment><AUTHOR> thanks for that! but you really don't have to link Facebook at all, it's only if you want to/prefer to.

Would love to hear some more feedback yoav at veedme com</comment></comment>


Facebook finally tests a GIF button for comments - <AUTHOR> https://techcrunch.com/2017/03/24/facebook-gifs/ <comment><USER2> If it happens so, it will be very interesting!</comment>


Show HN: HTTPretty, an easy way to mock http requests in python - <AUTHOR> http://falcao.it/HTTPretty/

<comment><USER2> I'm just getting start with Python and was using the Requests library this morning. I didn't like that my tests were coupled to both the library and an Internet connection existing.

This just hits the frontpage today and it is exactly what I'm looking for. Thank you!

<comment><AUTHOR> Thanks great, I'm glad you found it useful

</comment></comment><comment><USER3> Hot damn, this makes testing easy. Thanks a lot for the module! There's a small typo in your page. "HTTPretty monkey matches" should be "HTTPretty monkey patches".

Great job though!

<comment><AUTHOR> thanks zer01, I just fixed that.

</comment></comment><comment><USER4> I'm working on a HTTP testing library based on Ruby's VCR library[1]. I've got it to a pretty basic state where it is somewhat usable. I'm definitely interested in this area. Ruby's VCR uses the Webmock library as a backend (though it can use other pluggable backends) to mock out all the HTTP requests. I had to sort of grow my own Webmock - maybe I can integrate HTTPretty instead so we don't duplicate effort.

[1]: <http://www.github.com/kevin1024/vcrpy/>

<comment><USER5> Nice. The thing I liked about VCR is that it not only allows you to mock HTTP responses, but actually records the real response the first time you use it. So you don't even necessarily have to specify what the contents/headers of the response should look like manually... To have an equivalent library for python would be very neat. Hope you guys can join effort somehow to make it happen.

</comment></comment><comment><USER6> Oh wow, this could turn out to be very useful. Can use this for automated testing for public APIs.

<comment><USER7> I think we'll put this to use right away.

</comment></comment><comment><USER8> Wonderful, was considering writing this just the other day. Thank you good sir.

One thing that would be _really_ nice, is a record mode and serialization (to JSON/yaml/etc...) plus a context manager (python's with). How ready are you for pull requests? ;-)

<comment><AUTHOR> bryanh, just saw your pull request, I'm excited to get your contributions :)

<comment><USER8> I haven't done one yet! Must be someone else. Regardless, I just wanted to make sure you guys weren't planning on lots of refactoring if I sank a bunch of time into it.

</comment></comment></comment><comment><USER9> Fantastic, I tried to roll my own a few times but never got to this point. Thanks !

<comment><AUTHOR> Please feel free to send pull-requests. There are some cool features to be done; supporting wildcards and/or regexes is one of them

</comment></comment><comment><USER10> Very useful. Thank-you.

</comment><comment><USER11> Great! I always used to have a fixed set of functions written in my personal code base todo these things. Glad yo know you have made a generic library. Good job.</comment>


What Happened to the Microsoft Monopoly? - <AUTHOR> http://economix.blogs.nytimes.com/2012/06/20/what-happened-to-the-microsoft-monopoly/?ref=business <comment><USER2> This article skips over the direct role that United States v. Microsoft had in creating space for innovative companies like Apple to succeed. Without the US anti-trust intervention it's quite possible Microsoft would have totally embraced, extended, and extinguished open Web technologies and subsumed the Web into a Microsoft proprietary platform. Macs would not be nearly as viable a product if Internet Explorer were the only browser that worked with most web sites.

Another important part of the history is Microsoft's June 1997 $150m investment lifeline to Apple when Apple was worth less than $4B. That investment predates US v Microsoft but at the time it was widely believed that part of Microsoft's motivation was ensuring Apple didn't go completely broke and thus invite even more monopoly scrutiny to the PC business.

<comment><USER3> In what way did the anti-trust case help other companies? Or how did the bundling of IE hinder other companies like Apple? I was too young and in a country without internet access at the time to remember what the deal exactly was. But it seems to me that having IE or not on my PC would in no way have affected other companies. I mean, with Firefox and later with Chrome, people switched to it mainly because they were better browsers, not because IE wasn't on their PCs already.

<comment><USER4> The problem was that Microsoft introduced proprietary extensions to standard HTML that would only work properly in IE. They first tried to create a monopoly on browser market share. By bundling IE with Windows 98 as the default browser, they succeeded in gaining 90%+ of marketshare just by default, which pretty much destroyed Netscape overnight. Then, they started to release proprietary extensions to HTML like ActiveX that conveniently would only run on a Windows computer running IE.

If they would have succeeded in this strategy, we would have a rich web experience with "web 2.0" applications, however, the protocols would all be proprietary and you would only be able to access them on an x86 computer running Windows and IE. Their strategy of embrace and extend was hugely successful, and you can see the aftermath all around you. Look at the extraordinary lengths developers have to take to support older versions of IE. Up until the justice department rulings in the early part of the 2000s Microsoft was still making subtle tweaks to try and break standard IETF protocols. They had a willful disregard for RFCs and always tried to add Microsoft only extensions on top.

The article is interesting in that he highlights the end result is that innovation trumps monopoly, however, he ignores the damage this caused to both users and entire companies that were literally wiped out by these anti- competitive practices. WordPerfect, Novell, Netscape, and countless other innovative companies were extinguished by this.

<comment><USER5> > The problem was that Microsoft introduced proprietary extensions to standard > HTML that would only work properly in IE.

Microsoft wasn't doing anything that Netscape wasn't doing. Both of them were introducing their own HTML extensions left and right. Each was free to implement the extensions the other introduced.

> They first tried to create a monopoly on browser market share. By bundling > IE with Windows 98 as the default browser, they succeeded in gaining 90%+ of > marketshare just by default, which pretty much destroyed Netscape overnight.

That's not correct. What destroyed Netscape was the fact that IE was a better browser. IE did a better job of implementing standard HTML, and it did a good job of implementing Netscape's non-standard HTML extensions, and it performed better.

It's easy to say Microsoft won by bundling, but if you look at sales numbers from before bundling, when the competition between IE and Netscape boxes on the shelves at Egghead and CompUSA and the like, you'll find that IE dominated. I don't remember the exact numbers, but I remember them being massively in IE's favor. (My employer had retail software for sale, so we subscribed to a report from a company that had an arrangement with all the major software retailers to get sales numbers, and they produced a nifty monthly report showing pretty much ever item available at those stores and how many units were sold every month. Browsers were one of the items I watched monthly on those reports).

<comment><USER4> Sales numbers for boxed copies of Netscape/IE are irrelevant because in 1998 everyone just used the browser that came with Windows. You had to intentionally try to download Netscape. In fact, you couldn't even download Netscape without using IE to do so.

I will admit that when IE 4 finally came out it was better than Netscape 4 (minus the active desktop crap that bogged down the 64MB RAM systems of the era), however, previous versions of IE were far inferior to Netscape.

Proprietary tags in Netscape? Yeah, I guess if you consider the <blink> tag proprietary, sure. They can be counted on both hands. IE had entire proprietary APIs, not just a few tags. There's a huge difference.

<comment><USER5> Netscape, in addition to <blink>, added <font>, <basefont>, changing the text color via an attribute of the <body> tag, attributes to change numbering style for <ol>, the height and width attributes of <img>, the background attribute of <body>, <center>, a bunch of attributes to <hr>, <ilayer>, <keygen>, <layer>, <multicol>, <nolayer>, <server>, <spacer>, <nobr>, <noembed>, <wbr>. <big>, <small>, <sub>, <sup>. I'm not sure if this is an exhaustive list.

</comment></comment></comment></comment></comment></comment><comment><USER6> It's impossible to conclude from the evidence presented that the antitrust action had no effect on the breaking down of Microsoft's monopoly. It's entirely plausible that the enforcement left them unable to respond as quickly to new markets as their competitors, leading to them beginning to get undermined a few years later. Abusing their monopoly in the PC OS market to get advantages in unrelated markets was in many complaints against Microsoft at the time.

It's entirely within reason to believe that had the Justice Department not been breathing down their necks that Microsoft would have used its monopolies to illegally squash the original iPod. There are plenty of examples of products that were well-made, innovative, and desired but didn't make a major market impact for poorly-understood reasons (WebOS comes to mind). It's not at all obvious that the iPod was bound to succeed; if all those amorphous outside factors hadn't gone its way, we could be sitting around discussing how the iPod was a repeat of the Newton, and how inevitable it was that Microsoft finally cracked the the MP3 market with Plays4Sure.

<comment><USER7> > It's impossible to conclude from the evidence presented that the antitrust > action had no effect on the breaking down of Microsoft's monopoly. It's > entirely plausible that the enforcement left them unable to respond as > quickly to new markets as their competitors, leading to them beginning to > get undermined a few years later.

In fact, companies targeted by antitrust (I think it was IBM) have stated that antitrust regulation, by itself, shifted their focus. You are no longer rushing ahead, instead you must be cautious about everything. So it is indeed quite plausible that antitrust actions against Microsoft made possible the current non-Microsoft-dominated era.

</comment></comment><comment><USER8> This article misses the forest for the trees. During the height of Microsoft's monopoly, consumers were very much limited in their choices. MS did everything they could to keep the likes of OS/2 and BeOS off of new PCs, and that means no one ran other OS's, so no one wrote apps for them. Had that not been the case, the PCs, phones, and tablets we use today would be very different. I daresay they'd be better, for having arrived at many current innovations sooner due to the more robust level of competition and potentially having more viable options in the market today.

Just because MS lost its monopoly on its own does not mean that we, as consumers, would not have benefitted--and would still be benefitting--from breaking up that monopoly when it was more dominant.

<comment><USER9> Except Microsoft's leverage in operating systems never really carried over to other hardware platforms, like phones and PDAs.

<comment><USER8> I'm not claiming it did. I'm saying that a very different PC desktop / laptop OS and software ecosystem back in the mid-nineties would have ripple effects on PCs, phones, and tablets today.

</comment></comment></comment><comment><USER10> University of Chicago economics professor says government regulation not needed? Why am I not surprised?

<comment><USER11> I know what you're getting at, but one could argue that the market indeed took care of the problem (if you consider it to be a problem) of Microsoft having such a large market share. Apple innovated, and Linux found a place in Android. Suddenly Microsoft is playing catchup.

<comment><USER12> The market took care of the problem only because the antitrust injunction prevented Microsoft from dominating the market in its customary manner. Without that injunction, Apple would be _dead_ today. (Microsoft's investment in Apple during the antitrust proceedings is the only reason Apple survived long enough to push out the iPod.)

Indeed, a lot of what Apple is lauded for today (i.e., integration) is stuff that Microsoft was explicity prevented from doing under the terms of the antitrust injunction.

<comment><USER11> Microsoft's investment in Apple wasn't mere charity, if we're to believe this anecdote: [http://www.forbes.com/sites/ericjackson/2012/03/01/steve- job...](http://www.forbes.com/sites/ericjackson/2012/03/01/steve-jobs-used- patents-to-get-bill-gates-to-make-1997-investment-in-apple/)

Things like the iPhone weren't going to come from Microsoft. Rather than beating them in the desktop market, which Apple still hasn't done, it won on a different battlefield.

<comment><USER12> That was my point -- without the antitrust injunction, Microsoft would not have invested in Apple. Ergo, Apple owes its existence today to the injunction.

<comment><USER11> The article I linked never mentioned the injunction. Apple was suing Microsoft, and the investment by MS was part of how Steve Jobs offered to settle the matter.

</comment></comment></comment></comment></comment></comment><comment><USER13> I wonder how many people who argued about Linux vs BSD in early 90s would have predicted that 20 years later, in the post-PC-era, these would be the two most popular operating systems by far, backed by the two biggest post-Microsoft tech companies, Google and Apple.

<comment><USER14> What's interesting is they're not really competing.

BSD for desktops, Linux for servers. Not the split _I_ would've guessed 10-13 years ago.

<comment><USER13> My point was that Android is based on Linux and iOS on BSD. So the split really is BSD & Windows for desktops, Linux for servers, and BSD & Linux for phones. Who would have predicted this?

<comment><USER14> I'm pretty sure the only thing Windows can compete on, on the desktop, is price. That has to really suck.

There are very few niches/users left that actually _want_ Windows > Apple, and most of them begin with "gam" and end with "ing".

<comment><USER15> Windows still owns the enterprise. Active Directory / Group Policies still beat anything you can do with OS X, and IT groups have 10 years of experience they don't want to walk away from.

But, users are pulling these organizations, kicking and screaming into a world in which everyone wants a MacBook Air/Pro.

I really don't envy Microsoft.

<comment><USER16> Could you elaborate? I'm not particularly familiar with Active Directory, so what makes it so much better than using Open Directory on OS X? Wikipedia says Open Directory even has "Active Directory domain member support", whatever that is.

<comment><USER17> There's almost no comparison.

Open Directory is basically a ldap with MIT kerberos that can sort of integrate with AD. Most folks setup a hybrid (referred to as the "magic triangle") where you use AD for user auth and OD for computer policy stuff. It's not very robust, and Apple isn't exactly committed to the notion of server operating systems, so it doesn't get much love.

You really need to buy a client app like ADmit Mac, or a server-side solution like Centrify to really work with Active Directory.

AD itself is a really brilliant collection of software. Think of it as a fully integrated, smoothly operation bundle of LDAP, Kerberos and DNS -- it "just works".

Coming from a Unix background, AD was amazing to me as there isn't any Unix equivalent at all, except maybe for the ancient NIS and NFS integrations. You get single sign on. Robust Access Controls. The ability to trust the identities of external organizations. A policy engine to do all sorts of management activities at various levels. Oh, and it allows you to easily build fault-tolerant deployments without much forethought.

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> I'm surprised by the large Android figures there. For a time OSX became the most widely distributed unix-like consumer system and that was exciting. But despite a strong play, it's being overtaken by android. Looking at these numbers, if I was starting a consulting business at the moment I'd be tempted to focus at android.

<comment><USER19> Fractured, commodity market, lots of competition, lots of dead ends (failed devices, companies)

Vs

Unified, Premium market, no hordes of java devs jumping bandwagon, less porting, less chance of backing loser.

<comment><USER20> Tell Samsung Android is a dead end. They're generating extraordinary profits off of Android right now.

</comment></comment></comment><comment><USER21> The rebirth of Netscape navigator, JQuery and XMLHttpRequest happened to the Microsoft Monopoly.

<comment><USER12> Microsoft created the XMLHttpRequest standard; it was first featured in Internet Explorer. Microsoft was also one of the first backers of jQuery.

Mozilla owes much of its market share to the EU, which forced Microsoft to bundle competing browers with Windows, and to the collapse of Netscape in the first dotcom bubble.

<comment><USER22> Mozilla owes almost none of its market share to the EU. We earned almost all of our marketshare well before the EU decision requiring microsoft to advertise (not bundle) alternative choices and since that change in the EU a couple of years ago, we've seen very little movement in our user numbers. It may prevent IE from getting as many users, but it splits those users among Firefox, Chrome, Opera, Maxthon and others.

</comment></comment></comment><comment><USER23> I have to admit that graphs using logarithmic scaling can come quite handy when trying to make a certain point.

</comment><comment><USER24> We should be happy Microsoft is not a monopoly anymore, and instead of trying to encourage them to come back to that position, we should encourage the competition to even things out some more.

</comment><comment><USER20> The only way Microsoft, like IBM before it, could have held onto its market position was if the government stepped in and specifically protected it.</comment>


Opensource Map-based CouchDB chat for your site - <AUTHOR> https://github.com/mapchat/mapchat

<comment><USER2> Really cool! In the repo I see that nodejs is used for Twitter. Are there any other dependencies? Just checking how 'pure' this CouchApp is :)

</comment><comment><USER3> example site anywhere?

edit: <http://mapchat.me/></comment>


Obama's New Robots.txt - <AUTHOR> http://codeulate.com/?p=24

<comment><USER2> The vast majority of the entries in Bush's robots.txt were filtering out the plain text versions which are linked at the bottom of the HTML versions containing identical content. This prevents duplicates from showing up in searches. This is likely done automatically by whatever software they use to manage the content.

Want proof? Pick any of the entries ending in "/text", for example "/911/911day/text", search Google with the "/text" removed like this: "site:whitehouse.gov inurl:/911/911day" and you can still see the page in the Google cache (at least until Google's index is updated).

If you want to view it as a metaphor, fine, but there's no evidence Bush's administration was trying to hide anything on their website like this article implies. If they wanted to hide it, why would they put it on there in the first place?

</comment><comment><USER3> This is a great and semi-metaphorical comparison (woohoo transparency!), but to be fair, the Obama administration hasn't done anything yet, so there isn't even anything to hide at this point.

</comment><comment><USER4> Having /includes/ under document root - and trying to fix this via a robots.txt entry (??) - wouldn't reflect well on Obama, if they actually had any meaning :)

<comment><USER5> The includes folder looks like it's just JavaScript and CSS (including jQuery) so it has to be under the document root.

<comment><USER4> Sorry, I'm taking that back... I was thinking of Obama's campaign site where you could actually access stuff like /includes/footer.php (at least for a while, seems to be fixed now)

</comment></comment></comment><comment><USER6> Why aren't we allowed to crawl their JS and CSS?

 _What are they trying to hide?_

<comment><USER7> I hope you're joking.

</comment></comment><comment><USER8> I'm more interested in what CMS they are using. Any ideas?

</comment><comment><USER9> /firstlady/newborn/text !?

<comment><USER10> Humm... maybe there's a little Obama on the way?

Doubtful, but you never know.

<comment><USER11> That was from the old robots.txt from the Bush admin, not Obama.</comment></comment></comment>


Rust for C++ Programmers – Part 9 - <AUTHOR> http://featherweightmusings.blogspot.com/2014/07/rust-for-c-programmers-part-9.html?m=1

<comment><USER2> I appreciate this is "for C++ programmers" but as a Python programmer I'm still interested.

I'm trying to figure out why destructuring something into multiple variables causes problems for move semantics. It seems to me that if you have an object with move semantics in a particular area of memory, and you tell the compiler "I wish to use the name X to refer to _this_ field, and the name Y to refer to _that_ field", that should be fine - as long as you don't store a reference to those fields, or pass them to somebody else (the usual restrictions of borrowed code). The compiler already knows that some names refer to allocations on the stack or the heap, it seems like you should be able to add new names for existing variables at compile-time (as opposed to runtime, using pointers which would add all the horrible borrowing issues Rust tries to avoid).

Is it really just that when you create a new name, the compiler has to create a new allocation to back it, even if it would require making a redundant copy of the interesting data?

<comment><USER3> You can destructure without moving, as you suggest, by taking a reference.

Move:

        let x = (box 2u, box 4u);
        let (y, z) = match x {
            (first, second) => (first, second)
        };
        println!("x is {}", x);
        // this will not compile: x is moved into y and z

Reference:

        let x = (box 2u, box 4u);
        let (y, z) = match x {
            (ref first, ref second) => (first, second)
        };
        println!("x is {}", x);
        // this works fine

<comment><USER4> (The `match` is unnecessary in both examples: the patterns are irrefutable and so work directly in `let`.)

</comment></comment></comment><comment><USER5> As usual, I've updated the GitBook. Part 9 is now in there. Read: [https://www.gitbook.io/book/aminb/rust- for-c](https://www.gitbook.io/book/aminb/rust-for-c)</comment>


Help supplement a database of RAW images - <AUTHOR> https://raw.pixls.us/ <comment><AUTHOR> From the announcement: "...a site where contributors could upload sample raw files from their cameras for everyone to use – particularly developers".

[http://www.darktable.org/2017/01/rawsamples-ch- replacement/](http://www.darktable.org/2017/01/rawsamples-ch-replacement/)</comment>


Issue report: You are illegally sharing my fucking book  - <AUTHOR> https://code.google.com/p/06th1d-nhom03-quanlynhasach/issues/detail?id=2

<comment><USER2> Let me get this straight: A random Google Code Project is illegally hosting an e-book. Author of e-book somehow finds out and creates a nasty bug report demanding a take down?

Wouldn't filing a DMCA in this scenario do the trick? Forgive me, I'm just having a hard time finding this HN newsworthy.

<comment><USER3> Didn't you read the part where he links to a blog post, encouraging people to steal his book?

He was only objecting to the "on google code, where it makes the top 4 search results when you search for my f __*ing book"

I suspect he is not the type of copyright holder who enjoys the protection afforded to him by DMCA laws. He just doesn't want to be pissed on his face, please piss on his back only, see?

<comment><USER4> Well, to be fair, he only did that as a response to the guy publishing his book on google code. I don't think there would be a post about it otherwise.

edit: didn't see the date of the post. Thought the "yesterday" in question was actually a twitter post from yesterday.

<comment><USER5> The post is 3 years old. The issue was created today.

</comment></comment></comment></comment><comment><USER6> Here is the translated version of the project description

"software management bookseller - 2 projects subject Software Quality Assurance

The you group 03 note:

\- The TestResult in the Trunk folder to store the resulting Excel file Test Unit

\- Folder Test Unit in the trunk to store source code test unit

Part of you does that person's post into the right folder

The assignments are in the Document you to view and download

\- In a work assignment you fill out to complete his term and then update, and the completion of the self assessment and complete performance of work done on the assignment offline

Good Luck :)"

</comment><comment><USER7> This reminds me of the recent post analyzing top HN stories statistically. One of the conclusions was that having profanity in the title helped your article do better; I can't help thinking that this is a very illustrative example of that observation in action.

</comment><comment><USER8> I reported this internally at Google -- looks like the file has been deleted.

</comment><comment><USER9> It is humorous. I clicked, I up voted. Seems perfectly fine for HN

</comment><comment><USER10> Could someone give more context?

<comment><USER3> Really? Click on the issue link (article), then once you've read it, click on the Downloads link. There is Manning 2009 Art of Unit Testing, and some random thai/viet filenames that go along with the rest of the project, which seems to contain nothing original -- but I can't say for sure, I don't talk thai.

<comment><USER11> It's vietnamese.

<comment><USER3> Thanks. (Hard to post ignorantly without sounding ignorant)

</comment></comment></comment></comment><comment><USER12> I think the author is confused about what happens when one publishes on the web.

</comment><comment><USER13> Somebody is mad about their book being read. Cry me a river. If you didnt want your book to be "stolen" then dont write it. You, as author, will not control what I read, how I read and where. So yes, I am gonna "steal" that book from you, just to steal from you, and then delete it from my computer. Its probably not worthy of being read anyway.

And furthermore, nobody is sharing your book illegally, they are sharing a digital copy of your book as a data-file, which is very quite different from a real book. You cant hold it you see, you cant smell it, you cant borrow it to your friend, only make another copy.

<comment><USER14> "If you didnt want your book to be "stolen" then dont write it."

If you didnt want you car to be "stolen" then dont buy it.

If you didnt want you wife to be "raped" then dont get one.

If you didnt want you computer to be "hacked" then dont have one.

Very compelling argument.

<comment><USER15> A substantial difference between "a car" and "a file on a computer". One main difference is that one actually can steal a car: if I steal a car, I possess it, and the owner does not possess it. He or she can no longer use the car, while I can.

The book in question exists as a file on a computer. If I copy that file, then the owner is not deprived of the use of the file: he or she still possesses it, and can still use it. That's not theft in any traditional sense.

The other raping and pillaging scenarios are equally nonsensical, pretty much on the same logical grounds. Please try a new argument next time.

<comment><USER16> If the owner of the file makes his living by selling copies of the works he created, taking a copy and putting it on the web (where they can be had for free) reduces the value of his works. In other words, the owner _is_ deprived of the use of his works because you've diluted their value.

The argument that "you still have the original so you are undamaged" is false. If the startup you work for dilutes your 5%=100shares of equity down to 0.0001% and the value of your stock is reduced to near zero, I can asure you, you won't feel comforted by the fact that you still have 100 shares.

<comment><USER15> Shares are different: they're like money, they represent value. A copy is a copy. Humans copy: that's how we made technological progress. Someone didn't invent agriculture while out on a hunt and then coast for the rest of his/her natural life on the "intellectual property" and then have his/her descendants coast on the proceeds. People copied what they saw that worked. Copying is how humans make progress, trying to stop or inhibit that is going to warp society beyond belief.</comment></comment></comment></comment></comment>


Show HN: CarAdvisor – A technology based car recommendation engine - <AUTHOR> http://caradvisor.io <comment><USER2> That's pretty cool! Where did you get the data?

Is there a plan to sell advertising or get referral revenue?

<comment><AUTHOR> Possibly referral revenue at some point. At this point I'm refining and expanding on the design.</comment></comment>


The Yield Curve Has Dis-Inverted. Are We Safe Now? - <AUTHOR> http://econbrowser.com/archives/2019/10/the-yield-curve-has-dis-inverted-are-we-safe <comment><USER2> As long as the fed buys the crap out of the mid dated treasuries the curve will not be inverted.</comment>


Dropbox Blows Up the Box, Connecting Every App, File, and Device - <AUTHOR> http://www.wired.com/business/2013/07/dropbox/

<comment><USER2> Good WIRED article. For the Minority Report (movie) style of your data available everywhere, we need a bit of hardware also for authentication. The only physical thing I always have with me is my wedding ring - it would be neat if small RFID or other security/auth gear could be easily put into existing things, like wedding rings. An alternative would be something under the skin, but I am not so keen on that.

Not to wander off too far afield here, but: secure auth is required to move further forward in user convenience, but in a world where most major companies and most large government organizations get hacked into, having a secure and unobtrusive "single sign on" to all services is tough.

In anycase, I think Dropbax really gets a lot of stuff right. I was just helping a friend and his wife deal with data on different devices and I kept pushing Dropbox. For me, the $100/year is a no-brainer buy decision because I get much value from Dropbox, but they were not convinced.</comment>


Pwdr - an open source powder 3d printer - <AUTHOR> http://pwdr.github.com/

<comment><USER2> This is awesome, I had forgotten the kickstarter to make an inkshield, apparently the guy pulled it off and made 'em [1]. Way to go. I apologize in advance for killing his web site.

[1] <http://nicholasclewis.com/projects/inkshield/>

<comment><USER3> Indeed, I've used an earlier version of Nicolas' inkshield for the Pwdr machine, it works great!

</comment></comment><comment><USER4> My initial reaction was this might be a hoax, or at least vapourware, on account of the lack of any print pictures or videos, just the very nice glossy shots of the machine sitting idle.

However I did find one video: <http://www.youtube.com/watch?v=bzX5x1A1AMg>

And one photo: <http://www.thingiverse.com/image:161441>

So, seems the results may lag a bit behind the presentation, but this is still really exciting to see. Fair enough for something they're calling v0.1, as well.

<comment><USER3> The focus was mainly on the machine and not the results, as they can still be improved. But i've added a section on the Github website with pictures of print results. Hopefully this proves that it isn't a hoax ;)

<comment><USER4> Very nice, thank you!

Didn't mean to be too cruel about it, it's just that with a new 3d printer announced almost every day I always look to see what the achievable print quality is like.

It's a great project you're working on, I'm sure many people (me included) will be watching closely.

<comment><USER3> Oh no, I totally understand your first reaction. Hopefully, others will pick up the project too and start experimenting and improving the machine. And one of the reasons to get people's interest is to make it all nice and shiny. As you've mentioned, a new 3D printer is announced almost every day, but 90% just looks crap

</comment></comment></comment></comment><comment><USER5> It's very superficial of me, but I wish more open source hardware projects went to this much effort to "sell" their product.

Beautiful page design, well written copy, nice photography and a great looking device.

<comment><USER6> While I do agree that the page design is nice I don't consider this a good presentation of the end product or an open source project. The first thing that you should show if you are selling the product—doesn't matter if it's to fellow open source developers or customers—is that it works. And the best way to show that is with a simple and short video.

It could be of course that the presentation is not yet finished completely. Nevertheless, the idea is really nice and I would love to see the project take off.

<comment><USER3> Thanks for your feedback. Meanwhile, I've added some pictures and a video of the printer. A more extensive video should follow soon.

</comment></comment></comment><comment> Pirate-of-SV Am I the only one waiting for a 3D printer which parts can be created with a 3D printer?

<comment><USER5> Isn't that the whole point of the reprap projects?

You're going to be waiting a while if you're hoping for a 3D printer that you can buil at home and can churn out steel rods, bolts and belts.

<comment><AUTHOR> Pwdr can do aluminum oxide and likely also other sinter metals.

<comment><USER7> A step in the right direction. I've always felt that home 3D printers will truly become a game changer only when they can make _metal_ items, like DMLS[1] does.

[1]: <http://en.wikipedia.org/wiki/Direct_metal_laser_sintering>

<comment><USER8> A machine that can make metal parts from a blueprint can also make all kinds of weapon. Do you think such a 3d printer would be legally available to the general public?

<comment><USER7> Actually, there was a big kerfuffle on Thingiverse when someone published, as proof of concept, a design for a plastic rifle magazine: <http://www.thingiverse.com/thing:11636>

<comment><USER7> People have also done the lower receivers for the same rifle (an AR-15): <http://www.thingiverse.com/thing:11770>

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> So how does this compare to the quality of the rep rap? Is this a better approach?

<comment><USER2> It will compare badly at first.

RepRap/Mendal/Prnrbot/Makerbot all use a plastic extrusion mechansim (think robo-spider) which can make a lot of cool things but cannot make a bunch of other things. In particular 'spinning' machines (as I tend to think of these) cannot make large overhangs because the material they are using has no structural stability while being extruded. [1] The "Dual 'struder" on the Makerbot Replicator opens the possibility of a 'support' material that can be removed, this requires filling in with the support material to support the non-support material being extruded over it. The support material is later removed with a solvent.

In powder based machines the 'unbound' powder it its own support. So overhangs are not an issue. The challenge with powder machines has always been that the materials have relatively poor structural stability (in the cornstarch variety) or require a precise (and) delicate sintering process, or a 'firing' type process. In all cases having both bound and unbound material present can challenge the finishing stages.

[1] These machines melt ABS plastic to the weak/sticky stage as they push it out (typically 220 - 240 degrees). At that temperature a strand cannot hold its own weight.

</comment></comment><comment><USER9> I'm not understanding how it works. Can someone explain?

<comment><USER10> 1: A very thin layer of powder (plastic) is evenly spread. Then the print head prints a binder on the places where you want to create a slice of your 3D model. Then another layer of powder is layered on top of it and GOTO 1. When all slices are printed your 3D model will be covered in powder which is also the support material for overhanging slices.

It's very hard to make this up from the photos but I think you can see the container for the powder and model with a movable bottom.

-EDIT- This printer uses a binder, but other models melt the powder with a laser (Selective Laser Sintering).

<comment><USER9> Thanks. A couple follow up questions:

So does the user sprinkle the powder after each slice, or does the machine somehow do it? How would the machine make an even layer of powder?

Why doesn't the powder stick to the print head, or get pushed around unevenly by the print head?

Why doesn't the powder fall out during printing?

<comment><USER10> _So does the user sprinkle the powder after each slice, or does the machine somehow do it? How would the machine make an even layer of powder?_

I can't make it up from the pictures, but most printers just trow a pile of powder on top of the last layer and flatten this with an arm. But I think this video will show it much more clear: <http://www.youtube.com/watch?v=wD9-QEo- qDk> (take a look from 1:50).

 _Why doesn't the powder stick to the print head, or get pushed around unevenly by the print head?_

Because the print head never touches the powder. Just like it doesn't touch the paper in your inkjet printer.

 _Why doesn't the powder fall out during printing?_

Check the video ;)

<comment><USER3> Well, you've covered pretty much all questions, but here is a reply from the builder :)

 _So does the user sprinkle the powder after each slice, or does the machine somehow do it? How would the machine make an even layer of powder?_

The storage bin moves up a little and the build bin down, and then a counter- rotating roller (mounted on the XY-carriage) deposites the powder from one to the other bin.

 _Why doesn't the powder stick to the print head, or get pushed around unevenly by the print head?_

Indeed, the printer head is mounted ±4mm above the powder bed and can never touch the powder. See the printer head moving across the powder bed in this video: <http://www.youtube.com/watch?v=bzX5x1A1AMg>

_Why doesn't the powder fall out during printing?_

Because the pistons form a seal and don't let the powder fall through.</comment></comment></comment></comment></comment>


Ask HN: How legal is Grooveshark's model? - <AUTHOR>

Is there business of providing free streaming songs when searched sustainable? <comment><USER2> I believe that the songs they play are properly licensed, much like radio stations. I also believe this cost them a stupidly large amount of money.

So I believe your question can be rephrased "Will the cut the studios ask for be insufficient to bankrupt grooveshark or other streaming media suppliers?"

<comment><USER3> At various times I have seen songs that look like they have been uploaded from someone's MP3 collection (e.g. search for "mp3") - this makes me wonder how legit their licensing really is. Although perhaps they recognise which songs are being played and pay the appropriate people, but I can't really see the music industry going for that.

<comment><USER2> It seems as though you are correct. [http://techcrunch.com/2009/10/13/grooveshark-slips-past- emis...](http://techcrunch.com/2009/10/13/grooveshark-slips-past-emis-lawyers- signs-new-licensing-agreement-instead/) They have signed with some labels and as such can legally play some content. On the other hand, they were recently kicked off android over copyright concerns, so apparently they arn't airtight [http://arstechnica.com/gadgets/news/2011/04/google-kicks- gro...](http://arstechnica.com/gadgets/news/2011/04/google-kicks-grooveshark- out-of-the-android-market.ars)

</comment></comment></comment><comment><USER4> Spotify is making the freemium model work in the UK & other parts of Europe. However, Spotify's success is partly due to their extraordinarily high free- to-premium conversion rate (upwards of 20%).</comment>


JavaScript Equality Minesweeper - <AUTHOR> https://slikts.github.io/js-equality-game/ <comment><USER2> I see a lot of comments here suggesting that == is okay to use if you know what you're doing or if the types on both sides match or if this or if that. Writing idiomatic code is all about being expressive and being explicit. Even in the most common case, testing for null or undefined, it's absolutely not clear what is actually happening or what the intent is. I write a lot of JS, and I've never had any justifiable reason to use ==.

<comment><USER3> Depending on your conventions for null/undefined (another annoying wart of JavaScript), I think it often makes sense to treat `== null` as a special allowed case. In the code I work in, `== null` is strongly encouraged (but not required) as the way of doing null checks, and all other uses of `==` are disallowed by lint. Just like our other patterns and conventions, it's something people pick up reasonably quickly as they're introduced to the code, nothing tricky, just a little pattern that acts as a concise replacement to the `?` operator from CoffeeScript.

The alternatives are writing `x === null || x === undefined` everywhere (which might lead to people just picking one out of laziness, leading to bugs), doing things like `if (x)` (which we still do sometimes, but can lead to subtle falsy-related bugs if you're not careful), or to do careful bookkeeping of when variables might be null vs undefined. In my opinion, the null/undefined distinction is more cognitive overhead than the benefit it provides, so it's best to just check for both at the same time and never intentionally treat them as different. Given that mindset, I think the `== null` pattern is slightly unfortunate, but better than the alternatives.

<comment><USER4> My team checks for types, not for null.

`const isString = myVar => typeof myVar !== 'string'`

This is more reusable and more idiomatic in my opinion than null/undefined checks

<comment><USER5> But then you have the problem that typeof null === 'object'.

</comment></comment></comment></comment><comment><USER6> The problem with this and the wat talk is that

* you don't actually see the case-space (value space) of all the comparisons that _do_ work as expected, and

* you don't a sense of what is the likelihood that these sort of comparisons would happen in real world code

Some of them like the empty string are likely to happen from user input, but Typescript mitigates those by forcing you to e.g. use Number(inputField.value) to conver to number and complaining about the assignment otherwise.

Others pretty much never ever happen - instead of comparing 1 or -1 to true, you're more likely to use if (val) which casts to boolean, and the truthy table is different from the equality comparison table (it makes a bit more sense)

Most of the real world comparisons are to non-empty strings or numbers, and those are only equal to arrays in some cases - but its rare for an actual array to be produced by anything. Things you know are arrays already you don't compare using "==" to begin with.

So yeah, in practice the confusing rules of JS equality comparison don't really matter all that much.

<comment><USER7> "So yeah, in practice the confusing rules of JS equality comparison don't really matter all that much."

I run into this all the time. Plenty of junior devs I work with do this. Unfortunately we haven't implemented typescript yet. Yea === solves this problem but I wish there was a deprecation path for ==. Why can't we figure out as a community how to deprecate horrible javascript apis? Why can't we as a community figure out how to have a good standard library?

<comment><USER8> The deprecation path for bad apis is to use eslint. If you make it so you can't merge without eslint passing then you have effectively deprecated syntax.

</comment></comment></comment><comment><USER9> "Let's talk about Javascript!"

[https://www.destroyallsoftware.com/talks/wat](https://www.destroyallsoftware.com/talks/wat)

<comment><USER10> So great. There actually are 16 NaNs in the Batman song!

</comment></comment><comment><USER11> Fun game. Really captures the spirit of the subject. Great idea!!

I'm not one to pride myself on ignorance, but the JS equality operator is ridiculous and therefore, IMO, not worthy of the mental energy it demands.

> How well do you know the rules for the == operator in JavaScript?

Well enough to use `===`. I've noticed in my code every time I'm tempted to use `==`, I always end up finding a better way. `==` is basically code smell that only really smart people should use.

<comment><USER12> > `==` is basically code smell that only really smart people should use.

And then cross your fingers that no one else ever has to look at or work on that code because they might not pick up on whatever "smart" reason the == operator was used.

</comment></comment><comment><USER13> It's so funny. Anybody still using == with js?

<comment><USER14> I'm interested to know what people think about this with TypeScript - quite a lot of the weird behaviour in plain JS is rejected by the compiler, eg, "true == 1" evaluates to true in plain JS, but is a compiler error in TypeScript since it rejects bool vs number equality checks.

So with TypeScript code, I've been continuing to use == as in most other languages, with the expectation that any odd comparisons will be flagged by the compiler. On the other hand, I've not verified myself that it catches them all, so I wonder if anyone has come across other edge cases with this that could cause problems down the line.

<comment><USER15> I prefer it when Typescript tries to provide static type checking for Javascript rather than providing checking for how they wish Javascript was. `(x: number, y: string) => x == y` is an error because 'this condition will always return false'. In what language? There are linter rules for enforcing === over ==; Typescript having incorrect type definitions to try and make sure you only use == like === seems like a really poor solution to that.

<comment><USER16> I'm guessing you can't use `(x: number, y: string) => x === parseInt(y)`?

<comment><USER17> As long as you feed parseInt it's second radix parameter you can :p

</comment></comment></comment></comment></comment><comment><USER18> Well, looks like my knowledge is negative. I clicked the box random and when i asked for my result i was 245% wrong. O_o'

<comment><USER19> Probably some badly placed equality operator in the script.

</comment></comment><comment><USER20> Super cool application, and can teach a lot about why you should use === instead of == in JavaScript.

The only legit case to use == is if you are

1\. Insane

2\. The kind of person who changes Java 1 object to equal 2

</comment><comment><USER21> I don't think it is useful to know the behaviour of JS in such cases. In practice, you rarely compare strings with numbers, or objects with booleans.

I wrote tens of thousands of lines of JS (e.g. this library [https://github.com/photopea/UPNG.js](https://github.com/photopea/UPNG.js) ), I never used "===" in my life :D

<comment><USER22> The implicit coercion rules don't matter if you make sure to convert the types explicitly, but then you're just relying on your discipline. You might be able to pull it off individually, but it starts mattering more when working with other people.

Also, from a brief glance at your code example, you don't seem to have caught up with other current best practices like linting or modules.

<comment><USER23> You don't have to rely on discipline, you can use tooling like ESLint or Flow to make sure there are no implicit conversions in the codebase.

<comment><USER24> eslint absolutely can't figure out whether '==' will implicitly convert its arguments or not.

The type information simply is not there.

<comment><USER23> eslint can disallow == for anything but `== null`. Problem solved.

[https://eslint.org/docs/rules/eqeqeq](https://eslint.org/docs/rules/eqeqeq)

<comment><USER24> This thread is about not using `===`; it's obviously true that it can be disallowed entirely, but it can't be allowed based on whether or not it will coerce, which was the context of the thread.

</comment></comment></comment></comment></comment></comment><comment><USER25> There's a lot of ===ers in here. I can't say I've ever experienced a situation where not using === has caused an issue. However, I can think of many cases where === would have caused an issue. In other words, I've found == better handles unintended logical errors. Nonetheless, the equality chart is difficult to memorize. Luckily, I typically only deal with a subset of it.

</comment><comment><USER26> it seems equality operator in javascript is good for nothing but being a source of confusion and a target of jokes.

does it not make sense to just remove it from the language completely? who is deciding that?

<comment><USER27> _> it seems equality operator in javascript is good for nothing but being a source of confusion and a target of jokes._

I would say that's the defining characteristics of JavaScript.

It makes it fun to write JavaScript with its quirkiness and "dynamic" nature. And once you master it you become a ninja.

Compare it to Java or Golang where you are restricted by the language syntax and anything slightly creative and fun is either not supported or not idiomatic.

<comment><USER28> You'll have to show me one inventive and useful "ninja" trick revolving around the use of '=='. Sounds to me like the classic "my programming language is perfect and if you don't like it you're just too dumb to get it". This is pretty common among C developers in my experience but I didn't expect that from JS enthusiasts. What's next, PHP ninjas?

<comment><USER29> > You'll have to show me one inventive and useful "ninja" trick revolving > around the use of '=='

Sure! For starters, you can write

        if (foo == null) { ... }

Because `undefined` gets coerced to `null`, it saves you from writing:

        if (foo === null || foo === undefined) { ... }

And, because it's shorter, it's even allowed by [some JS linters]([https://standardjs.com/](https://standardjs.com/)).

There you have your JS ninja trick to handle two distinct null types^TM .

<comment><USER28> I would argue that it's only a "feature" because JS has this needless dichotomy between null and undefined so it's basically two issues cancelling each-other, but that sounds a lot like moving the goalpost so I'll concede the point.

<comment><USER29> Just to make sure, my "ninja trick" was meant in an ironic manner. In my opinion, it sucks JavaScript has two equality operators, and it's inexcusable for it to have two different null types. That fact that you can use the forer to check for the latter with less code doesn't make either okay in any sense.

</comment></comment></comment></comment></comment></comment><comment><USER30>
      NaN == NaN

is falsy, no? (Shows as truthy in the game, unless I am misunderstanding.)

<comment><USER31> NaN == NaN is falsy (so is NaN === NaN, for that matter).

But when I played the game, it looked to me like the game correctly claimed it is falsy. (Though I'm not 100% sure I know what the notation the game uses means.)

</comment></comment><comment><USER32> True == 1 but False "not ==" 0

Wut?

<comment><USER33> Not sure what you mean, can you explain more? When I open my console, I get:

        > true == 1
        -> true
        > false == 0
        -> true

Do you get something different? Or is the game claiming something different?

<comment><USER32> the game claims something different no ?

</comment></comment></comment><comment><USER34> `true == [1]` is news to me

</comment><comment><USER35> There needs to be a PHP version of this.

</comment><comment><USER36> 668% wrong!! :D</comment>


Show HN: Building public crypto art in the Ethereum network - <AUTHOR> https://medium.com/ethplace/building-public-crypto-art-in-the-ethereum-network-fded5d8c3b8e <comment><USER2> Reminds me of [https://thousandetherhomepage.com/](https://thousandetherhomepage.com/)</comment>


Burn Baby Burn - <AUTHOR> http://avc.com/2014/09/burn-baby-burn/ <comment><USER2> There is something missing in the startup mind-cluster, I think.

A lot of the ideas make sense from a certain perspective, even these incredible valuations and exits. There really _is_ a chance to create or invest in the next Facebook. It's not a big chance, but the payoff is so big that it can fuel funding and building thousands of attempts.

One of the premises of this complexes is the idea that highly impactful businesses can be started fast and cheap leveraging the internet as a marketing and distribution channel, open source software, cheap computing power and other levers of these times. If they focus on building popular useful things, the scale can get so big that monetization is likely enough to come. That is, likely enough for the investors formulas.

But, what of businesses that become popular and useful and financially successful relative to the financial needs of running the business? Reddit. OKCupid. The proverbial Craigslist.

What if a business can employ 100 people comfortably, serve 100,000s of customers usefully and reward the founders to the tune of millions, but not billions. Can these exist? Can they last for decades? Generations?

Is it efficient to roll the dice on a hundred $10m per year businesses for the chance at one $10bn business. On paper it's a 10X improvement?

I'm not trying to ad my voice to the sour grapes tasting comments about valuations and such. I'm just wondering if we can let a million flowers bloom for a longer stretch, not just for their ability to win the big-or- go-home game.

I think I might be saying this backwards. Let me try it another way. A lot of the current startup thinking is premised on the idea that small teams can have a big impact relative to the cash requirements. A second idea is that a startup making a big impact has a decent chance of turning into a multi billion dollar company or a $100m+ acquisition for a multi billion dollar company. Is there no room to build on the first premise without later building on the second premise? Could Facebook have connected people as well as a 500 person company?

This is a tangent to Fred Wilson's point, but I feel like it might boil down to a similar enquiry.

<comment><USER3> Venture capital is supposed to be mechanism for funding at the highest levels of risk and reward. But somehow we've decided that it's the only model for Internet companies. So a lot of companies and individuals with perfectly workable small or medium-size ideas end up inflating them to VC size to get funding, and then fizzling out. A sad side effect is that it discredits the ideas.

We have a grandiosity problem in Silicon Valley. The problem isn't really VC, but the lack of alternatives along the other parts of the risk/reward curve.

<comment><USER4> Doesn't fit what I knew: that most startups are Angel funded. Or did the pendulum swing, and we're back to VC funding?

<comment><USER3> I don't see a practical difference between the two in our industry. They're part of the same pipeline.

<comment><USER5> There are substantial differences between angel investors and VCs from a practical point of view, even if both will get you access to capital:

\- Angels rarely do due diligence, VCs almost always do.

\- Angels tend to look much more at who else is investing in the company, almost never want to be 'alone' or 'first'.

\- Also they are typically much less experienced as investors and having them on-board can be a pain, especially when you're doing a start-up outside of their field of expertise

\- VCs investment tends to come with some visibility perks

\- it is usually easier to get investment from a group of angel investors than it is to get investment from a VC

<comment><USER6> All of the angel dynamics you're talking about here are premised on a trajectory that takes angel-funded companies through VC rounds. If there wasn't a presumption that N out of K portfolio companies would get an A round, angels wouldn't invest this way.

<comment><USER4> My company is angel-funded, no plan on turning to VCs.

<comment><USER6> Sure. But you don't think that the terms you got for your company benefited from the broader angel market's expectations about how most companies will achieve liquidity (almost all of them through VC)?

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Wow - I posted what I thought was a thoughtful comment on Fred's blog, disagreeing with his throw-away intro on paid content - and it seems to have disappeared?

My point was, why should we reward Business Insider for ripping off content, instead of rewarding WSJ?

Why not reward originators of content, instead of recyclers? Clearly, he liked the interview enough to link to it - why should BI get a benefit instead of WSJ? He seems to think that it is "inevitable" that digital content will get ripped off, but perhaps that's only true if they (a) don't innovate on payment models, (b) don't innovate on fair use rules.

One of the digital currency companies in USV's portfolio could surely work out a micropayments deal with WSJ to allow people to pay-per-use for content, instead of subscribe.

So - that was the gist of what I had to say. Insightful, maybe not.

But now I'll add to it - I much prefer the YC approach, where my comments are free to sit there, and get ranked accordingly.

<comment><USER8> > But now I'll add to it - I much prefer the YC approach, where my comments > are free to sit there, and get ranked accordingly.

Sure, assuming you haven't been shadowbanned for some arbitrary reason years ago, in which case your comments are free to sit there invisible to most without you knowing.

</comment></comment><comment><USER5> There is something supremely funny about VCs complaining that their start-ups behave like funded start-ups and not like bootstrappers, who focus on revenues and profits right from day 1.

"At some point you have to build a real business, generate real profits, sustain the company without the largess of investor's capital, and start producing value the old fashioned way. "

Exactly. So how annoying it is when you're bootstrapping a company, you have your price-points carefully set, you're doing a cracker job at concentrating on 'how to sustain the company without investors capital' and then _boom_. Out of the blue some never-heard-of before company that does the same thing you do starts to hit your customers with a price point that you simply can not beat because they are able to 'burn baby burn' or maybe even give away that identical product for free because they're racing for an acquisition before the money runs out.

That's real trouble. Sometimes it's not just one.

But there is good news: they usually don't survive in the longer term because they don't have a business model. Once it's free you can't really go back to 'old-fashioned'.

So once they've folded up, you've bought their Aeron chairs at 5 cents on the dollar and you're re-connecting with your old customers and picking up the pieces you have a fairly clear field. Contaminated by an over-promising under- performing competitor that thought that 'growth' is equal to 'health'. (If that were true then cancer or a locust plague would be good news.) How you're going to survive the interregnum of unfair VC funded competition is a really hard question for which I have no other advice than to cut every bit of spending and go into 'cockroach' or 'spore' mode, hang on to your core team at any price.

VCs should be far far more critical about the companies that they invest in, that the path to break even is clear and that they are not going to invest in a company whose business model is broken but where the cracks are paved over with marketing and growth by burning investors money.

That just spoils the soup for everybody and sometimes it kills entire segments.

Especially companies where investment is made in B, C or even later rounds should be looked at very carefully. A healthy company would survive and grow even without VC investment, it's supposed to be an accelerator, _not_ life support.

So burn, but burn with care and a very good plan. Concentrate on your bottom line taking into account that VC capital will not last forever and make sure that the transition from 'supported' to 'unsupported' is a smooth one and that your business model does not somehow depend on the 'supported' bit in a hidden way.

If you're partying like it's 1999 you're definitely doing it wrong and your bubble will almost certainly pop, the more VC money there is the more of it will be dumb.

<comment><USER9> You read my mind! I've heard parents complain that their toddlers are getting too fat on sugary snacks, complaining about how much sugar is being put in snacks these days. Never once recognizing that they, the parents, were picking out the snacks, not their toddler.

VCs have a similar issue, which is that there are more LPs and other investors who didn't live through 2000 and are more 'growth' rather than 'business' focused. They are giving their money to people showing 'growth' then that is the metric that folks start optimizing. If VCs will only fund companies which are headed toward 'cash flow positive' then that is the metric that gets optimized. You can see this dynamic in action at YC demo day as the YC tunes what it is they want to see in the companies, what ever that is, it shows up in a lot of slide ware :-).

So I think Fred is grumbling that there is a lot of "less smart" money out there and he has to either sit out while it flushes down the toilet or compete with it in the companies where he wants in. And that cuts into margins and it cuts into discipline because people who think the next round of funding is 'in the bag' have much less concern with how they spend this round. It doesn't help that even the "smart" money has no where to go that will provide significant returns [1]. So that doesn't help either. The good news is that these things reset themselves, the bad news is that it always seems to catch some folks completely by surprise.

[1] The period of low interest rates has gone on so long it has now started flushing out 20 year t-bills and other multi-decade "safe" investments. This is probably a much bigger story than the WSJ and others have yet picked up. There is a lot of dynastic wealth getting crimped.

<comment><USER10> > It doesn't help that even the "smart" money has no where to go that will > provide significant returns [1].

This is an inaccurate understanding of what is taking place.

It's not that there are no asset classes capable of delivering "significant" returns today; heck, the S&P 500 has nearly doubled in the past four years. It's that to get returns, investors have been forced to pay significant premiums and take on greater risk.

That said, the money that is pouring into startups (through venture funds, super angel funds and individual angels) is _not_ money that was previously being invested in Treasuries. The startup bubble is being fueled by the public equities bubble, which is a rising tide that has lifted a lot of boats.

<comment><USER11> It's a cascade, isn't it? Money that used to go into Treasuries has shifted into money-market funds, money from those has shifted into equities and bonds, money from those has shifted into riskier equities and bonds and so on.

</comment></comment></comment></comment><comment><USER12> The words; Horse, Stable and Bolted come to mind. VC's and their stupid valuations have created this problem.

The idea that a business isn't worth investing in because it's only going to make millions, not billions, also doesn't help. VC's would be better off diversifying in lots more companies that have a better chance of making a more modest profit, than a few that are then pressured to make 10's of billions.

I guess ultimately it comes down to the point in which they exit, the dumb PE ratios of Facebook, Twitter etc allowed someone to cash out nicely when they floated, but for the suckers that brought the stock on the public market have no hope of recovering their cash.

<comment><USER13> You're referring to an extremely small percentage of the venture investment community that is dealing with concerning itself about making billions. I'd argue that's 0.1% of the venture investment activity in the US market (but not 0.1% of the dollars). It's basically a few markets on earth.

Go to St. Louis or Dallas and you'll find venture investing going on all over the place that focuses on companies that will make millions and not billions. When you start a hotdog stand, and raise $50,000 from your cousin, that's venture capital too.

The US economy is not lacking in VC activity around million dollar businesses. There are more venture capitalists running around funding smaller ventures than at any other time. As I'm sure you know, $50k - $250k is not what it used to be 30 years ago, and it's now very inexpensive to start internet companies.

In my experience and observation it has never been easier to raise money for a x million dollar business venture, and I believe this to be true for nearly any city in the US.

That investment activity however does not make the headlines, and few people bother to do their research into how many 'boring' deals are being done by investors worth sub $10m that put $25k or $75k into a startup in Cleveland.

</comment></comment><comment><USER14> If a company was going to reduce its spend to a sustainable rate, why would it want to mortgage itself to an investment firm?

I thought the main point of selling your soul to investors was to increase your burn rate. If you were bootstrapping your company it seems like you'd want to maintain control and ownership.

<comment><USER15> A good use of investor money is when you have a proven and controllable conversion from signups -> paying customers.

For example if you need $200 averagely to acquire a customer and the LifeTime value of the customer is $500 over a 10 months timespan. With a positive conversion, you can scale very aggressively with almost no risk, whereas if you re-invest your profit, it will take much longer to reach the same point. If you are in a competitive space, you especially might benefit from investor money.

<comment><USER16> Such a company with a proven ROI on its marketing should go for venture debt, not venture capital. If you can 2.5x your money in 10 months and capital is at 0% interest out there, why would you sell a huge stake of your business to get to that 0% capital?

</comment></comment></comment><comment><USER17> Honestly, this sounds like Monday morning quarterbacking.

When all these companies lined up and raised umpteen million dollars, I'm all but certain they were asked about their planned use of funds. Further, I'm nearly certain they said they were going to spend in order to grow their business in their chosen market. And many are doing just that. And who the hell provided them with these funds?

Maybe Fred (and Bill Gurley) should be directing their criticism at those stewards of investors' monies and consider their own part in this cycle.

</comment><comment><USER18> Fred Wilson has lived through a few booms and busts so he is kind of concerned about the next bust being very likely. I would just say, there is a very high likelihood of cheap money continuing for a while, given the stance of the Federal Reserve and the condition of U.S. economy. And, as long as money stays cheap, I do not see the bubble bursting 2001 style. Money will continue flowing into private and public equities because it really has nowhere else to go

<comment><USER19> When the cheap money stop that's when the adjustment happens. Until then, as Fred said, they have to keep on dancing. And eyeballing intensely the next empty chair.

<comment><USER18> perhaps, what I'm saying is cheap money is unlikely to stop for years to come

<comment><USER13> That's only true if the Fed's hand isn't forced and the QE equation can remain the same in regards to both the results they get per dollar of QE and the inflation they cause per dollar of QE.

However that's not how it works. The Fed is in a downward spiral scenario, in which their policies have ever less of a positive impact and ever greater of a negative impact, and that's what arbitrarily low interest rates also function based on: the longer you hold them low below absolute optimal, the greater the damage as a result at an accelerating rate.

The cheap money party is very likely to destroy itself in a way that is both hard for the Fed to predict and control. Just like it did the prior two times the Fed made the mistake of unleashing a wave of cheap money. You can read their minutes and speeches, they were so oblivious they (supposedly) had no idea the real estate bubble was underway or about to implode (true for both Greenspan and Bernanke).

What ends the cheap money is the asset bubbles get so large their downside poses a threat to the integrity of the entire economy. They have to raise interest rates to stop the extreme asset bubbles that cheap money causes. We're at that line right now, which is why they keep pushing headlines about raising interest rates, it's meant to artificially hold down asset prices without the Fed having to actually raise rates.

The stock market is already approaching the highest valuation it has ever had in a 'bull market' outside of the dotcom era and maybe 1929x. Real estate has almost entirely recovered, and in many markets is now higher than the peak of the bubble of 2005/06.

You throw another 30% gain on the stock market, and 20% on the real estate market, with continued mediocre earnings growth and 1% to 2% GDP growth, with little to no wage growth or full-time employment growth, while Europe is in a continuing depression, Japan is in a recession, and China is melting toward zero real growth, and you're priming for a crash across numerous asset classes that will send the US into a true depression.

15 years of horrifically bad monetary policy has yet to be paid for. They keep trying to prevent recessions from happening. The price for that bad behavior will keep climbing day by day.

If they don't raise rates, they crash the economy as asset bubbles become increasingly unsustainable. And even though the Fed will attempt to keep the cost of money low in that scenario, nobody will be able to get access to that cheap money (ala 2009/2010 but far worse).

<comment><USER18> How long has money been cheap in Japan? 30 years? we have some of the same factors at work in the U.S. not the same situation obviously, but fundamentally, we have a relatively slow growing economy which does not generate a lot of inflationary pressures and my guess, the Fed will keep rates relatively low for a long time.

</comment></comment></comment></comment></comment><comment><USER19> It says something when the money people (VCs) complain high real estate rents: changes might be afoot. It is possible that the property owners feel/know that the current situation is untenable and that new properties will be allowed to be built, hence their desire to lock in leases for 10yrs.

</comment><comment><USER20> I'm not sure if I understand the point of this blog post. VCs give money to startups so these startups can grow faster than they would without external investment. So they will spend that money. It is not like startup come to VC and said: I need $10M and I will put that money in the bank.

Maybe the blog should be how it is important that startups are more focused when they spent? Or maybe how VCs are investing into companies with not so great ideas?

I'm just confused here.

</comment><comment><USER3> Sometimes this happens when you give people free money to play with. What did you think was going to happen?

</comment><comment><USER21> "At some point you have to build a real business, generate real profits"

The companies that seem to be able to switch off the growth and become cash flow positive will be fine no matter what.

</comment><comment><USER22> So why are these companies in your portfolio in the first place?

</comment><comment><USER23> sanity impending

</comment><comment><USER24> Where's the data?

<comment><USER5> What you are asking for is asking for a VC to talk down their own book. That's a ridiculous request. Fred and his colleague are already taking a pretty daring step in writing this, you can bet that any future potential acquisition party will make damn sure they're not buying into one of the companies that Fred is apparently unhappy about today, and that a whole horde of junior associates at various establishments is currently looking through their portfolio to try to figure out which companies were the ones he was talking about.

VCs will _never_ talk about specific portfolio companies in a negative way (in public) unless they have a direct financial motive for doing so (in which case storm is brewing or in progress, and likely the press has already had a field day with something).</comment></comment>