How Google pulled the plug on the public Jabber Network - <AUTHOR> http://jabbermania.blogspot.com/2013/06/how-google-pulled-plug-on-public-jabber.html <comment><USER2> I used to run my own XMPP server (OpenFire) and had my DNS SRV records correctly set up so people could chat to me from gmail. I found that one major source of pain was that Google Apps for Domains customers couldn't chat with me. It only worked with gmail addresses.

Why? Because Google Apps for Domains customers hadn't configured their SRV records for their domains. Why? Because for these Google customers, chat "just worked" with all other Google Apps for Domains and Gmail addresses with no configuration.

Google supported and used XMPP federation, but seemingly "embraced and extended" it to make it "just work" within their network.

I stopped running my system when I couldn't chat with my clients and didn't feel credible telling them they couldn't chat with me because their _working_ but misconfigured chat system was in fact misconfigured.

<comment><USER3> > I found that one major source of pain was that Google Apps for Domains > customers couldn't chat with me

I had exact same problem (set my own openfire server when google announced changes to gtalk about a month ago), and it resolved itself after waiting for several hours. Give it a try again sometime.

</comment></comment><comment><USER4> With all due respect to the author (whom I had the pleasure of meeting many years ago at an XMPP summit), in my opinion most of the points in this post are unfounded, and overly pessimistic.

There is still a public XMPP network, just as there would still be a public network even if Google decided to put up walls around Gmail.

Google's decision was almost certainly about federation, and not about technical flaws within the XMPP protocol itself. Google have never raised issues of spam before, despite participating in the XMPP community in other areas (they are a sponsor of the XMPP Standards Foundation, even). Indeed in my experience spam problems on XMPP have traditionally been very simple and localized, there is to date no general spam problem on XMPP (yet...).

Attempts to solicit feedback from Google on the many proposed spam-prevention mechanisms in XMPP failed, as did requests for information about the spam problems they claimed to be seeing recently, nor the solutions they put in place to prevent them.

To claims that XMPP doesn't scale - well, they have successfully run the Google Talk service for the best part of a decade now. I really don't think scalability is an issue, and they are still using (and expanding!) XMPP in other areas that also require scale (Android, for example).

Finally, to say that WebRTC is replacing Jingle is just nonsense. WebRTC requires external signalling to work, and Jingle, a signalling protocol by nature, works just fine for this.

Google's decision is undoubtedly a step backwards for the open IM cause, but the XMPP network is not at risk because of it. There are many users and businesses who are simply not going to entrust their communications to a third party, and many of those do want federation. This hasn't changed, Google can't change it.

</comment><comment><USER5> WhatsApp is also a walled-garden XMPP network, with many more actives than Google Talk I'd bet.

Is all this 'net-rage just because they once supported s2s and now they don't?

The whole point of federation is so that people can do as they please. If users want federation, they'll use providers that federate.

<comment><USER6> I think we can all see how wonderful email is because of its interoperability and many of us wish IM had that. When Google announced XMPP federation, it felt like it could be the start of something better. It wasn't. Microsoft, AOL, and Yahoo didn't play along and even big third parties that used XMPP wanted to keep a walled-garden. But when Google kiled federation, it was a blow (at least to me). It meant that it wasn't going to happen. As long as Google was federating, there was that glimmer of hope that things might change. Maybe some startup will be open and awesome and it will kick-off change once people see how interoperability makes things great like email. Maybe even Microsoft or Yahoo would switch and it would pressure others creating a cascade. Today, even if Yahoo decided "open is the way to go for IM," they don't have Google already there. There had always been the possibility that someone big would join Google's openness. There isn't that possibility now.

I don't think it's hard to argue that things that are universal are better in a lot of circumstances. I can call anyone via phone number, I can email anyone via their email address. It's awesome. With something like Skype, I can only connect with Skype users. That's less great. Not only do I have to use Skype, I have to convince others to use it as well. People have to buy into Skype. When I switched to Gmail early on, it didn't matter if others didn't use Gmail. If something new and great comes along in the IM space, it likely won't get traction because of the network effects. I know that one can point to counter-examples. That isn't the point. The point is that users should be able to use and migrate to better services. The openness of email allowed Gmail to thrive with a low cost of switching.

I don't blame Google for going closed, but it is sad. It extinguishes some of the hope for something truly better. And it's sad when the champion of open throws in the towel on it. I'm not trying to canonize Google, but they have pushed for a decent amount of openness on the internet and when they've given up on open IM, it's hard to imagine someone else (who is big and influential) picking up the cause.

<comment><USER5> > When Google announced XMPP federation, it felt like it could be the start of > something better. It wasn't. Microsoft, AOL, and Yahoo didn't play along and > even big third parties that used XMPP wanted to keep a walled-garden. But > when Google kiled federation, it was a blow (at least to me). It meant that > it wasn't going to happen.

Nobody's built the killer realtime messaging app yet. Skype is the closest we have, and it sucks on the iPhone and has no web interface so it doesn't run on ChromeOS.

WhatsApp doesn't work on tablets and requires a phone number as your primary identity.

Facebook and Twitter DM have become large, but aren't there yet because they don't do video/voice and don't federate (and at least in Twitter's case, don't sync read/unread between devices). iMessage and FaceTime would be it, bar none, if it worked on non-Apple hardware - if only from the bootstrap momentum of every single iOS user.

There is opportunity here. If I wanted to be in the software development business, I would solve this problem and eat WhatApp's lunch.

Ideally it'd be federated, but that's not a hard requirement. It just needs to work perfectly on every device that every person sends and receives messages from. That's not that hard these days, which is why it's baffling that nobody's built it yet.

I have an inkling that Hangouts is attempting to become that thing. If indeed that's their plan, they will easily crush Skype.

<comment><USER7> I've actually had an idea in the back of my head for an extensible JSON IM/Presence system, maybe it's time to get to work on that.

XMPP was never really meant to be in my opinion, it had a bunch of great ideas but it failed in implementation (choosing XML was a bad start).

<comment><USER5> [http://xkcd.com/927/](http://xkcd.com/927/)

Don't go down that path. Just write a library once to speak XMPP (or use an existing one) and then don't ever think about XML again. But please don't proliferate Yet Another Standard for a problem that was fully solved a decade ago. (XMPP also has well-defined standard ways of extending on top of it. Color inside the lines, not because they're good, but because it's worse to draw new ones unique to you.)

<comment><USER7> Except you can't ever 'not think about XML' when using XMPP, especially when working with it's "well-defined ways of extending on top of it" that completely destroy any sanity that XML is supposed to provide. If you're using XML without a sane schema you might as well be using some binary format because it's about as easy to work with.

XML streams, are you kidding? Who thought that making an XML parser read a mal-formed document (because it's never a complete document until the stream ends!) was a good idea! You can't even use the standard XML parser in most languages without separating out the individual responses in the stream, which aren't delineated by anything sane like a newline, but instead by a closing tag, meaning you get to sit and parse XML as it comes in, waiting for the message to be closed (and lord help you if your code doesn't handle the possibility that you'll get sent malformed data).

XMPP sucks, I'm sorry, it just does. XML is not the appropriate solution to use for anything with a persistent stream, it's got shitty error recovery and requires far too much work to parse correctly even when you can guarantee you have a completely well formed document before you even start parsing it.

</comment></comment></comment></comment></comment></comment><comment><USER8> In my dreams, there's an organization pushing for interoperability, open standards, data freedom etc over the long term. If there were such an organization, this would make an excellent case study in failure. Are there any strategic interventions that could have rescued XMPP federation?

<comment><USER9> We're in the middle of this war between giant companies around the future of collaboration. Google, Cisco, Microsoft, etc are aggressively building marketshare for cloud services and telecom, but they're success will eventually mean that they'll run out of new customers. So they need to steal from each other.

For Microsoft, XMPP federation is a great way to contain Google and make inroads on places that are Cisco IM/phone shops. In the long run, they want to extend corporate email dominance to phone via Lync/Skype.

Google doesn't want to be a commodity. Hangouts is their secret sauce. What do they gain by being open?

<comment><USER10> "Google doesn't want to be a commodity. Hangouts is their secret sauce. What do they gain by being open?"

The support of many geeks worldwide (and subsequently their friends and customers), just as it happened until recently when their "do no evil" transformed in "screw you". Google (gmail, gtalk etc) would have never risen to this level of popularity without them.

<comment><USER11> Sadly, many "geeks" turn a blind eye whenever Google does something like this. Google has them and it doesn't seem like either party truly cares about the other's interest.

</comment></comment></comment></comment><comment><USER12> "There is no open IM network anymore"

Cyrptocat? IRC?

<comment><USER13> IRC is not a IM network, Cryptocat I dunno (I don't use it, I have only a vague idea of what it is)

<comment><USER12> >I don't use it, I have only a vague idea of what it is

Really? [http://bit.ly/11ZLOps](http://bit.ly/11ZLOps)</comment></comment></comment>


Ask HN: How do I get traffic on a shoe-string budget? - <AUTHOR>

I launched my web app on HN about 3 months ago - http://news.ycombinator.com/item?id=2460406 - (100 days to be exact) and am struggling to get traffic.
As a result of low traffic, I don't know what to optimize, because I feel like I don't have enough of a sample size to accurately tell me what I am doing right and wrong.
I have tried guest post blogging, submitting my site to lots of 'galleries', plugging it where appropriate and helpful - but I am at a paltry 5.5K uniques since launch.
Any ideas?
Thanks.
P.S. The web app is targeted at designers/photographers/creatives. <comment><USER2> How are people supposed to find you?

Looks like you haven't written a new blog post since May 4th.

Looking at your source I have no idea what your most important keywords are, I think you really need to understand the key-phrases which people use to describe the kind of product you have made -- and then you need to optimize for them. 'Multiple revisions'? I think theres gotta be a better search phrase describing this product. Maybe 'mockup tool' or 'revision tool' (note: havent done google keyword search, just off top of head)

Are you actively engaging press? You need to write up a reviewers guide and ship it off to every tech writer with a decent designer audience that you can find. You need to personally email every author or blogger who says something good or bad about your competitors, are you doing this?

Do you comment on high-trafficked freelancer/designer blogs? Do you participate in freelancer/designer forums?

Are you collecting emails anywhere? Preferably on front page! Use MailChimp it's free for less than 1,000 subscribers. I would be far more likely to give you my email address then to signup. Once you have me on your email list you can have a time-based email campaign that introduces people to your program and offers discounts towards end of trial period.

Just my .02

<comment><USER3> I agree with the sentiment regarding the keywords. I tried for a few minutes to read your on-page copy and distill your products keywords but found it difficult. It could be that I'm not familiar enough with the space/problem that your service addresses. I'd be inclined to identify your competitors and the keywords for which they rank. If a set of keywords can be identified I'd then use Google Keyword Tool to determine a set of keywords to target (i.e. those that you have a shot at ranking well for).

<comment><AUTHOR> Agreed...I have found this difficult too. I guess the issue I keep having is sure I want to appear in the search results for the keywords that my competitors appear in - but at the same time I want to differentiate myself.

So I am kinda struggling with this, to be honest.

<comment><USER3> I get the desire for differentiation, it's important otherwise why would someone choose your product over another. I think it's key though to better understand the words that your competitors are using to describe the problem/space coupled with the words that consumers are using to describe the problem/space. Understanding this word-scape will help you to better craft your on-page copy along with identifying the words that best describe your unique value proposition.

I'd also consider studying/contacting the twitter followers of your competitors. That would be a direct method of identifying solid potential leads.

Who are your competitors? Can you give me links to at least 3 of them?

<comment><AUTHOR> Sure:

Colaab - <http://colaab.com/Home.mvc/Home> Notable App - <http://www.notableapp.com/> Prevue - <http://prevue.it/> Onotate - <http://onotate.com/>

</comment></comment></comment></comment></comment><comment><USER4> Rob Walling has written about this a bit.

"The 5 Minute Guide To Cheap Startup Advertising"

[http://onstartups.com/tabid/3339/bid/43774/The-5-Minute- Guid...](http://onstartups.com/tabid/3339/bid/43774/The-5-Minute-Guide-To- Cheap-Startup-Advertising.aspx)

3 part series on startup marketing, although this is more about retention than advertising:

[http://www.softwarebyrob.com/2009/12/15/startup-marketing- mi...](http://www.softwarebyrob.com/2009/12/15/startup-marketing-mistake- losing-people-through-the-bottom-of-your-funnel/)

[http://www.softwarebyrob.com/2009/12/09/why-focusing-on- traf...](http://www.softwarebyrob.com/2009/12/09/why-focusing-on-traffic-can- kill-your-startup/)

[http://www.softwarebyrob.com/2010/01/12/startup-marketing- mi...](http://www.softwarebyrob.com/2010/01/12/startup-marketing-mistake- ignoring-traffic-quality/)

<comment><AUTHOR> Thanks for these.

</comment></comment><comment><USER5> Borrow other people's traffic. Specifically, guest blog everywhere you can, and set up an affiliate program. If you don't want a public affiliate program, that's fine - only open it to certain referrers. For instance, give bloggers with large audiences who you'd like to target a discount code they can share with their readers.

Email/tweet at Smashing Magazine - they're nice folks and I bet they'd mention this, even if just in a tweet.

Edit: I see now that you have been guest blogging. Do it more! It's not just about the traffic you see in the next day - it's also a long term link- building strategy.

Also, don't get down about "only" 5.5k uniques. That means FIVE AND A HALF THOUSAND HUMANS were interested enough to visit your site! Go watch Gary Vaynerchuk's talk at RailsConf 2010: <http://www.youtube.com/watch?v=-QWHkcCP3tA>

He talks a lot about caring about your customers/audience/whoever (or, as he puts it, "giving a fuck"). Maybe you could put in some sort of "Not totally convinced? Enter your email here to learn more from the founder" mechanism, and then personally email those people, get to know them, and convince them to buy (if it's a good fit). Sure, that's not scaleable, but why not do it right now while your traffic is "low"?

</comment><comment><USER6> I know exactly how you feel. I helped start up a political satire website (<http://thewashingtonfancy.com/>) just over a month ago. I spend hours every single day trying to plug the website all over the net. I find blogs, other news sources, anything really, and post a link in the comments with a funny caption or something interesting to grab attention. I keep an active twitter and tumblr. Also I make a point to post articles on reddit constantly. In the beginning we were getting ~500 viewers a day, but one day an article went viral and all of a sudden we averaged ~50,000 viewers a day for about a week. Now were down to~3000 a day. The point is that you can do it and it will work out, but it will require a lot of effort. Also this helped me learn a lot: [http://www.seomoz.org/blog/the-noob-guide-to-online- marketin...](http://www.seomoz.org/blog/the-noob-guide-to-online-marketing- with-giant-infographic-11928)

<comment><AUTHOR> Thanks for the encouragement.

I know in my head that it will work, and I do plan on continuing...I guess I just thought things would have picked up sooner.

<comment><USER6> My pleasure. If you ever want to discuss strategies or share victories, my email is in my profile.

</comment></comment></comment><comment><USER7> Hi, I launched BugMuncher 10 days ago, with a total cost of £55 (plus at least £5,000 worth of my time...) and I've already racked up 3k uniques. A lot of that is down to constant plugging on Hacker News and other sites, but also a very large slice is down to a great article in the next web. I'd definitely recommend trying to get some tech blogs to feature your app. A lot of my conversions have been because of that article, I can't thank the next web enough :)

I've always found getting traffic to any website is a daily battle. If I don't push BugMuncher EVERY SINGLE DAY my traffic can drop as low as 50 uniques, where as days I plug it I get around 700.

I hope this post doesn't come across as gloating, I'm shocked and amazed at how well BugMuncher has been received, I just want to show you what's worked for me :)

Best of luck with your app, it looks like it could really be useful.

EDIT: Also, is that a typo, or is your homepage meant to be imdex.html? (with an M)

<comment><AUTHOR> Thanks....I got a few of those too...but the daily battle is rough after 100 days.

The homepage is supposed to be imdex with an 'M', because of a Rails issue.

</comment></comment><comment><USER8> You need to learn how to use paid traffic. Writing little checks to earn big ones. Relying on free methods is manual labour! Look up a HN user called ilya and if he has time he can prolly do some paid consulting to get you started. I would but I need to focus single mindedly on what I'm doing.

<comment><AUTHOR> If I had a budget that allowed me to do this, I definitely would.

It's something I have thought about, and will do in time - for sure.</comment></comment>


A Rising Number of Startups Reckon They'll Never Go Public - <AUTHOR> http://www.bloomberg.com/news/articles/2016-03-18/a-rising-number-of-startups-reckon-they-ll-never-go-public <comment><USER2> Why is this _the_ goal? Seriously.

Everything eventually goes to shit once a company goes public.

In the beginning, it was about some kickass product/service. The focus is on making something good, offering a good service.

Once a company goes public, the all-consuming reason for existence changes. Now it's no longer about the good product/service. It's only about increasing value for shareholders.

This begets mergers and acquisitions, which begets mass layoffs. (Where CEO gets more fat pockets than he had already, shareholders get a little more than a pittance, and hundreds if not thousands of employees get the shaft.)

Why not bootstrap, and get money the old-fashioned way, by working your ass off? You know, building something YOU control, and that you're not beholden to shareholders for?

Build something to _last_ instead of looking for an exit?

I left my last job of 8.5 years, the longest I've ever been at any one job, to go out on my own. Sure, it's a risk.

My employer was in the process of an acquisition, and it completed after I left. Then articles said they were planning on laying off 10% of staff. It's hit 20% now, and no end in sight.

<comment><USER3> If you take VC money, your goal becomes the VC's goal.

VCs need a liquidity event to happen within the expiration of the fund that they wrote the check from. IPOs are theoretically unbounded in terms of availability.

<comment><USER2> I would say this is all the more reason _not_ to take VC money, but bootstrap on your own. Why give up control?

<comment><USER4> > _Why give up control?_

For access to capital. If you were an Uber/Lyft competitor, it becomes very hard to compete with competitors who have near vast amounts of money to spend on marketing and customer/driver acquisition. Both Sidecar and Hailocab (in the US) lived this first hand.

Some (if not most) businesses cannot be bootstrapped. It took a while for Google to become profitable, and who knows if the search product would have been as good if they had to focus on generating revenue on day 1.

</comment></comment></comment></comment><comment><USER5> > Nasdaq Private Market surveyed 126 attendees, of which 32 percent were > founders or chief executives

You ask 126 people at SXSW and then make that story out of it? I think that's a little bit to much.

<comment><USER6> And it's an organization that provides services to companies that don't go public.

</comment></comment><comment><USER7> VCs need an exit to get a return. If not an IPO, then an acquisition. Unless of course the company becomes insanely profitable and can buy out their investors at a nice multiple.

Silicon Valley may be good at multiples, but not so good at profitability.

Acquisitions by private companies aren't as common as public companies, and the valuations aren't typically as high. So if everyone stays private, there aren't as many opportunities for 10x+ exits. Which means there's less cash to invest in high risk startups. VC's depend on the big winners to cover the countless losers.

If startups bootstrap, then they need to make money early. Which means you can't hire until you make money, but you can't make money unless you hire. So ambitions are seriously limited in the first couple of years. As are salaries. Not easy to attract great developers when you can't afford to pay them.

On the flip side, bootstrapping a company and focusing on building products that people not only love but are willing to pay for is insanely satisfying. There's also a lot of upside to working with a small team for many years before scaling.

<comment><USER3> >VCs need an exit to get a return. If not an IPO, then an acquisition. Unless of course the company becomes insanely profitable and can buy out their investors at a nice multiple.

In addition, the exit must occur within the maturity term of the VC's fund.

<comment><USER8> What happens at the maturity of the fund of the company is still chugging along but hasn't had a liquidity event?

<comment><USER7> By that time, unless the company got profitable early, they've raised multiple rounds and the investors have a majority interest. Once they control the board, it's over.

I read somewhere that Aaron Levie of Box.net only owns about 4% of his company. Choice runs out when money does.

</comment></comment></comment></comment><comment><USER9> What is a fair compensation package for early hires if companies continue to keep stocks private and less liquid?

<comment><USER10> A decent salary, with leave benefits similar to a lot of other Western countries (4-5 weeks annual leave, sick leave, parental leave)?

<comment><USER11> You do realize that in those other Western countries developers make far less than in the US? Even in the richer Western European countries like Germany, France, Netherlands, Sweden, etc, $50-$90k is pretty typical for 5yr+ experienced software engineers. Yes, that's total, not base, and before taxes which are higher than in the US.

<comment><USER12> Depends, my base is higher than that range, and there are other benefits to working in the UK - stronger employment laws, free health service, excellent public transport that sees real investment ... and of course the holidays.

Just looking at salary is comparing apples to oranges.

<comment><USER13> I'm not just looking at salary, I'm saying that the perks that phillc73 was asking for (4-5 weeks annual leave, sick leave, parental leave) do not come cheap.

<comment><USER14> 4-5 weeks + sick leave is mandantory in all countries of EU actually (even in countries of Eastern Europe)

<comment><USER13> Not sure what the point of your reply is. I know lots of the EU perks are mandated. That's one of the things that makes Europeans have less take home pay than Americans (hence my comment "do not come cheap"). No value judgement here, US and western Europe are all democracies so these are the manifest choices of their citizens.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> So, if I'm an LP in a VC firm how do I get my money back?

Clipping dividend coupons like a retiree? If I wanted to do that I'd invest in dividend paying public companies and bonds.

I'm all ears, tell my why any sane LP would want to invest in VC right now.

Much of the so-called returns VC's have experienced have been paper returns due to ever higher valuations placed on portfolio companies.

But then when those companies get widespread scrutiny (which all going public really is) then you're luck to not lose more than 10%.

So I'm paying VC asset management and performance fees for the privilege of losing money?

I'm unclear how this is sustainable.

I think this bubble has gone on for longer than the last one in part because there are fewer public companies and less hard-nosed scrutiny of these companies.

<comment><USER16> I think automatic monthly dividends from VCs would probably not be a bad idea.

</comment></comment><comment><USER17> Ha, funny story. "Hi we're a private market company that will give your employees liquidity if you'll let us, no need to go public with all those regulations and everything!"

I get that this is what the secondary markets would _like_ after all a stock market without pesky regulations is so much easier to make profits on if you control the market, than one where you have things like "rule FD" and that whole insider thing which everyone hates right?

Here is my prediction, the secondary market stuff will grow for the next 5 years. Once really significant sums are passing through it there will be a big scandal that wouldn't have happened in a more regulated market and the government will swoop in and regulate it in a similar way eliminating much, if any advantage.

<comment><USER18> I agree. I also expect to see secondary markets that raise equity via crowd funding.

</comment></comment><comment><USER19> I suspect i am going to echo a lot of the cynicism that has been surrounding the high rollers startup coverage lately, but quite frankly... why would they go public?

As far as i can see, the invented heave-ho of a demonstrably unprofitable business into IPO is troubling. These businesses are not designed for profit, but for [unsustainably costly] growth. Sure the IPO may earn the founders millions, but is it worth the stress that comes along with it? Invariably investors want to make money. Often times the IPO play feels like they are earning their money by throwing the founders to the hungry masses.

How many companies have we seen repeat this pattern and suffer massive morale hits? The (my company failed/i was asked to step down/i wish i still controlled my company) blog posts paint a telling tale of what looks to me like a failed experiment.

I've never exited for millions so maybe there is a sense of accomplishment i am missing here, but count me out. I can't imagine an amount of money that would justify feeling like what was once my weekend project has grown to something beyond my control. That it has left me embattled with investors and then a public funding round i feel like i can never satisfy.

I don't get the sense the zombie unicorns are fulfilling dreams. Instead, i get the impression they are keeping people up at night.

<comment><USER20> A more cynical question: why do these companies exist at all? From the wikipedia definition of business: "The goal is for sales to be more than expenditures resulting in a profit."

Wasting other people's money until the end of time is not a sound business model. If they are not designed for profit the design has to change at some point in time, even if it this means morale hits and keeping people up at night.

<comment><USER21> VC investors know what they're getting into. Every investment is a gamble and that's OK.

As for why these companies deign to exist at all, they're just like most actual business: they make enough to keep going, perhaps some growth on the horizon, people put food on the table, and build careers.

Not every venture has to end in an IPO and unending explosive growth, nor are those that don't "failures".

If every funded company had to pay back every dime of VC investment upon "failure", no one would take risks. That's the game and VC's are OK with it.

<comment><USER22> _" Not every venture has to end in an IPO and unending explosive growth, nor are those that don't "failures"."_

The most likely outcome is what VCs call "zombies" \- companies that can cover their operating costs, but can't pay back their investors. They're a headache for VCs, because they won't die and require attention. YC seems to be designed for force startups to fail fast, so they don't end up with a huge portfolio of zombies.

</comment></comment></comment></comment><comment><USER23> > no immediate plans to pursue the public markets to raise capital

Corporations raise capital by selling bonds, by reinvesting profits, by getting money from VC's and through other means. That companies rely heavily on public markets to raise money is a mythology promulgated by people like the quoted Nasdaq employee. The percentage of capital raised by corporations that has been done via initial or secondary offerings as opposed to other means has been miniscule. That is not new either, it has been that way since the 1940s, and even before that.

</comment><comment><USER24> Employees and regular investors never get a chance to invest when companies don't go public, it is unfortunate. However, it is very difficult and it can destroy a company going public.

This situation has become another middle class driving down force going private/acquisition over public IPO. The public markets have a key role in our economy and wealth growth across the board, private equity and acquisitions not as much.

</comment><comment><USER25> Why the worry? It is just that the private equity markets have developed well enough to make IPOs unnecessary for the vast majority of even very successful companies. Why IPO if billion (ok, at least centimillion) dollar VC rounds became the norm?

Only the hugest successful startups may find private markets too constraining in this environment.

<comment><USER26> VC are not donating money. They are investing. In order for them to be successful, there must be a return on their investment.

This means that either companies need to be acquired, or they need to go public. If someone is investing a billion dollars, you'd want to be acquired for 10+ billion in order to have been a good investment. I think this makes IPO a more likely outcome at those investment levels.

</comment></comment><comment><USER27> This has a lot less to do with VC preferences or entrepreneur preferences or even market preferences and a lot more to do with Sarbox. Anyone who has worked for a publicly traded company has run into some bullshit bureaucratic requirement caused by Sadbox that makes no sense, whether they realize it or not. It is pretty well established in economic research by now that Sarbox has affected the capital environment away from IPOs and more towards VCs and Private Equity.

My favorite CS analogy is the Global Interpreter Lock. It had good intentions and in the single core world that it was invented in, it probably made sense. Now that we know better nobody is going to make that mistake again, but now everybody is up to their necks in legacy code and the only way to get out of it is a full rewrite.

<comment><USER16> I really wish the restrictions can be reduced so @pmarca etc can tweet more on the companies of which they are directors. I am thinking that Reg FD should be pretty broad too, making it clear that most public social media posts qualify while private ones may not be (providing list of examples would be a good idea).

</comment></comment><comment><USER28> reminds me of a related and interesting read on an interview with Kickstarter's founder/CEO on why he doesn't want to sell or ever go public: [http://www.fastcompany.com/3051328/fast-feed/kickstarter- ceo...](http://www.fastcompany.com/3051328/fast-feed/kickstarter-ceo-we-dont- ever-want-to-sell-or-go-public)

Companies that are built with a true mission and sense of purpose, for the (very) long-term, and are either already profitable on their way to profitability without raising additional money do not have any real reason to go public aside from greed. This concept is so against the common mindset that it seems very few people are able to see that. The original intent of going public (i.e. prior to 20th century), was precisely because there was no easily accessible venture capital like there is today, so that was pretty much the only way to raise significant funds.

That explains why so many companies that IPO seem like quasi-pyramid schemes, driven more by money than a long-term sense of purpose, a la Groupon or Zynga. Although of course that could be said about most public companies, hence why most go to shit, but I'd argue that companies like Kickstarter do not have constantly increasing profit as a primary goal (of course profit is one of its goals, otherwise it won't be around long, just not the primary goal).

</comment><comment><USER22> What the guy from "Nasdaq Private Market" seems to be pushing is a semi-public offering - like an IPO, but only for "qualified investors". This provides an exit for the original investors.

</comment><comment><USER18> IPOs will come back. Too many people are pissed off that their vested equity is locked up and effectively worth $0.

</comment><comment><USER3> This data seems pretty meaningless without being able to tie their sentiments to their funding situation.

</comment><comment><USER29> Is this really that surprising?

<comment><USER30> No for readers of HN. But for Bloomberg subscribers, maybe.</comment></comment>


ESDoc – A Documentation Generator for JavaScript(ES6) - <AUTHOR> https://esdoc.org/

<comment><USER2> I am ESDoc developer. Thanks for this post 😆

Now, I have been developing ESDoc Hosting Service beta ([https://doc.esdoc.org](https://doc.esdoc.org)). Because I want to collect all JavaScript documentations for all JavaScript developers! If you have interest in it, please try from here([https://doc.esdoc.org/-/generate.html](https://doc.esdoc.org/-/generate.html)).

Thanks.

</comment><comment><AUTHOR> I was looking for JavaScript Doc Generators and found this fine piece of software!

\- Beautiful readable UI (Android docs style) \- Supports ES6 class syntax. \- Generates detailed documentation. \- Measures documentation coverage. \- Integrate test codes into documentation. \- Loot at sources from browser. \- Gulp Plugin ([https://www.npmjs.com/package/gulp- esdoc](https://www.npmjs.com/package/gulp-esdoc))</comment>


"You WANT to be pigeonholed. I'm #1 on Google because of being pigeonholed." - <AUTHOR> http://www.philipmorganconsulting.com/blog/jonathan-stark-on-the-key-to

<comment><USER2> You don't understand what pigeonholing really means.

When programmers talk about pigeonholing it usually means they like Python and want to go at Python conferences where people talk about math, science and machine learning, but they are pigeonholed in Java EE and surrounded by people who only talk about POJOs and beans.

And to top it all off, Java experience is badly regarded in Python tech companies and long term pigeonholing usually cuts you off from the world you want to be in.

<comment><AUTHOR> "they like Python and want to go at Python conferences"

What prevents them from doing this?

<comment><USER3> $1500 ticket prices and employers that won't pay unless it's directly related to the work you do?

<comment><AUTHOR> I see--thank you!

I was thinking of this more from the independent consultant's perspective, not the FTE viewpoint.

<comment><USER3> Oh yeah, that's one thing I miss from being independent. "Conference"? You mean "tax deduction"!

</comment></comment></comment></comment></comment><comment><USER3> I second sdeveloper's comment. This is about establishing authority, not being pigeonholed. Pigeonholing is something done to you regardless of what you do. Pigeonholing doesn't make you the #1 result on Google for a term. Pigeonholing tells you that because you're the #1 result for "French chef" in Google, you're not qualified to make tacos.

<comment><AUTHOR> You're right, that part of the interview really was more about the _fear of pigeonholing_ for the independent dev/consultant, not the actual results of pigeonholing for the FTE.</comment></comment>


ATM Skimmers, Up Close - <AUTHOR> http://krebsonsecurity.com/2011/01/atm-skimmers-up-close/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+KrebsOnSecurity+%28Krebs+on+Security%29&utm_content=Google+Reader

<comment><USER2> These are why all cards (and ATMs) should be smart-cards with asynchronous encryption.

These cards and readers have existed for years… it's time to upgrade all the end-user equipment to this new, secure standard.

<comment><USER3> Do banks have a benefit in upgrading? It will cost them a lot of money and at the end of the day it's not their money thats being stolen. If it was their money the upgrade would already have happend long ago. I know. I'm a pessimist.

<comment><USER2> Well, given that here in Australia our banks guarantee all the money stolen through skimming, then yes, it is in the banks favour to upgrade.

</comment></comment></comment><comment><USER4> Yeah. This one's pretty slick. But dude has a bunch more here that are a bit scarier.

<http://krebsonsecurity.com/all-about-skimmers/>

</comment><comment><USER5> I read in the past that the bank ATM security guy says if even a single call goes to them that there's potential tampering with ATM, they will immediately shut it down and go down there.

The ATM skimmer described sounds amateurish compared to the wireless skimmers: [http://www.ctvbc.ctv.ca/servlet/an/local/CTVNews/20100820/bc...](http://www.ctvbc.ctv.ca/servlet/an/local/CTVNews/20100820/bc_pinhole_camera_100820/20100820?hub=BritishColumbiaHome) Pinhole camera device records pin + Skimmer records card (number or strip?).

<http://www.snopes.com/fraud/atm/atmcamera.asp>

</comment><comment><USER6> > _buyers are told to install a hardware driver and software program on their > Windows PC (both are safe and virus free, trust us!). After that, users are > instructed to enter the password "0000" when prompted, but this seller > doesn't include instructions for changing the default password. It's nice to > know that computer crooks make the same flawed security design decisions as > many mainstream manufacturers of consumer electronics._

It's not too hard to go from ignorance to malice. Imagine hawking these things and taking 10% off the top, through a backdoor...

</comment><comment><USER7> Those things are really scary. Perhaps ATMs should come with a smooth, polished slot where attachments are hard to conceal.

<comment><USER8> You'd then overlay the whole panel, a sheet of polished aluminum with your hardware behind it placed over top of the original sheet of polished aluminum.

</comment></comment><comment><USER9> I suspect that ATM skimmers will see some nice features in the current generation of 3D printers.

<comment><USER10> No need when you've already got Chinese manufacturers that don't ask questions. Or whatnot.</comment></comment>


Creating a WebAssembly-powered library for the modern web - <AUTHOR> https://hackernoon.com/creating-webassembly-powered-library-for-modern-web-846da334f8fc <comment><USER2> Bravo. The best part is when he doesn't blindly include the Emscripten standard lib but instead checks what the built object is actually importing, and just implements those ten functions.

Web client development has been on a dependency binge for years. WebAssembly can help fix it.

Unfortunately it's equally likely that WAsm will be used for giant runtimes that reimplement everything. How about "WAsmElectron" so that every page can load its own private copy of Chromium? "No more browser incompatibilities!" The horror...

<comment><USER3> > "No more browser incompatibilities!" The horror...

Oh man.

Remember that time Google shipped Chrome as an IE plugin? If you sent a magic header or had a magic meta tag, the plugin take over the entire content area, effectively transforming IE6 into Chrome.

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

Chrome-as-WebAssembly is a horrifying thought but somehow it still seems better than the thing that _actually happened_ when one player wants to move forward and another steadfastly refused.</comment></comment>


Show HN: clay.io - Steam for HTML5 games - <AUTHOR> http://clay.io

<comment><AUTHOR> We're two students at the University of Texas trying to create a hub for HTML5 gaming. That includes an 'app store' and an API for developers to take care of tedious features like payment processing, leaderboards, achievements, social integration, user login, etc.

The API docs are here: <http://clay.io/docs>

You may have seen one of our games that was developed by a couple other UT students and polished up by us - <http://wordwars.clayio.com> (it's a good way to see our API in action)

We're looking for as much feedback as possible, so please do let us know your thoughts!

<comment><USER2> The background behind the box that goes across the page and contains "Find awesome games to play on your browser or phone" has some sort of animation that causes ugly flicker on my laptop (Dell, Linux, Chrome, LCD with LED backlighting). I think it's related to the cloud animation.

<comment><AUTHOR> My partner, Joe, pushed a fix for that (it was an issue with a grid image and Linux). Let me know if that did the trick for you!

</comment></comment></comment><comment><AUTHOR> Looks like this post was flagged for some reason :/

If any HN people see this, I'd appreciate an explanation as to why.

<comment><USER3> Post seems fine to me?

<comment><AUTHOR> Hmm, seems like we're back on page 2 now. We went from #13 to not on any of the first few pages.</comment></comment></comment>


Netflix on an NES - <AUTHOR> http://gizmodo.com/netflix-on-an-nes-is-the-best-worst-way-to-watch-netfli-1690585053

<comment><USER2> I'm guessing their "cart" is really a Raspberry Pi like device that is using the NES only for video out and controller in.

There is no way in hell a 1.79Mhz 6502 can play streaming video.

It's a fun party trick though.

<comment><USER3> I agree, it's a neat trick. Especially in < 1 day!

How did they get it "online"? I'm assuming that's all built into the "cart"? (wifi?)

<comment><USER4> It's fake

<comment><USER5> It's definitely not fake.

</comment></comment></comment></comment><comment><USER6> Some of the other ideas should be actual features. The pins? The subtitles on pause?

Awesome stuff.

</comment><comment><USER7> Direct link to the Youtube, gizmodo article doesn't really add any value:

[https://www.youtube.com/watch?v=_yn- rNdYZAY](https://www.youtube.com/watch?v=_yn-rNdYZAY)

</comment><comment><USER8> Any info on how this was built? I'd love to read the documentation and code

<comment><USER9> We plan on releasing a technical post later this week with the details. In the meantime, if you are curious about the platform checkout the forums and wiki at [http://nesdev.com](http://nesdev.com)</comment></comment>


Ask HN: Pivoting Company Looking for Customer Interviews - <AUTHOR>

HuddleHR is in the process of trying to define our next pivot. We are looking to speak with as many potential customers as we can so we minimize any missteps.
If are a Decision Maker or run Human Resources at a businesses with between 15 and 100 employees and are having "pain" associated with growth we would like to speak with you.
We are looking at problems such as employee on-boarding, measuring progress, aligning employees with the aims of the business, employee and team goals and reviews and so on. If any of these things strike a chord and you have a few minutes, we would greatly appreciate it.
email@example.com <comment><USER3> Silly question maybe, but are you a YC company? if not I am surprised that more of us do not come right out and ask for interviews etc like this - <USER2> way it's a sensible / good idea

<comment><AUTHOR> No, we are not a YC company.</comment></comment>


Ask HN: Would you use a interview database? - <AUTHOR>

I am playing with the idea of creating an interview database. You can subscribe to topics and receive an update whenever there is a new interview. Apart from that it is also possible to browse the database in the browser by topic,people etc. I feel there are so many great interviews lost in some blog archive. What do you think? <comment><USER2> Don't give away your ideas before you even start coding.</comment>


Comparison of Erlang Runtime System and Java Virtual Machine [pdf] - <AUTHOR> http://ds.cs.ut.ee/courses/course-files/To303nis%20Pool%20.pdf <comment><USER2> This was an decent comparison / contrast. It did make me wonder how they're coming along with the BEAM jit these days, I found this from a while back: [http://www.erlang-factory.com/euc2014/frej-drejhammar](http://www.erlang- factory.com/euc2014/frej-drejhammar)

It also reminded me how much I wish there was an actual specification for BEAM, finding out the details of the how the bytecodes work is an arduous task compared to the JVM where everything is explicitly stated. IMHO both VMs are excellent in their own right, the HotSpot JIT is incredible, but I still can't deny that I find the beam process model on concurrency more elegant than the JVM one, though in practice I've only toyed in erlang so I have no real-world grounds of comparison there. Does anyone by chance?

<comment><USER3> Frej's JIT is going strong! Maybe it will be present experimentally in the next Erlang release. But such things may change over time.

<comment><USER4> Do you have any links that gives recent information about the JIT? Would be interesting to read more.

</comment></comment></comment><comment> vezzy-fnord Wouldn't it be more correct to speak of the EVM as opposed to ERTS here? ERTS defines things like the boot protocol, distribution protocol, term serialization, port drivers, NIFs and BIFs. Though when talking about scheduling semantics, that's on the EVM level (to differentiate it from BEAM in particular).

Otherwise, a decent high-level overview.

</comment><comment> white-flame I was working with Erlang for about 2 years in a multi-language environment, and we based our networking messaging infrastructure on top of the Erlang protocol. It's still there, but we're migrating from it.

One major thing that turned me off of the language for our particular project was that there was no way to have a large read-only data structure in RAM and sic a bunch of parallel threads to analyze or search it. It is hackable if you mash your data structure into a large byte binary, since large bins live on a shared heap, but it's a pain to deal with non-native representation for your data.

It's very obvious that Erlang is optimized for a particular usage model, and even when you're dealing with a number of functional parallel processes, it might still clash with what you're doing.

<comment><USER5> I mean, you could always keep your large data structure in ETS?

<comment><USER6> ETS: [http://www.erlang.org/doc/man/ets.html](http://www.erlang.org/doc/man/ets.html)

</comment></comment></comment><comment><USER7> The content is quite interesting, but this paper could use some serious editing. There are typos throughout, and the tone is overly colloquial for an academic context.

The paper could also use an evaluation section - e.g. implementing a solution to a well known problem like the Dining Philosophers in both languages and comparing both the code and runtime characteristics.

<comment><USER8> I strongly disagree in regards to the colloquial aspect you mentioned. Academic papers have no reason to be pompous or high level and can benefit from increased visibility by presenting the findings in a more colloquial manner.

</comment></comment><comment><USER9> The report mentions Quasar (I'm its main author) and simply says, "instrumentation has many challenges that add complexity to the program instead of removing it." \-- without mentioning why. I believe this is false. Quasar removes just as much complexity as Erlang does (Erlang's enforcement of immutability is orthogonal; indeed, if you use Quasar with Clojure you get that, too), but it is true that the instrumentation is not entirely transparent -- _yet_. This doesn't add any complexity to the program (the code is _exactly_ the same as it would be in Erlang), but it does add some difficulty to the compilation process, as all blocking methods must be annotated. This is an annoyance, but it will probably go away in Java 9, as we are working with Oracle to make a minor change to the JVM (no, unfortunately not building continuations into the JVM just yet) that will make the bytecode instrumentation process fully automatic and completely transparent.

Fibers implemented with bytecode instrumentation also have some (small) added overhead (which is why we'd like them to be built directly into the JVM), but this makes little difference in practice: HotSpot's compiler is so good that with any added real work, that overhead is becomes negligent, and the compilation quality means that overall performance exceeds anything that can be achieved by Erlang VMs.

Also, the report says: " _the JVM has a single heap and sharing state between concurrent parties is done via locks that guarantee mutual exclusion to a specific memory area. This means that the burden of guaranteeing correct access to shared variables lies on the programmer, who must guard the critical sections by locks_ ". This is grossly inaccurate. While it is true that the JVM has a shared heap, this means that it _can allow_ programs to share mutable state among threads -- not that it necessarily does so. The JVM leaves the concurrency model up to the language implemented on top of it (just as the hardware and OS support a shared heap, but various languages may choose not to expose that as a visible abstraction to program code). E.g. Clojure only allows shared mutable state if it enforces transactional modifications. Erlang also allows this kind of shared state via ETS; the difference is that ETS must be programmed in C, whereas on the JVM you can write the shared data structure in a JVM language. This also means that on the JVM, objects stored in such a concurrent data structures are handled by the GC, whereas in Erlang (IIRC) ETS cause some issues with GC (EDIT: in fact, ETS data is not garbage collected at all).

I believe that the JVM is a strict superset of any Erlang VM. In particular, HotSpot (the OpenJDK's JVM) is so well implemented, that the main difference -- even when running programs that behave just like Erlang program -- is a huge boost in performance, and never needing to use C to achieve either good performance or some behavior that is unsupported by Erlang semantics.

<comment><USER10> > I believe that the JVM is a strict superset of any Erlang VM.

I don't get how JVM is a strict superset of Erlang VM when it doesn't have pre-emption.

If BEAM set have preemptive scheduler as an element and JVM, IIRC, does not have such feature, then JVM is not a super set let alone a strict super set.

<comment><USER9> Quasar does preemptive scheduling, and even used to have time-slice based preemption. The latter was taken out as it proved to provide no benefit whatsoever, because processes that benefit from time-slice preemption are better off using the kernel's scheduler anyway, and the JVM gives them that option. Erlang has to do it because it only exposes a single scheduler. That's is still a strict subset of the JVM's capabilities.

<comment><USER11> > and the JVM gives them that option

By using java.lang.Thread?

<comment><USER9> Yep. Both Thread and Fiber are abstracted into a Strand. So Strand.currentStrand returns the current fiber/thread, Strand.sleep sleeps etc.. Locks and channels work with strands, too, so that both fibers and threads can synchronize on the same data, and even actors are assigned to a strand, so that an actor can run in either a fiber or a thread.

Then, you pick the strand implementation (lightweight or heavyweight) -- heavyweight for computation-heavy code like video encoding, lightweight for anything that blocks often -- and if you pick a fiber you can further select a particular scheduler, with the default being work-stealing (like in Erlang or Go), but you can plug your own (and control such stuff as CPU pinning for certain schedulers).

</comment></comment></comment></comment></comment><comment><USER12> This is a terrible paper. It barely made a point, and is riddled with distracting misspellings and grammatical errors.

<comment><USER13> It reads like it was written by an undergraduate for independent study credit, or as a lit review for a future non-doctoral thesis. Certainly no result here, just a survey.

<comment><USER14> To be fair, neither the title nor the abstract suggest that a result will be presented.</comment></comment></comment>


The Man Who Lost $6 Billion - <AUTHOR> http://money.cnn.com/2008/07/07/news/companies/The_man_who_lost_6B_mclean.fortune/index.htm <comment><USER2> In Hunter's defense -- word on Wall Street is that after Citadel and JPMorgan bailed out Amaranth in 2006, they made a killing on Hunter's positions. Hunter had made ultimately profitable trades; Amaranth just wasn't able to withstand the temporary loss.

</comment><comment><USER3> _Hunter is not especially arrogant or intense or brash. (He is Canadian, after all.)_

Shudders. Do small generations like this make anybody else cringe?

<comment><USER4> Well, this is an especially poorly-written article. I stopped reading and skipped to the comments after the second sentence was:

 _As Jane Austen might have said, it is a truth universally acknowledged that a man who single-handedly loses a large fortune, especially one that wasn't of his own making, must be way more interesting than the average man._

</comment></comment><comment><USER5> Had he made money on his trade, he'll most probably just be one of the nameless millionaires (billionaires?) making a killing on the markets on a regular basis.

Trading can teach you a lot about doing business - put your money where your mouth is; high risk, high returns; trade like you don't need the money.

Maybe one thing he should have learned first though was - never trade anything you can't afford to lose.

Bing

<comment><USER6> It wasn't his fund though; he lost investors money (plus, obviously, what would have been his bonus). It's the fundamental problem plaguing investment banks and hedge funds: you're rewarded ridiculously well for exceptional performance and punished very little for poor performance. This encourages taking substantial amounts of risk in the name of superior returns.

Hunter is set for life and never has to work again. The legal crap will be tied in court for a while as bureaucratic shitkickers shuffle papers around and Hunter will eventually "admit no wrong doing but pay some nominal fine". It's the SEC special.

<comment><USER7> You say that as if he should admit some wrong doing.

People paid him to manage their money, asking him to make as much as possible, knowing that he could win or lose, and he did and lost. Where did he "do wrong"?

<comment><USER6> I don't think he did anything wrong - at least not that I'm aware of. Granted I didn't work with him or anything so there's no real way for me to "know." I was just trying to spell out what's most likely going to happen and why it (i.e. massive loses) happen so frequently. These stories, as a whole, exemplify why I'll always have the majority of my money in a low cost, no load, diversified fund.

<comment><USER8> _These stories, as a whole, exemplify why I'll always have the majority of my money in a low cost, no load, diversified fund._

Good call: [http://www.sanfranmag.com/story/best-investment-advice- youll...](http://www.sanfranmag.com/story/best-investment-advice-youll-never- get)

<http://www.fooledbyrandomness.com/fortune.pdf>

<comment><USER9> Awesome book. Check out "the Black Swan", too.</comment></comment></comment></comment></comment></comment>


FreeBSD Foundation raises $43,200 in three days - <AUTHOR> http://freebsdfoundation.blogspot.ca/2012/12/stunning-news-website-fundraising.html

<comment><AUTHOR> I think the most impressive thing here is the number of individual donations, really -- 650 of them. Well done Hacker News!</comment>


Did Facebook's News Feed Algorithm Elect Donald Trump? - <AUTHOR> http://math-blog.com/did-facebooks-news-feed-algorithm-elect-donald-trump/ <comment><USER2> An alternative title: "Was Facebook's News Feed algorithm heavily exploited by the Trump campaign to push their own agenda?"

Also Reddit.

<comment><USER3> My guess is you didn't read the article.

<comment><USER2> The original title has a style similar to "Do cars kill people?".

Well, cars are inanimate objects and do not kill people per se. Something else is hidden but obscured by the choice of the title.

<comment><AUTHOR> The article has two points:

(1) Algorithms don't make decisions. People choose the algorithms and design the algorithms. The algorithms reflect the biases, failings, and agendas, both hidden and overt, of people.

(2) Hillary Clinton was severely damaged by factually accurate or mostly factually accurate articles on conflicts of interest involving the Clinton Foundation, her husband, and herself.

It is not just my personal opinion. Polls, granted polls have proven fallible in this election, showed public awareness of the Clinton Foundation conflicts of interest stories and that it was adversely impacting her campaign.

[https://www.washingtonpost.com/news/the- fix/wp/2016/09/21/th...](https://www.washingtonpost.com/news/the- fix/wp/2016/09/21/the-clinton-foundation-has-become-a-clear-liability-as-bill- clinton-mounts-his-big-defense/)

An ABC/Washington Post poll in September showed that about 6 in 10 (59 percent) thought special favors had been done for Clinton Foundation donors.

This shows public was well aware of the issue.</comment></comment></comment></comment>


Show HN: We built a low friction registration service for UK pubs - <AUTHOR> https://checkin.pub/ <comment><AUTHOR> [https://www.foodandwine.com/news/uk-pubs-reopen-register- dri...](https://www.foodandwine.com/news/uk-pubs-reopen-register-drinkers- covid-19)

UK pubs will reopen on Saturday but government issued guidance recommends that venues require customers to leave contact details in case of a localised Corona outbreak. We designed a simple service to collect the bare minimum data to comply with both the registration guidance and GDPR.

Customers just send a four digit SMS locator to a number (or an email to a special mailbox) and we log either the sender's phone number or email address against the venue and the time of entry. We reply to the message with a confirmation that can be shown to security/service staff. All data is encrypted on the back end and retention periods are enforced. Data export is controlled (and similarly encrypted) in the event that a venue is required to provide by the public health authority.

This approach means data is accurate (non-trivial to forge sender headers) and low friction for the customers. Not asking for personal details to be input makes for a less invasive check in experience for the customer, whilst maintaining compliance for the venue.

<comment><USER2> It is not clear to me that contact details will be _required_ , the government message last weekend was that "pubs _should_ keep a list ...", not that "pubs _must_ keep a list ...", and there is nothing that I have found that states that this is a legal requirement. Perhaps you have more up-to-date information?

<comment><AUTHOR> The guidance does state 'should' rather than 'must' - I have amended my comment to make it clear that it's a recommendation (alongside lots of other recommendations in the same guidance document)

Enforcement and policing of this is presently unclear (and will likely be delegated to local environmental health and licensing authorities, from what I've read - so may be inconsistent across the country).

I suppose if an outbreak is linked to a venue that hasn't implemented the recommendations it will (at best) reflect badly, and at worst attract attention from the local authority in the same way as if other recommended public health measures were not implemented.

<comment><USER2> Thanks, they really are leaving it a bit late for definitive rules on this. There is no way that I'll be giving my name and address to Cummings, Serco and co., so I'm anticipating spending Saturday looking for somewhere taking a liberal interpretation on this (fortunately there are a quite a few to try).

<comment><AUTHOR> Totally agree with you here, not to mention the venues looking at this as an opportunity to boost their direct marketing lists. It's our view that all that is required to contact me is a phone number - so that's all we collect!</comment></comment></comment></comment></comment>


Facebook agrees to pay France €106M in back taxes - <AUTHOR> https://www.bbc.co.uk/news/business-53894959 <comment><USER2> Here's an interesting truth that many of you might not know. When you're a large multinational company or a very high net worth individual, then taxes aren't really an objective calculation.

The tax code in most countries, despite being tens of thousands of pages of legalese, are extremely subjective. This subjective and loose language allow for innumerable loopholes and tax dodges.

If you're using these creative methods, the chances are that you'll get audited every single year by the IRS or local equivalent. Trump famously gets audited every year. Your tax lawyers & accountants will then __negotiate __a tax payment with the tax office. I used the word negotiate because there is no one true formula for tax owed. It doesn 't exist, especially not for corporations.

When you add in 'creative' intellectual property ownership and royalty payments, then the tax office basically has no idea where money is flowing. This is why EU countries commonly lob these huge penalties. Facebook tries to pay X in tax, and the tax office says they should pay X _2, and then after negotiation they pay X_ 1.5.

<comment><USER3> > innumerable loopholes and tax dodges.

... a better way to look at these are backdoors explicitly added for billionaires and corporations to exploit.

You and I have to pay taxes. Large corporations and billionaires do not (not effectively)

<comment><USER4> Got an example of one of these "backdoors explicitly added for billionaires to exploit"?

<comment><USER5> I'm not an accountant or tax lawyer but here you go:

[https://www.investopedia.com/articles/investing/102515/carri...](https://www.investopedia.com/articles/investing/102515/carried- interest-loophole-americas-tax-code.asp)

Carried interest is a share of a private equity or fund's profits that serve as compensation for fund managers. Because carried interest is considered a return on investment, it is taxed at a capital gains rate, and not an income rate. Critics argue that this is a tax loophole since portfolio managers get paid from that money, which is not taxed as income. Advocates of carried interest argue that it incentivizes the management of companies and funds to profitability.

</comment></comment></comment></comment><comment><USER6> As a French citizen, I also "agreed" to pay my taxes last year :). I even paid the full amount I was being claimed. How generous of me.

<comment><USER7> Just curious, if you don't pay your taxes for 10 years as a citizen what happens? do you get arrested at some point?

<comment> mickael-kerjean They will get it from your bank account. That's what happened to me over a parking ticket a few years ago as I parked in a spot reserved to the national train company. I refused to pay as the amount was 4 times over what it would cost to park in a disable spot which I did find unfair from a morale standpoint. After some time, they took the money from my bank account.

<comment><USER8> In France, they can also take it from your salary.

</comment></comment></comment></comment><comment><USER9> Let me just check.

$27.9 billion in operating income the prior four quarters.

$58.2 billion in cash.

It appears they will be able to afford the taxes.

<comment><USER4> Luckily we don't determine the amount of tax you owe based on how much cash you have on hand!

<comment><USER10> Why wouldn't we? They've used legal loopholes to dodge taxes, and the result of that is a lot of 'cash on hand'...

<comment><USER11> Because there are a lot of reasons you could have a lot of cash on hand. You may have a big upcoming expense. Or that cash might even be from a bank loan that you will need to pay back.</comment></comment></comment></comment>


Keep Your Commitments - <AUTHOR> http://www.jasonshen.com/2011/keep-your-commitments/

<comment><USER2> Anyone else interested in running or keeping commitments should definitely read Haruki Murakami's book 'What I talk about when I talk about running. [http://www.amazon.com/What-Talk-About-When- Running/dp/030726...](http://www.amazon.com/What-Talk-About-When- Running/dp/0307269191)

Something about Murakami's writing style conveys great honesty.

</comment><comment><USER3> Hmm, is this some cosmic hint for me to get my client work done today, as I promised? The timing of this post is a bit uncanny, but very motivating.

Time to get back to work.

</comment><comment><USER4> The footnote touches on my biggest problem with keeping commitments: "There are times when you should not keep your commitments – especially when the conflict one another."

What happens when everyone expects you to make a commitment? And to keep it, because hey, you promised. What about all those times people think you've made a commitment, when in fact you only said you'd try to fit them in, then get really upset because you didn't do what you "promised" you would?

In general it seems people have a hard time grasping proritization ... everyone thinks they're your top priority.

edit: what about when commitments magically have a time limit you weren't aware of. People tend to ask me to commit to something, expect it to be done in half an hour and not tell me about this expectation ... again, a problem with thinking everyone is priority number one.

<comment><AUTHOR> Hey Swizec, great point. I think that in order to keep your commitments, you have to make sure you are not over extending yourself. Just because people expect you to make a commitment does not mean you have to make it. It's important for your manager / team mates to have realistic assessments of what you can do, when you can do them and what in fact IS your top priority.

If you don't make the effort (and muster the courage) to align expectations, you will encounter these frustrating situations. If you work in an environment where this honesty is not valued and appreciated, you should consider toughing it out until you can find new work - or be willing to compromise your integrity indefinitely.</comment></comment>


Ask HN: I'm a New Manager – How to Best Handle Employee Grievance? - <AUTHOR> I was recently hired as a Project Manager at a small company. I've only been on the job a few weeks when I was told an employee had filed a complaint against me for creating a hostile workplace. When I asked how I exactly did this I was told I said a curse word at a meeting.<p>Has anyone ever dealt with this situation before?  What is the best thing for me to do?  I dont want a hostile workplace environment on my end where I have to keep looking over my shoulder either. <comment><USER2> I have been a project manager in many organisations and I have on occasion let loose swear words. It has never been a problem. Over the years I have noticed that there are two distinct possibilities:

1\. You might be in a company where nobody swears. In that case, it might be the expected norm that you too speak diplomatically and politely.

2\. You might have a precious snowflake on your team. These come in two varieties:

(a) persons who simply are simply more sensitive than the majority; and

(b) persons who are under-performing and are using the excuse of "hostile workplace" as a cover-up for their substandard productivity.

Perhaps, you are the first project manager that they have hired and the staff are not accustomed to being expected to deliver on schedule, etc. In a small company, it seems strange to me that you can't have a candid conversation with your manager / boss. Not being given the individual's name for "privacy reasons" seems suspiciously like somebody is playing politics.

<comment><USER3> So true, I've met all of them during my decade of work! But I've had one instance when the project manager was the snowflake.

The manager needed constant validation, and when he didn't get it he became angry. Last time, half the team just left within a year. What I've gathered is that more often than not, they are micro managers with some kind of broken confidence (bad divorce, bad education or bad health can all take its toll on it). "If people just listened to me..." is their motto, no matter who they talk to or what subject. When other teams down-prioritised our team because they didn't want to work with him it was shit flinging time!

I'm starting to get better at sensing if people just want to win a discussion or want to learn & teach. But I wished I learnt it sooner.

<comment><USER4> > I'm starting to get better at sensing if people just want to win a > discussion or want to learn & teach. But I wished I learnt it sooner.

The older I get the more I see this as a _critical_ soft skill to have in the corporate world. I wish I could go back to myself in earlier engineering roles and say, "just stop talking - these people don't care, they're only here for the narrative."

</comment></comment></comment><comment><USER5> If it was actually only a single curse word and not maliciously directed at any individual, apologize and start recording the meetings, you probably have your phone out anyway, download the Hi Q app, just let it run. That person probably has something to hide about their work habits. You don't have to trot out the recordings at the first sign of back stabbing, let them pile up and if they make a serious play to get you canned you can start to share them at an advantageous moment. I learned this the hard way. I started keeping my phone in my breast pocket if there was not a table to set it on, people who make those sort of HR reports always have something to hide or protect usually their own incompetence. You may never need them but it literally can't hurt.

<comment><USER6> I believe that is illegal in certain countries and states. For example California has two party consent for recording conversations.

<comment><USER7> The way they are doing it seems illegal... However at my work we host all our meetings through zoom and record them all.

<comment><USER8> That also sounds illegal.

<comment><USER9> Can you maybe substantiate this a little? I don't understand why a company recording the meetings of their employees, on company time and regarding company business, would be illegal.

(An individual doing so, on the other hand, might be problematic.)

<comment><USER10> This would definitely be illegal in Germany where I work as CTO. Even having employees sign some letter of acceptance of such would still be illegal as a court would assume an employee was in an uneven power position and therefore not able to refuse even if they wanted to.

<comment><USER11> It's always so refreshing to hear about Germany's labor laws. America's pretty much a third-world country when it comes to employee rights.

<comment><USER12> > America's pretty much a third-world country when it comes to employee > rights.

Nope, that's not true at all. Not to play the game of semantic-nazi, but that's legitimately offensive when you look at a "third-world" country's employee rights compared to the US.

I'll take you for a tour in Phnom Penh, Cambodia if you're interested in seeing what a "third-world" country's working conditions are really like.

<comment><USER13> There is a difference between working conditions, and labour rights. America has first-world working conditions, and third-world (or worse) labour rights.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> It depends the context in which you cursed. As a curser (and manager), it's taken much worse in certain circumstances. I.e. "This fucking code" versus "I don't give a fuck what you have to say" or such, in the latter is more aggressive and directed.

An environment where cursing is a fireable offense is an environment I'd avoid, because there are limits to the demands of hypersensitive people.

Cursing aside, my worry is your hostile environment criticism might have a wider cause than a single word. Try to work on building positive relationships with as many people as possible. Smalltalk, interest in them and help in the context of the company are things to aim to build.

</comment><comment><USER15> > I was told an employee had filed a complaint ...

Assuming the Company is large enough to have an HR Department; expect them to conduct an investigation. Their primary role is to protect the company.

As a Manager-- you'll want to align yourself with HR (be politically savvy) seek their guidance and consider the needs of the broader organization first.

Understand that lots of people are watching you now. You'll need to be extra courteous and thoughtful in your words and actions.

> [https://www.employersresource.com/human-resources/hr- > scenari...](https://www.employersresource.com/human-resources/hr- > scenario/hr-scenario-hostile-work-environment/)

<comment><USER16> +1

Talk to HR, discuss this in details.

HR would be on your side (and not on the employee side - even though he/she may be told otherwise).

So HR may propose good plan to resolve it.

</comment></comment><comment><USER17> In my opinion you should not curse as a manager in a serious meeting.

For eg: "The quality of this code can be improved" vs "This fucking code has to be corrected" or

very simple statements like:

"what is this"? vs "what the fuck is this"

The tone by adding one curse word changes from inquisitive to condescending and intimidating.

So never use curse words for serious things.

However, after a certain period of time when you're familiar with the environment and people you may joke and curse while having a casual chit-chat.

As for the problem now, as this is a small company have an informal meeting and sort this out and apologize if needed(use humor if you're good at it to make all this less uncomfortable)!

</comment><comment><USER18> So where does it go from here? If anywhere?

What happens next really depends on your employer. If they don't think it was a problem, then you are probably good.

If your employer feels there is a problem then ask your employer what happens next (well ask either way and getting the response in email is nice).

I had a coworker complain to HR about me, but it was also a part of a campaign to file complaints against a laundry list of people and my employer did not feel the complaints were valid. They were very minor complaints that didn't even make sense on the most basic level (like misnamed me several times, identified me as someone else, identified tasks I wasn't even responsible for, and then they would say I helped them with the things they previously complained about).

I was very clear with HR about things. Followed up with an email to HR to get what I said in writing.

Then I was just very careful around that employee, emails were very clear and detailed, I did everything I could to not be alone with that person.

Eventually that employee left, tried to sue the company (for entirely new claims unrelated to me), had case thrown out and it was ok from there.

But every company is different so who knows what might happen.

If you feel things start to get confused... contact a lawyer who can give you advice. Plenty of lawyers out there who can offer advice for free or cheaper for just a bit of their time.

Keep in mind only your own lawyer is there explicitly to help you and will have your best interests in mind.

No matter what your company says HR is there to protect the company, NOT you.

</comment><comment><USER19> I'm not sure a project manager is the same thing as a manager. Is this person your direct report?

<comment><AUTHOR> As far as I am aware. I was not given the individual's name for "privacy reasons". I was explicitly told it was someone under me, but that could be anyone of 20-some odd people.

<comment><USER20> You are a project manager. You have no one under you.

<comment><USER21> A lot of project managers like to pretend that they are real managers. Some of them might even believe that developers are their reports.

</comment></comment></comment></comment><comment><USER22> It's hard advice but especially at a small company with potentially no formal processes the best you can do is prepare for any outcome. As with all aspects of life, be kind, thoughtful, and reasonable, but do not always assume others will be the same to you.

</comment><comment><USER20> > I dont want a hostile workplace environment on my end where I have to keep > looking over my shoulder either.

But you don't care about creating a hostile workplace? At no point have you addressed what you have created.

</comment><comment><USER10> If this is a small company, I would probably not worry too much about process and ask the concerned employee to discuss this in a friendly and open way. Maybe a misunderstanding which can be cleared, maybe the reason is actually lying deeper. Good chance you can resolve this by being emphatic and act understandingly.

That being said, I would note down a memory protocol afterwards in case this turns ugly after all.

<comment><AUTHOR> I'm not sure what you mean by a memory protocol, what is that?

<comment><USER23> Sometimes they are called memorandum for the record.

Send yourself an email with your recollection of the incident and print a copy that you do not keep at work. If there is a problem later, you'll have documentation of your contemporaneous thoughts that can be used to corroborate yourself.

It's good practice whenever something significant happens.

</comment></comment></comment><comment><USER24> Not cursing is more professional than cursing.

<comment><USER16> If the guy barged into the new position from outside and cursed his way through meetings in aggressive way - that is one thing.

But if he used a "curse word" once (OMG!) in a meeting and some primadonna filed a complaint - fuck that.

</comment></comment><comment><USER25> Have you tried not cursing?

<comment><USER16> I did and it fucking worked!

</comment></comment><comment><USER26> Say that you want to record meeting minutes from now on and will be recording important meetings to summaries later. If people aren't comfortable with that ask them not to attend and they can be briefed later. Eventually, that will get to annoying and they will just start attending the meetings.</comment>


Ask pg: Have the comments improved? - <AUTHOR>

Several weeks ago, PG lamented that comments had gotten worse. PG asked readers for suggestions of what he should do to make comments better.<p>Now at least some changes have been made. Would you say the comments have improved? <comment><USER2> I got rid of points to decrease contentious back and forths. I feel like that may have happened. At least, I feel like I've gotten dragged into fewer such threads.

Has anyone else noticed a trend either way?

<comment><USER3> I no longer read comments. Points acted as an editor's cue on high quality content to read. Maybe more good comments are produced now, but it's no longer possible to find them without reading everything.

<comment><USER4> This exactly. I've found that I read less comments and skim over them because it's hard to differentiate the good view points from the rest. I know the most voted comments should float to the top but not having points just makes the discussions less interesting to me.

<comment><USER5> Would ordering the comments based on points solve this? Ie. highest scoring comment at top.

<comment><USER6> They are in part. The comments are ranked by votes and time and probably some other mechanisms pg implemented. I think the reddit hot method might be better.

</comment></comment></comment></comment></comment><comment><USER7> Can't we have something like this? -- Those who want to see points, could enable it, but then they would not be allowed to upvote/downvote. OR they could still vote, but their votes won't be counted (or given less weight- age?).

Does it serve the purpose for both the sides? What are the potential caveats in this?

<comment><USER8> Potential problems: 1) people would set up two accounts, one to look at points and one to vote (and then log into both of them on separate browsers). It would be possible to modify the site to detect this, but that would be extra work for pg. 2) It would take less than a week for a browser extension that did this automatically (putting points into a page) to be released - there's already one attempt to build a database of points with an extensions (it records the score of points of anyone who has it installed and makes that information available to others).

It's a good idea on its face, but it wouldn't work.

</comment></comment><comment><USER9> I think that as HN becomes more popular it is only natural for the quality of the comments to decline.

<comment><USER10> Pretty much. According to Hacker News News [1] unique visitors tripled between April 2009 and February 2011.

[1] <http://ycombinator.com/newsnews.html>

</comment></comment><comment><USER11> While on the topic, I've been wondering today if there is any concept in place concerning how to measure the desired improvement. If not, how does one determine "are we there yet?"</comment>


Booking.com acquires mobile and Web-messaging company eBuddy - <AUTHOR> http://thenextweb.com/insider/2013/12/04/booking-com-acquries-mobile-web-messaging-company-ebuddy/

<comment><USER2> Too very unrelated services, I wonder what they are planning.</comment>


A Study on Solving Callbacks with JavaScript Generators - <AUTHOR> http://jlongster.com/A-Study-on-Solving-Callbacks-with-JavaScript-Generators

<comment><USER2> Node.js users interested in seeing how generators interact with their async system should probably look at the Python Twisted library, which has had years to refine that pattern.

<comment><USER3> Are generators allowed in RPython/PyPy yet? Last I checked, they were disallowed due to the difficulties of making them performant.

<comment><USER4> PyPy absolutely supports generators. Python's stdlib uses them extensively.

If you were worrying about the JIT not supporting them, it appears to just fine:

gentest.py:

      def gen():
          for i in xrange(10**9):
              yield i

      for i in gen():
          pass

      $ time python gentest.py # python 2.7

      real	1m12.956s
      user	1m12.736s
      sys	0m0.000s

      $ time pypy gentest.py # pypy 2.0.2

      real	0m5.728s
      user	0m5.708s
      sys	0m0.000s

</comment></comment></comment><comment><USER5> This is awesome, thanks for the writeup. I love that Mozilla devs and Google (among many other people), keep pushing the boundaries on JavaScript. Even in just one year, its astonishing how much the web has changed..

</comment><comment><USER6> Great, things are moving - does anybody know how far away the specs is from being finalized and when we'll see it in the browsers and not just Node?

<comment><USER7> The specification has already reached "draft", so it's usually pretty stable at that point. Firefox has actually included generators for awhile now ([https://developer.mozilla.org/en- US/docs/Web/JavaScript/Guid...](https://developer.mozilla.org/en- US/docs/Web/JavaScript/Guide/Iterators_and_Generators#Generators.3A_a_better_way_to_build_Iterators)), but their implementation is based on JavaScript 1.7, rather than ES6. The end implementation was pretty close, but didn't include the function* syntax (I don't believe they implemented yield* either). Regarding timeline, that's obviously hard to guess at from an external perspective, but most browser vendors seem to be comfortable enough with developing against draft-level specs, so hopefully soon.</comment></comment>


The Wealthy Can't Stop Not Paying Their Taxes - <AUTHOR> https://www.nytimes.com/interactive/2020/07/15/opinion/tax-evasion-irs.html <comment><USER2> I hate that I love the graph on this page. Like I normally cannot stand complex, pretty, responsive design. But damn, it was done well and helps consume the data easier, clearly presenting the authors point.</comment>


Abstract Persistence Logic - <AUTHOR> http://jasonroelofs.com/2012/07/13/abstract_persistence_logic/

<comment><USER2> Does anyone know of any libraries or discussions about using these patterns with Django?</comment>


Why Super Nintendos Lose Their Color: Plastic Discoloration in Classic Machines - <AUTHOR> http://www.vintagecomputing.com/index.php/archives/189 <comment><USER2> Great post...And boom!

This is a great guide for anyone interested: [http://www.retrofixes.com/2013/10/how-to-clean-whiten- yellow...](http://www.retrofixes.com/2013/10/how-to-clean-whiten-yellowed- plastics.html)</comment>


Haxe Design Patterns - <AUTHOR> https://github.com/midorikocak/haxe-design-patterns/ <comment><USER2> Nice, maybe also a good idea to share the content of some design patterns here [https://code.haxe.org/category/design- patterns/](https://code.haxe.org/category/design-patterns/)</comment>


What is the best tool to test your business idea? - <AUTHOR> <comment><USER2> Your voice.</comment>


Ask HN: Which tool you use to create wireframes? - <AUTHOR>

Please add link to software <comment><USER2> This is always a good one: <https://www.mybalsamiq.com/>

</comment><comment><USER3> www.axure.com it's really helpful to upload and make them easily clickable

<comment><AUTHOR> looks cool- downloading now</comment></comment>


Show HN: Mediakito – Resume for Your Website - <AUTHOR> https://mediakito.com <comment><AUTHOR> Hey,

I'm happy to share with you my side project. It's a SaaS tool for bloggers - it allows them to create Media Kit.

There are no similar tools on the market, people are building Media Kits from scratch or buy templates which are difficult to edit.

I was struggling with this process too, so decided to address the problem by building Mediakito:

\- You can create Media Kit within a few minutes

\- It's always up-to-date thanks to integration with Google Analytics and social media (FB, Twitter, Instagram, Pinterest, YouTube)

\- It's accessible via custom URL on desktop/mobile

\- It contains all useful information for potential advertisers/partners

Sample Media Kit: [https://mediakito.com/igol](https://mediakito.com/igol)

Generally, I wanted to build the easiest way to create a Media Kit for bloggers.

Let me know what do you think. Thanks!

<comment><USER2> What is a Media Kit?

<comment><AUTHOR> It's a document which bloggers send to advertisers. It should contain website & social media statistics, audience profile, available services, etc.</comment></comment></comment>