Unsung Beauty of Analog Devices Datasheets - <AUTHOR> https://neil.computer/notes/analog-devices-datasheets/ <comment><USER3> Former Analog Devices employee here. I used to write programs and that collected all of the data for the data sheets. We would take all of these complex measurements on a part in just seconds using some pretty fancy test equipment. It definitely taught me a lot / inspired me to learn more about programming as a a fresh-out-of-school EE

Definitely happy to see some data sheet love ..chip companies are definitely in a whole different world when it comes to documentation, compared to the software world I'm now in!

<comment><USER4> "..chip companies are definitely in a whole different world when it comes to documentation, compared to the software world I'm now in!"

Makes sense though. SW is a much more agile/faster iterations artifact than HW. Documentation is very hard to keep pace in this env, so much so that people are actually trying to infer it automatically from the -ever changing- code.

<comment><USER5> Your wording shows the difference very well: ~"Documentation that we have to keep updating" vs. "datasheet" (a specification).

</comment></comment></comment><comment><USER6> Data sheet culture at these old-line semiconductor companies - ADI, TI, Linear - descends from the fact that you used to hold it in your hand and read it on paper. When I was in that field we went to the company library to read datasheets because ISO9001 required the company librarians to record which revision of which part an engineer read at what date and time. And it was partly sales literature because you'd be flipping through a bound volume of ADI's current parts looking for something suitable.

If you really want to get the whole experience then I urge you to print these out. The graphics are high-resolution.

<comment><USER7> Those were also the days when a radio or TV set came with full schematic diagram in the manual, and IC data sheets also contained the full internal schematics of a part rather than just a block diagram or a simplified schematic without parts values.

<comment><USER6> Sounds like you're just a little older than me :-)

<comment><USER7> Possibly yes, I was just a kid in the mid 70s and have memories of those enormous books filled with TV schematics the repairman had at his shop, also every TV was accompanied by its own one. TV manufacturers kept distributing schematics until mid to late 80s, then stopped. Unfortunately back then scanners and the needed storage were almost science fiction, and the format would have hard to scan anyway due to the huge page sizes, so most of those books are either lost or sold at absurd prices online as vintage.

</comment></comment></comment></comment><comment><USER8> A couple recent exceptional datasheets I've come across include ADI's ADA4530 [1] and Renesas/Intersil's ISL28110 [2]; both, coincidentally, happen to be for regular old op-amps. The ADA4350 datasheet in particular is absolutely stunning and proof that the old ways are not completely gone. The ISL28110 datasheet is notable when, in an era when I all too often need to read between the lines to determine the type of _input transistor_ used (seriously, guys, it's not hard to show and there are only six possibilities so it's not like you're giving away secrets here), they show a _complete device model_.

That said, I still miss LTC, NSC, and the pre-Renesas Intersil.

[1]: [https://www.analog.com/media/en/technical- documentation/data...](https://www.analog.com/media/en/technical- documentation/data-sheets/ADA4530-1.pdf)

[2]: [https://www.renesas.com/us/en/www/doc/datasheet/isl28110-210...](https://www.renesas.com/us/en/www/doc/datasheet/isl28110-210.pdf)

<comment><AUTHOR> Thanks for sharing, old ways are definitely not gone but eroding away sadly.

One of things I find amazing about the datasheet culture is that there is minimal marketing bullshit (although there are exceptions, I am looking at you, ST Electronics). Skimming through ADA4350 datasheet, I see no trace of any kind of trickery that we usually see in other industries. Datasheets are _the_ thing people look for and since the audience is engineers, they won't put up with marketing nonsense. As a consequence, there is almost perfect objectivity in selling a product - based on features, performance, operability, etc. Since decision makers are engineers, data and specifications prevail.

<comment><USER3> (Full disclosure, former AD employee)

In particular with precision Analog / mixed-signal / RF, there is a real recognition that there is no perfect Amplifier / Converter / Black Box X, that will satisfy all applications. That all abstractions (and inputs) are leaky, a wire is never just a wire, ground is never ground, noise exists, etc. That the reality is that there are myriad tradeoffs to be made depending on what you want to do, and the best way to be successful is to acknowledge that fact from the start without any bullshit; And as a supplier to tell you exactly what those real-world tradeoffs are and help guide you towards being successful.

To their credit the applications engineers and even sales folks when I was there were just as happy to sell you a $.05 "jellybean", as they were to sell the latest precision laser-trimmed FancyAmp if that's all you needed because they were like minded engineers too, and at the end of the day, building something that did the job it needed to was satisfying.

(Plus, as anyone whose done consumer/ high-volume electronics will tell you, BOM cost is it's own variable in the optimization space that can lead to some creative design choices!)

</comment></comment></comment><comment><USER9> Kind of a rant, so forgive me for venting out :)

An untold truth is that datasheets are also the terrain for disputes with tech support. That is, there is a whole team of people called Application Engineers in said companies dedicated to support, that basically knows very little about the practical side of the product and all they do is to read datasheets, just in case there are engineers out there that design products without studying it.

So in order to pass the first (and usually not very helpful) line of support you better study the datasheet because it will be a sort of "legal" document you will have opened in your screen for the next week, until the application engineer gives up and connects you with someone who knows the product.

Regarding the quality of documentation, yes, nobody beats old monsters like AD. In regards of reference designs... AD is used to give you a 10"x10" board to evaluate a tiny little component; let's say a battery charger. Of course the reference design board has traces of the width of a thumb, very big gold- plated connectors for the power supply, etc. So when you go and integrate the little component in your wrist watch and it doesn't work, the application engineer will go with: "yeah, your design is not much like the reference design, so it's kind you will run into trouble.".... Imagine the rage...

</comment><comment><USER10> Many years ago I was on a team designing a "smart sensor" box. The heart of it was an integrated precision A/D + 8051-compatible microcontroller chip from Analog Devices:

[https://www.analog.com/media/en/technical- documentation/data...](https://www.analog.com/media/en/technical- documentation/data-sheets/ADUC814.pdf)

None of us has ever worked with microcontrollers before. It was my first ever job out of school. I don't think we would be able to deliver the product if the chip datasheet was not awesome. It had everything. Memory organization, registers, peripherals, board layout and grounding recommendations, ADC driving, etc.

Thank you, Analog Devices engineers.

</comment><comment><USER11> When teaching students about datasheets, I generally pull up an AD datasheet and state, "This is what a good datasheet should look like."

They're not the only makers of good datasheets, but they're very consistent. (and many of their chips are awesome)

<comment><USER12> Yeah, as someone who's self taught AD and Linear data sheets were always awesome and a great source of information.

</comment></comment><comment><USER13> Linear Technology's AN47 "High Speed Amplifier Techniques" is my favourite document in this category. It is both nicely presented, and a great resource for high performance electronics:

[http://www.linear.com/docs/4138](http://www.linear.com/docs/4138)

<comment><USER14> All of Jim Williams' app notes are absolutely top notch.

<comment><USER15> Williams definitely wrote his stuff for a different generation of engineer - <USER2> generation where not everyone had access to the internet, and it behooved LTC to pack as much info into one document as possible.

The mark of just how good AN-47 is that, even in the age of the internet, it's _still_ one of the best go-to guides on high speed opamp design and the attendant/surrounding challenges. Particularly concerning proper oscilloscope techniques for accurate measurements of high speed circuits.

</comment></comment></comment><comment><USER16> I have "datasheet-envy".

I'm one of the co-founders at satsearch [1], where we're working on fixing procurement in the space industry. We're constantly battling shitty datasheets.

As a space engineer, I found it infinitely frustrating to work with flyers that suppliers provide on their website, that also double-up as preliminary datasheets. They're messy, inconsistent, and subject to whatever the supplier thinks their buyer might want to know.

We wrote a blog article about the mess that exists in the space industry [2], and a follow-up about what we think can be done to improve this through Electronic Data Sheets (EDS) [3].

The EEE industry seems streets ahead in this regard, which is perhaps primarily down to strong commercialization and rapid growth of the market over the past 20 years. I think with companies like Octopart [4] making it patently obvious who does a good job of supporting engineers, it might also have pushed suppliers to improve their documentation.

I'm curious though about the consistent use of PDFs. I understand from a usability point of view that they're great for documents, but I would have imagined that the EEE industry would have started distributing "smart documents".

To give you an example, the AD datasheet in this article includes a number of high-res graphs: why has the sector not moved to the point where these graphs are interactive elements that you can zoom into, programmatically read off of, export data from, etc.? The way I look at it, a Juypter notebook or something similar would be an awesome way to share datasheet content, allowing much more interactivity.

Anyone with any thoughts as to why datasheets haven't progressed in that direction?

[1] [https://satsearch.co](https://satsearch.co)

[2] [https://blog.satsearch.co/2018-02-21-building-better- datashe...](https://blog.satsearch.co/2018-02-21-building-better-datasheets- for-space-mission-design.html)

[3] [https://blog.satsearch.co/2018-01-23-the-challenges-of-an- en...](https://blog.satsearch.co/2018-01-23-the-challenges-of-an-engineer-in- the-new-space-age.html)

[4] [https://www.octopart.com](https://www.octopart.com)

</comment><comment><USER17> On the other hand, TI's datasheet quality seems to have gone downhill, ST and Infineon's has always been horrible, and Broadcom is infamous for not releasing them at all.

<comment><USER18> Back in the day the saying was "lies, damn lies, and datasheets." The relatively rare companies that put out good datasheets were my heroes.

</comment></comment><comment><USER19> Most electronic engineering component-related documentation is good. It has a long history tracing back through National Instruments.

Intel's 80386 documentation was superb.

<comment><USER20> I believe you mean National _Semiconductor_

NI is an instrumentation board maker that got started in the 80's.

</comment></comment><comment><USER15> One other interesting repository of design knowledge: Texas Instruments' reference design catalog.

TI will _give_ you the plans to build all sorts of machines and gizmos using their chips. ATMs, industrial robots, blood oxygen meters, even oscilloscopes - you can find detailed design information (schematics, BOMs, layouts, etc) on TI's website, free of charge.

<comment><USER21> A huge amount of manufacturers offer designs here's a curated compilation.... [https://www.digikey.com/reference- designs/en](https://www.digikey.com/reference-designs/en)

<comment><USER15> True. I just like TI's as an example because they cover so many use cases and market verticals.

</comment></comment></comment><comment><USER22> I owe a great deal to National Semiconductor and their application notes. Prior to college I tought myself a lot of what I know about analog design from this handbook [0]. I remember in middle school calling up the support line and having an extremely patient applications engineer walk me through my design and point me at resources to learn. He always answered my emails, even though I'm sure he had more important questions to answer. I tried several years ago to track down the emails to contact him again and thank him, but those emails seem long gone.

[http://mirror.thelifeofkenneth.com/lib/electronics_archive/N...](http://mirror.thelifeofkenneth.com/lib/electronics_archive/NationalSemiconductorLinearApplicationsHandbook1994_text.pdf)

</comment><comment><USER23> IMO - This article is an over simplification. Data sheets need to be book worthy documentation due to the behavior of complex semiconductors. I believe Datasheets are law abiding documentation? If something is out of spec or out of characteristics is is considered faulty which means loss of money or competitors can get in.

What I'm really interested is in what peoples opinions are regarding the navigation of content and material of these large scale Semiconductor Sites. They have 50k plus products which are all very complicated and specific to a use-case. I find there is a constant struggle to route people to the right solution especially when engineers can use different parts in new creative ways. ADI, Texas Instruments, and Maxim all fall in this boat.

<comment><USER24> > Datasheets are law abiding documentation?

Ideally true, but in practice I've seen certain performance claims (such as battery cell capacity degradation in a battery data sheet) aren't accurate or depend a lot on your application. If they are reputable, I assume they are trying to estimate an honest average.

Navigating the sites are challenging when I don't already know which part I want, for sure. I wish there were better ways to explore sites for certain keywords in a data sheet.

<comment><USER25> Do search engines like Octopart or Digikey help?

<comment><USER26> Digikey has one of the better search engines, not least because you get preview thumbnails of almost everything, and you can search in single unit quantities. It also has some intelligence when filtering parts by value (eg Leds by wavelength).

The problem is usually knowing the names of things, and eventually you learn what keywords to search for eg 2row 10way for a 2x5 connector. Everything is mostly standardised.

Octopart is best for finding stock, I wouldn't use it to locate a new part.

For finding new chips, like random sensors, the best way is to trawl the major IC websites (Ti, Max, etc) and see what pops up. You can still get samples from most of these places, and of quite expensive parts too.

</comment></comment></comment></comment><comment><USER27> ADI has gone down hill. For example, the HMC6300 datasheet is crap, having wrong register values, and lacking the interfacing details. Hittite, prior to ADI, would have never had a poor data sheet like that. The ADI web site also stinks, compared to what was Linear Technology.

</comment><comment><USER28> I believe the Signetics 25000 series 9C46XN document is arguably the pinnacle of datasheets:

[http://www.repeater- builder.com/molotora/gontor/25120-bw.pdf](http://www.repeater- builder.com/molotora/gontor/25120-bw.pdf)

<comment><USER21> Oh good, someone posted this! By far the best datasheet ever written.

</comment></comment><comment><USER29> The data sheets of AD, National, TI et al have also followed a pretty standard format in terms of layout, order of descriptions etc (something that I have always assumed predated semiconductors). This helps make them particularly useful.

</comment><comment><USER30> Reminds me of the cartoons in Tektronix manuals:

[http://w140.com/tekwiki/wiki/Tektronix_Cartoons](http://w140.com/tekwiki/wiki/Tektronix_Cartoons)

I think it was recently discussed on HN.

</comment><comment><USER31> To really understand what the author is getting at it helps to have some experience with lower quality data sheets from other manufacturers. Take, for example, the WS2801, a popular LED driver chip from World Semi[1]. All of the necessary information is there (I used it to successfully wire them up and bit bang the LED colors) but it's just not pretty. The blue header is jarring and the graphs are screenshots from a scope.

[1] [https://cdn-shop.adafruit.com/datasheets/WS2801.pdf](https://cdn- shop.adafruit.com/datasheets/WS2801.pdf)

</comment><comment><USER32> They do make beautiful documentation, so clear concise and well ordered. Would be nice to see who the authors are but I suspect they might be introverts. Certainly show a love for their work

</comment><comment><USER33> "hehehe, I remember my first krabbie patty".

Looks like someone stumbled across a data sheet, and never read any before. Almost all of them look like that. Ti, NatSemi, ON, DIODES-inc, NEC, Toshiba, etc, etc. Ti and National Semiconductor used to be great reading for new engineers.

</comment><comment><USER34> I really love sites full of gorgeous, detailed images that block my browser's zoom feature. /s

<comment><AUTHOR> There is no JS or anything on the page (besides what Ghost blog puts out for metadata). I am getting 99/100 on Google page speed test as well.

I tried zooming in on images using iPhone X / Safari and there is no issue. Are you sure something isn't wrong at your end?

<comment><USER34> I'm using firefox on android, but the problem is here:

<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum- scale=1.0, maximum-scale=1.0, user-scalable=no" />

<comment><AUTHOR> Thanks! I fixed it and it should be scalable now.

</comment></comment></comment></comment><comment><USER35> I used to worked at Intel as a design engineer and I had to look through data- sheets to find the ICs with features and specs that I needed for the design.</comment>


nEXT Browser: A nEXT Generation Extensible Lisp Browser – Alpha - <AUTHOR> https://next-browser.github.io/ <comment><USER2> Show HN: [https://news.ycombinator.com/item?id=15418719](https://news.ycombinator.com/item?id=15418719) (Oct2017)

</comment><comment><USER3> I don't want to be that guy, but let me be that guy: you need to search on the name of your product, and if it refers to too many similar things, choose a new name. The DuckDuckGo results for 'next browser' include browsers for Android and Windows (maybe --- only read the headline), as well as articles about what should be your next browser. Google is similar.

Choose a new name. You're making life difficult for your potential users.

That being said, I'd love to try it, if I had Apple products.

</comment><comment><USER4> I really wanted to test that, but the lack of Linux support is a bummer. Maybe in a few weeks...

<comment><USER5> So do I, but on Windows.. It seems to be the Lisp version of Qutebrowser (Python).

</comment></comment><comment><USER6> This is a definitely an interesting approach. What is the web engine behind it? I thought about the idea on building a simplified interface for blink and V8, but they are extremely and differently glued to other pieces of software in each Chromium release, that it is indeed hard to keep track on them.

<comment><USER7> Looks like whatever webkit variant they can find.

[https://github.com/nEXT- Browser/nEXT/tree/master/next](https://github.com/nEXT- Browser/nEXT/tree/master/next)

"Use CCL Cocoa Library to use native webkit backend"

<comment><USER6> My bad, I missed that comment, was even reading the source code trying to find something about it. Thank you.

<comment><USER7> I find that if i want to find out what something is made of, start with the dependencies in the build instructions.

It may not always help, but it seems to work often enough.

This time however it was in the version history, go fig.

</comment></comment></comment></comment><comment><USER8> Seems like QuteBrowser but written in Common Lisp?</comment>


Is It Ethical to Automate Your Job Without Telling Anyone? - <AUTHOR> https://insights.dice.com/2018/10/09/is-it-ethical-to-automate-your-job-without-telling-anyone/ <comment><USER2> Did you create the automation? Then the automation is an extension of you. Even better, if you leave the company, a part of you is still there working for them. Perhaps at least give them documentation prior to leaving.</comment>


Show HN: Fork, a toy self-hosting language and compiler that compiles to C - <AUTHOR> https://github.com/mcilloni/fork <comment><USER2> Neat project, what was your motivation for writing it?

<comment><USER3> I think the readme covered it:

> I've developed in my spare time a few years ago (2014~2016) mostly as a toy, > and as a way to tinker and learn how parsers and compilers work.

Edit: mobile typo

<comment><USER2> Thanks I most have missed that in the README.</comment></comment></comment>


Ask HN: Could You Live Without the Internet? - <AUTHOR> How long at a stretch could you go without the internet? <comment><USER2> "I would prefer not to."[0]

[0] [http://www.gutenberg.org/cache/epub/11231/pg11231-images.htm...](http://www.gutenberg.org/cache/epub/11231/pg11231-images.html)

</comment><comment><USER3> Depends on what I get in return.

<comment><USER4> Privacy.</comment></comment>


Author of curl and libcurl denied entry to U.S. with no explanation - <AUTHOR> http://gizmodo.com/mozilla-employee-denied-entry-to-the-united-states-1796465566 <comment><USER2> Previous post: [https://news.ycombinator.com/item?id=14643467](https://news.ycombinator.com/item?id=14643467)

</comment><comment><USER3> Are we taking bets? I'd put a $5 on "somebody saw his domain name (haxx.se) on screen, and overreacted."

<comment><USER4> What workflow ends up with a Customs and Border Patrol officer connecting that domain name to Stenberg's ESTA application?

Here's a guess: some blacklisted piece of software uses curl and credited "firstname.lastname@example.com" as required by its licence[1]. Daniel was then mistaken as a creator of that software, and his email address flagged for any ESTA applications that use it.

edit: apparently I'm not the first to think this: [https://news.ycombinator.com/item?id=14643525](https://news.ycombinator.com/item?id=14643525)

[1][https://curl.haxx.se/docs/copyright.html](https://curl.haxx.se/docs/copyright.html)

</comment></comment><comment><USER5> People have been getting wrongly denied entry to the U.S. for bad/factually- incorrect reasons for decades, probably ever since we had an immigration system.

Obviously immigration should do a better job on their false positive rates, and not just their false negative rates, but these are never going to go to zero. Someone probably made a clear mistake in this particular case, but without details who knows. For all we know there's some social media or blog post of his with something like a joke about harming he-who-shall-not-be- named.

<comment><USER6> The problem isn't the mistakes, the problem is the kafkaesque process. Decisions are made that affect an individual, but the individual has no chance to correct mistaken assumptions about them in the decision making process.

</comment></comment><comment><USER7> …wait, their last name doesn't contain an "i"?

I've been reading it as "Steinberg" all this time. Oops.

<comment><USER8> Steinberg is German spelling, while Stenberg is Scandinavian.

<comment><USER7> Of course. I think the problem is I've just not seen the latter before outside of this person's surname… I think.</comment></comment></comment>


Grommet.io – A design system made for React.js - <AUTHOR> https://grommet.github.io <comment><USER2> I read at least 150 words on this site and still have no idea what Grommet is. A "design system" that "makes the design workflow better" (paraphrasing) doesn't really tell me anything.</comment>


Meet the Redditors Who Designed a Hyperloop Pod - <AUTHOR> http://motherboard.vice.com/read/meet-the-redditors-who-designed-a-hyperloop-pod <comment><USER2> Here's how they did it:

[https://youtu.be/te2nI8Gtdj0?t=7m27s](https://youtu.be/te2nI8Gtdj0?t=7m27s)</comment>


Achain unknown blockchain platform in China may create another 1,000 Litecoins - <AUTHOR> https://www.huffingtonpost.com/entry/achain-this-unknown-blockchain-platform-in-china-already_us_5a572a0ae4b0d1a645f96c2a <comment><USER2> Nice</comment>


Ask HN: Why don't "geeks" use Geeklist? - <AUTHOR>

I have been trying to use Geeklist for a while. It's a great tool for geeks to connect and share stuff with each other but the only problem is there are no real geeks using it. Or the one's who do have accounts are not very active. Its kinda sad since it would be cool to have a more "social" place to connect with hackers (especially for newbies like myself).
Is it because hackers/geeks are inherently unsocial? <comment><USER2> I use HN.

I do not need 'badges', 'gamification', 'likes', 'high fives', 'regeeks', or any of the other bullshit that sites like Geeklist offer.

Also, Geeklist doesn't appear to have any actual information on it (see, for example, <http://geekli.st/rekatz/links/15535>). An entire page wasted on pictures of the submitter, social buttons, statistics, etc.

<comment><AUTHOR> How about connecting with other geeks out there? Is that possibility not useful enough?

<comment><USER2> I think it depends on what you mean by 'connecting'. I don't use Facebook, LinkedIn or G+ and so I'm unlikely to use something that has me build up a list of phony 'friends'.

Actually connecting with other people like me I do via meetups.

</comment></comment></comment><comment><USER3> Another "I don't see how it's useful to me" vote here. I look at the tagline and I think, "How long can that last?"

 _"A place for geeks to share what they've done, who they did it with and connect with great companies and communities"_

Okay - so I'm trying to work out the arc of a user's involvement based on the above statement. If all a "geek" ever does is trivial coding/work, then I could see them being an active member. "Today I wrote a loop!" and tomorrow's post is, "Today I solved a bug". That sort of involvement is pretty much how a beginner programming person would interact with a community, right? For guys like you and me, we work on problems that take months or years. So let's say I join, and I make an intro post: "Here's what I've done." Now what?

I'd ask the OP: what does "connect with hackers" mean to _you_? You've asked/mentioned it multiple times but I'm not quite clear what it means to you. Given the tagline of that site and my having made an intro post, I don't see where it goes.

Are there "great companies" trolling the site looking for "guys like me" to hire? I don't need that. Or are there "great companies" hiding in the background who desperately want to buy my services? Are there "great communities" on the site? That's what the tagline implies. And I don't get that - is Geeklist one community or multiple ones? There's just nothing on the home page that makes me want to join. To see anything at all, it appears I have to login with Facebook/etc.

</comment><comment><USER4> My main experience with Geeklist has been the emails they send telling me to use their site more at least once a week.

I can understand them wanting to grow their network, but the damn thing won't let me unsubscribe because I can't log in (forgot password).

I've noticed quite a few sites hiding unsubscribe buttons behind a login wall lately. It's slimy, and not what I would expect from a site aimed at geeks.

<comment><USER5> This is a violation of CAN-SPAM. Feel free to rightfully flag violators as spam.

 _Clarifying that to submit a valid opt-out request, a recipient cannot be required to pay a fee, provide information other than his or her email address and opt-out preferences, or take any other steps other than sending a reply email message or visiting a single page on an Internet website._

<http://en.wikipedia.org/wiki/CAN-SPAM_Act_of_2003>

</comment></comment><comment><USER6> Went to the site and the only thing I saw was some tags and sign-up buttons... oh and a statement on how great it is.

On Hacker News, Slashdot, Dribble, etc. I immediately see how great it is. No log-ins to start, just geeky goodness.

Put the shiny stuff up front and move the about us in the back and you probably will attract more of us ADHD techie types.

</comment><comment><USER7> I think geeks are more inclined towards a simple interface, more like what hacker news and free node provide. But geeklist is more like facebook with with all those useless stuff like gamification, high fives etc.

In my opinion even a platform with only REST API would be more tempting for geeks rather than geeklist.

</comment><comment><USER8> The _real_ geeks are still on Usenet.

<comment><AUTHOR> True, but then its the geeks who make the likes of Facebook, Twitter and then not use it themselves :)

</comment></comment><comment><USER9> It's not apparent why it's useful for me. And it probably isn't.

Yet another aggregator? No thanks!

<comment><AUTHOR> Connecting with other geeks/hackers?

<comment><USER9> There are better media for that (Hacker News, GitHub, IRC, Slashdot...)</comment></comment></comment>


Latest Updates on Egypt's Political Crisis - <AUTHOR> http://thelede.blogs.nytimes.com/2013/07/03/latest-updates-on-egypts-political-crisis-2/

<comment><AUTHOR> live video feed: [http://www.youtube.com/watch?v=rbL_q1i7-Pk](http://www.youtube.com/watch?v=rbL_q1i7-Pk)

<comment><USER2>
        This video is not available.

Is this a regional block? ( I am in Germany.)

<comment><USER3> WFM

<comment><AUTHOR> confirmed working here in USA</comment></comment></comment></comment>


Find medical colleges - <AUTHOR> https://play.google.com/store/apps/details?id=com.appsbazaar.findcollege&hl=en <comment><AUTHOR> Find College mobile application provides features to search courses across all the colleges/universities in India. Students can check college address and annual intake seats information of MBBS, PG, SSC courses of all medical colleges in India. Status of MCI recognition and management type information provided This helps students to avoid spending more time in searching reliable information in internet. Instead, this mobile app can meet their expectation handy. Email or Phone # subscription for students needed to access the data. Application works offline for students</comment>


Mosh: A replacement for SSH - <AUTHOR> https://mosh.mit.edu/ <comment><USER2> Mosh is a truly impressive feat of thought and, perhaps more importantly, engineering. The thinking behind Mosh is substantial, the paradigms are fresh. Reading about mosh on its excellent website, I _always_ leave with a profound feeling of enthusiasm. Mosh belongs a school of software development ethics that I'm sorely missing in the world.

However, I do concur that, perhaps, Mosh solves a deep problem on the wrong level or, even, in the wrong domain. The feeling, already expressed here, that "tmux oughta do it" never leaves me. Why is that?

Because I know that ssh, by itsself, can handle connection loss quite well[0]. Rather, I suspect, ssh can't deal with IP changes or the destruction of the underlying interface.

So, here's the rub: Why is a stable, somehow-abstract, network interface with a local IP, sitting on top of the actual network interfaces, be they wired or wireless, _not_ the answer? Over the years, on and off, I tried to get the Linux ethernet bonding stack (ifenslave) to provide me with just that solution, but was never able to.

Hence, I keep revisiting mosh, then revisiting ifenslave...

[0] On a machine that doesn't dynamically switch network interfaces on demand, just unplug an ethernet cable, wait a while and plug it back in: your ssh session will resume.

<comment><USER3> You missed the point of Mosh. SSH transfers a bidirectional stream of bytes between server and client. It uses TCP as transport. You can combine SSH with tmux to preserve your sessions as tmux sessions. If you use SSH to access your tmux session you fixed a part of the problem. Your client can now roam by reattaching the tmux session from a new SSH connection.

The other half of the problem remains: SSH transfers unmodified byte streams between client and server over TCP. On networks with high latency or high packet loss this design doesn't work. Mosh fixes this part of the problem by redefining the problem. Instead of transferring every byte in both directions it runs a terminal emulator on both sides and the problem turn into: keep the terminal emulator states in sync. The server sends patches from the last confirmed client state to the current server state to the last known client address:port pair via UDP. The client sends the user input (and pings) to the server via UDP. This design allows Mosh to skip over lost messages.

</comment></comment><comment><USER4> Mosh is brilliant software. I use it every day. Being able to close my laptop, move to a different café, and open it back up with all of my sessions seamlessly reconnecting is invaluable.

But -- mosh still can't do proper SSH agent forwarding[0], which is a real drag. Many of my common workflows become impossible. I hope it gets fixed!

[0] [https://github.com/keithw/mosh/issues/120](https://github.com/keithw/mosh/issues/120)

<comment><USER5> I feel like mosh is fixing problems at the wrong layer. Instead of making application protocols connectioness, we should make Mobile IP work so that connections don't need to be broken in the first place, or, failing that, separate the protocol management from the session persistence system.

Combining regular ssh with screen has worked fine for me for years. Why would I want to switch to something with a much shorter track record for security?

(By the way: if you want a line-buffered ssh for use over bad connections, run ssh inside Emacs with M-x shell.)

<comment><USER6> Yes. I was wondering, faced with an unreliable on-train mobile connection, is there any existing way to improve the content delivery by using a proxy host?

It seemed to me as if the mobile browser kept redoing a whole lot of work, ie. essentially re-requesting web sites from scratch. I'd like to make a single request to a web site, have my proxy host complete the request and deliver the bytes piecemeal to the browser as I go in and out of range.

I think it's possible to do this transparently to the browser, but I think you might need a proxy host with a reliable connection as well as a proxy software running on the mobile device that can deal with the situation by telling the reliable host: I'm back, here's a list of running requests and the last byte I received, please continue.

<comment><USER7> I believe this is how the opera browser for ios works, or amazons browser for their fire tablet.

<comment><USER8> Alas, both of them are proprietary and monolithic - IOW, you can only use the infrastructure iff you're also using the one specific client. Not very useful for extending even for other browsers, or even different protocols - which is a pity :(

</comment></comment></comment></comment></comment><comment><USER9> Too bad mosh needs an udp port to run its own server.

One of the greatness of ssh is its lean network requirements (it can even be considered https if seen from intermediate proxies, hence whitelisted) and this extra udp port is quite a burden in some environments.

I still agree that mosh is a fine tool for mobile users. I'm just a tad worried about its security layer implementation being less audites than openssh for instance (as mosh isn't as widely used)...

<comment><USER10> Well, Mosh still uses OpenSSH for the initial authentication, and during the rest of the connection, all the security is handled by a single layer (AES- OCB, using the reference implementation), which is not specific to Mosh.

That said, it has never been audited.

</comment></comment><comment><USER11> It's not a replacement at all - it doesn't support scroll back (screen buffer). Latency often changes the order of keystrokes. I've tried to used it so many times and gave up every single time after the enthusiasm ran out.

<comment><USER12> >Latency often changes the order of keystrokes.

I've never had this experience! And I've used mosh for some time extensively on all sorts of connections ranging from abysmal to horrible. Maybe you used an older version?

<comment><USER11> Yes, it's been an issue in the past as I gave up on Mosh. To be fear, I will reinstall and try. Worst of all, I was having these issues on relatively fast connection, so, that's what turned me off as I could imagine when there are real latency issues in place.

</comment></comment></comment><comment><USER13> Several commenters are asking what mosh provides that's better than ssh+screen/tmux.

A few years ago I spent a summer at a remote field site, sharing a flaky T1 with 100 other people over equally flaky site-wide wireless network. (Many of those people were undergraduates who had been politely asked not to use the research network to access facebook, but, well, you know.) Not only was packet loss common, but latencies to an outside host varied whimsically from 50ms to 2000ms. In those conditions ssh was unusable, tmux or not. I was able to do work on remote servers only because of mosh.

<comment> ryan-c Let me clarify a little more. Mosh _hides latency_ by doing display prediction. It guesses what the results of your keystrokes will be and displays them locally, highlighted as predicted with an underscore.

</comment></comment><comment><USER14> My main issue with mosh is having to open a massive UDP port range, which just goes against my instinct when it comes to security.

The other security issue is the whole 'seamless reconnect' \- it's probably been thought of, but does anyone have any links to how they've mitigated the massive MITM risk this opens users to?

<comment><USER15> You don't actually need to open a UDP port range, a single UDP port is enough. But then you'll have to tell mosh with the -p parameter which port it has to use.

</comment></comment><comment><USER16> I wish half of this had been implemented in tmux instead. tmux is already client/server, add local typeahead (which is very cool) to the client and let me run it over whatever transport I want (spoiler: it will still be ssh, because I don't really benefit that much from their reinvention of TCP)

<comment><USER17> Both "client" and "server" in TMUX terminology are on the same machine. AFAIK, MOSH creates a terminal emulator in each connected machine and keeps them in sync.

</comment></comment><comment><USER18> My biggest complaint about Mosh is that how it handles the login sequence breaks common .bashrc/.bash_profile idioms like

test -z "$BASHPROFILEREAD" || return

(to avoid double-sourcing) and there's no good way to fix them. I haven't tested ksh93/zsh yet, but I suspect similar issues. I suspect the developers do little more with their shell initialization than set a few aliases and variables so it's not an issue for them, but fixing it for myself is far more work than worth it. It's too bad, everything else works well for me with mosh.

</comment><comment><USER19> Was thinking before opening the link.. do we really need a replacement for SSH?

> supports intermittent connectivity

That's all you need to say really..!

<comment><USER20> Screen deals with intermittent connections just fine. I still don't see the need.

<comment><USER21> I don't think you've ever actually been on a bad connection. mosh has saved my ass more than once when I've been stuck with a satellite connection in the middle of nowhere. (Try fixing a failing loadbalancer while on a transatlantic cruise, using SSH)

<comment><USER22> Why not just use Tmux or Screen?

<comment><USER21> Because even a small amount of packet loss makes SSH absolutely unusable (e.g making it completely freeze), whereas I've managed to function using mosh with around 30% packet loss.

</comment></comment></comment></comment></comment><comment><USER23> are those links becoming invalidated after 3month and auto reposted or something ? This URL must have shown up like 3 times on the front page in the past year alone

</comment><comment><USER24> How it can be replacement if it uses ssh to start daemon on server to listen on UDP port? But yes, it's great. Still not perfect, still issues with non unicode chars sometime, still some issues with rendering from time to time.

<comment><USER25> > still issues with non unicode chars sometime

What's a non-Unicode character, and where would you find one? Do you mean the crazy private use characters used to make fancy Vim status lines, or something else?

</comment></comment><comment><USER26> I actually find lack of local echo somewhat valuable. When my connection is spotty, that gives me immediate feedback about what is and is not getting through.

<comment><USER13> You get similar feedback when using mosh -- text that is echoed locally but has not yet reached the remote host is displayed with an underline. On a bad connection, you see underlined text promptly as you type, and the underline gradually disappears as the network catches up.

<comment><USER26> Ah, great!

</comment></comment></comment><comment><USER27> Mosh is nice, but "A replacement for SSH" is quite stretching it, considering it does use ssh to setup its own connection and so it depends on SSH.

It also doesn't provide most of SSH functionality, and it doesn't support IPv6 yet, whereas SSH does.

</comment><comment><USER28> Getting 403 forbidden, so have some cache:

[https://webcache.googleusercontent.com/search?q=cache:Sb3IKA...](https://webcache.googleusercontent.com/search?q=cache:Sb3IKAMHCSEJ:https://mosh.mit.edu/+&cd=1)

</comment><comment><USER29> I have been using mosh for two years now and it has greatly improved my life. It means that rather than buying a brand-new laptop, I can just connect to a $5/mo linode with an SSD and program on that.

</comment><comment><USER30> FYI to install on Kubuntu 14.04 I only needed to "sudo apt-get install mosh" to get mosh 1.2.4a.

</comment><comment><USER31> Has security review been done?

<comment><USER10> No:

      Q: Has your secure datagram protocol been audited by experts?

        No. Mosh is actively used and has been read over by security-
      minded crypto nerds who think its design is reasonable, but any
      novel datagram protocol is going to have to prove itself, and
      SSP is no exception. We use the reference implementations of
      AES-128 and OCB, and we welcome your eyes on the code. We think
      the radical simplicity of the design is an advantage, but of
      course others have thought that and have been wrong. We don't
      doubt it will (properly!) take time for the security community
      to get comfortable with mosh.

</comment></comment><comment><USER32> Still one of of my favourite tech talks. Mosh is great too.

</comment><comment><USER33> Aw, fonts - [http://imgur.com/v9E9vOY](http://imgur.com/v9E9vOY), the full stop under the P.

</comment><comment><USER34> Scrolling still not working?

<comment><USER35> And it likely won't.. at least not without giving up the ability to work over high latency/lossy connections properly.

The reason mosh shows you current-state rather than playing catch up with every byte transmitted by the terminal is very deliberate, and desired.

</comment></comment><comment><USER36> Nice repost? Posts about Mosh from 2 years ago:

[https://news.ycombinator.com/item?id=3819382](https://news.ycombinator.com/item?id=3819382) [https://news.ycombinator.com/item?id=5016745](https://news.ycombinator.com/item?id=5016745) [https://news.ycombinator.com/item?id=3871687](https://news.ycombinator.com/item?id=3871687) [https://news.ycombinator.com/item?id=3814589](https://news.ycombinator.com/item?id=3814589)

...just to name a few examples.

Mosh is awesome, but also not something new.

<comment><USER37> A few reposts are ok if the story hasn't had significant attention on HN in the last year or so: [https://news.ycombinator.com/newsfaq.html](https://news.ycombinator.com/newsfaq.html).

[https://news.ycombinator.com/item?id=6321474](https://news.ycombinator.com/item?id=6321474) was within a year, but I guess was borderline, so we'll leave the current post.

<comment><USER36> gotcha, thanks for the clarification.

Mosh continues to be awesome, and definitely deserves to be more well known. It works wonders when you have a crappy connection.

</comment></comment></comment><comment><USER38> In French, Mosh is exactly pronounced as "moche" which means ugly.

Of course, this doesn't change anything in the project interest!

<comment><USER30> In en-gb it means wild, aggressive dancing synonymous with the stage-front area dancing at a heavy-metal concert.

[http://en.wiktionary.org/wiki/mosh](http://en.wiktionary.org/wiki/mosh)</comment></comment>


Any hotel firms connection to AirBnB fiasco? - <AUTHOR>

Just saying, it would be really interesting if they facilitated a house thrashing that got very public very quick. <comment><USER2> It wouldn't be very interesting, since this sort of stuff happens to hotels all the time. Really, the only suprising thing about the incident is that Airbnb got to 2 million stays without something like this becoming publicly known.

Hotels don't have a financial interest in taking down Airbnb -- the type of customers that would use Airbnb are the type of customers who wouldn't stay at a hotel in the first place, or who would make such poor guests that they wouldn't be worth the dismal revenue they bring in.</comment>


Human Extinction by 2026? (Part 1 of 3) - <AUTHOR> https://human-wrongs-watch.net/2019/06/23/human-extinction-by-2026-part-1-of-3/ <comment><USER2> The world will heat up and Wars will be fought for those needing to move to other areas to avoid the increasing heat. We will not go extinct directly due to the heat but indirectly. The more preoccupying issue is that of the insects or lack thereof. Those are to the air breathing world as is plankton to the oceans...the basis of all food chains. Pollinators and instigators and life givers and life agitators. I mean c'mon we all saw bee story.....but don't fret, our planet will be just fine and that process which brought us about will go to work again and do the same with some other result once earth calms down from this tinkering of ours. The tectonic plates will continue to move and subduct; Mother Earth will adjust and thrive as always; and maybe, just maybe our first colonization experiment won't be on mars....</comment>


No, you are not 'running late' – you are rude and selfish - <AUTHOR> http://www.leadingcompany.com.au/managing-me/no-you-are-not-running-late-%E2%80%93-you-are-rude-and-selfish/201208162110

<comment><USER2> If you care that much, do something about it. Fire people that show up late. Refuse to patronize businesses that don't work to your schedule. Unfriend friends that show up to dinner at 8:45 instead of 7:58. It's really very simple.

As you sit alone in your apartment admiring your superior sense of right and wrong, you might consider the fact that while clocks can measure and display the time to the second, people can't. And your friends and colleagues are people, not atomic clocks.

Perhaps the unreasonable selfish person is _you_.

<comment><USER3> "Refuse to patronize businesses that don't work to your schedule."

I don't think this is a valid point. When you arrange an appointment, meeting or lunch with another party/parties/business for a specific time and duration then surely that's no longer "your schedule" but rather "our schedule" and it is the responsibility of both parties to honor that schedule, it's just polite.

I may be reading your comment wrong but I find the tone to be a little uncalled for, sneering almost. Do you really think a person wanting people around him to be timely means they have a "superior sense or right and wrong"?

And if so why? Genuinely interested.

</comment></comment><comment><USER4> > _Why do people, invited for a dinner party at 7.30pm, think it's cool to > arrive at 8.30pm? It's rude._

This varies by culture. From where I'm from, it's arriving at 7:30 that is considered rude, with 20-30 minutes being late being optimal and 1 hour is being more or less acceptable, but kinda pushing it.

<comment><USER5> That's interesting and hard to understand at the same time. In which country do you live in?

</comment></comment><comment><USER6> I'm always late for everything and I don't see what the fuss is about. FYI I'm a software engineer, in India. In software, there is a concept of a buffer period, which people learn to add to the estimates, because inevitably, things gets delayed. Maybe you need to recognize when to do this with people.

I don't know if you're some big shot CEO or someone for whom a few minutes is a loss in millions. I don't believe in living life being so worried about my time or others time. The only waste of time is doing a job and not hacking on something great. Here's a nice poem for you to sit back, take a deep breath and read.

LEISURE

What is the life, full of care we have no time to stand and stare. no time to stand beneath the boughs and stare as long as sheep or cows. No time to see, when woods we pass, where squirrels hide their nuts in grass. No time to see, in broad daylight, stream full of stars, like skies at night. No time to turn at beauty's glance, and watch her feet, how they can dance. No time to wait till her mouth can Enrich that smile her eyes began. A poor life this if, full of care, we have no time to stand and stare.

By William Henry Davies.

<comment><USER7> It's a cultural difference. I'm sure that what happens in general French office culture is totally not acceptable in India. Example: in a lot of French companies each morning co-workers tend to greet each other by shaking hands (when it's male on male) or by giving the females two kisses on the cheek (when it's male on female or two females).

The same holds for how time and appointments are viewed in Germany, the Netherlands etc; different from other places.

Note; I haven't spend much time working in France but I did experienced it first-hand there; the described behavior might just not be as prevalent nowadays as I'm assuming it is though.

<comment><USER8> It's the normal way to greet yes. And appointment time culture is different in germany and in france, where it's a little bit more relaxed.

</comment></comment></comment><comment><USER7> I haven't noticed this as strongly as the author of the article. But there are definitely cultural factors at play.

I'm Dutch and I work a lot in Germany; everyone tends to come in right on time whether it's a physical meeting or a conference call. Either that or they got hit by a bus. That's in general also the way it works in the Netherlands.

With the UK and the USA it's different; not as bad as in the article but they definitely aren't as punctual as the Germans and the Dutch.

Maybe it's because of the lack of wrist watches? I feel like I'm of a dying breed anyway since I still wear one all the time. Especially in the USA everyone just uses their phones for that.

</comment><comment><USER9> It appears to be more of a cultural thing, as I've noticed that here in North America times appear to be treated relative, whereas in Europe it was treated like a deadline in most cases.

If you're late, whatever was scheduled to happen that time would most likely be postponed or cancelled by then, unless it was a group meeting.

Plus, I personally find it also insulting, as the person arriving late clearly doesn't consider that the other person(s) put an effort into being on time as well and otherwise could've worked/stayed at home a while longer just the same.

</comment><comment><USER10> One thing to bear in mind is that "late" is fairly culturally dependant. The standard deviation for "on time" is very different in the US, France, Brazil, etc.

</comment><comment><USER11> Never met a recruiter who was as considerate of my time as I was of theirs. Interesting this one has the opposite problem.

</comment><comment><USER12> This is the third time this article has been posted to HN. See prior discussions here:

<http://news.ycombinator.com/item?id=1689274>

<http://news.ycombinator.com/item?id=5028939>

</comment><comment><USER13> Or maybe they are depressed. Best thing to do with someone who is depressed? Call them rude and selfish, of course.

</comment><comment><USER14> Mobile phones can help: If you always know exactly _where_ the other person is (not when the claim they'll get to the meeting), you can time your travel to match theirs. We really need an smartphone app for that, leveraging GPS.

<comment><USER15> It exists. It's called Glympse. <http://www.glympse.com/>

Works pretty well in my limited experience with it.

</comment></comment><comment><USER16> Yeah I can be, and that's one of my flaws. I'm only human, but I hope my good qualities outweigh my bad enough for the writer of this article to remain my dear and valued friend.

</comment><comment><USER14> Is it really getting _worse_? People have always been late.

And the post mixes business with pleasure: A staff meeting and a party are quite different things.

</comment><comment><USER17> Living in Puerto Rico would kill this man.

</comment><comment><USER18> tl;dr: rant about people who are ok to be late all the time.</comment>


StickyMojo: A contained sticky sidebar plugin for jQuery. - <AUTHOR> http://mojotech.github.com/stickymojo/

<comment><USER2> Can any UX people illuminate the modern popularity of these things? I find them very distracting, and typically unusable. When I'm scrolling down the page, the function I'm performing is consumption of content. With a sidebar there begging me to click away (or worse, display ads and social media junk), it considerably reduces my desire to perform this function. It just reminds me of the Java applets in 1996 for sidebar buttons.

<comment><USER3> I think there is value in these types of sticky sidebars when they are used in the correct way. The correct way is when the sticky sidebar is a key of some sort. Links that jump around the current article for quick jumping. However, I agree, I can't stand when sites use these for ads or social media junk.

<comment><USER2> That's an excellent point. The sidebar on railstutorial.org is quite functional, and aside from some bright social icons not very distracting. I think that is the perfect use case for a sticky sidebar, navigation or additional information related to the actual body text. I guess I just see it used more as a new sidebar, basically emulating what framesets did for us back in the 90s.

</comment></comment></comment><comment><USER4> not so sure about the "Finally" claim. been using <https://github.com/terkel/jquery-floating-widget> for a while, it also has the ability to stop floating when past a certain container's bottom edge. it's also much lighter weight.

demo: <http://terkel.jp/demo/jquery-floating-widget-plugin.html>

<comment><USER3> I'm glad you posted this. You're right, this looks much better. I'll probably use this over the OP's plugin.

</comment></comment><comment><USER5> I thought binding to window.scroll was considered bad practice without something like this [http://benalman.com/projects/jquery-throttle-debounce- plugin...](http://benalman.com/projects/jquery-throttle-debounce-plugin/)

<comment><USER6> Yes, you're quite right. There's also a light throttle snippet (function.prototype.throttle) here: <http://supplementjs.com/>

<comment><USER5> Neat, thanks for that link. I'm not a full time JS developer and I always feel like I'm a few steps behind everyone else.

</comment></comment></comment><comment><USER7> UserAgent sniffing and Graceful Degradation do not mesh.

This sniffing in particular will fail for Opera 6-8, therefore excluding perfectly capable browsers by a very shallow criterion.

The sniff serves no purpose, and is furthermore based upon a thoroughly disproved anti-pattern.

</comment><comment><USER8> That page feels extremely sluggish when scrolling... I don't think I'm ever going to use this. And yes I'm using a browser with hardware acceleration intentionally disabled to simulate slower computers.

</comment><comment><USER9> Why is there need for a plugin to do this? Why not use CSS: position: fixed?

<comment><USER5> " _The problem with a simply "fixed" positioned element is that it doesn't react well to a scroll or window resize. In many cases the sidebar will overlap elements such as the footer or content area. Generally this is not the intended effect._ "

</comment></comment><comment><USER10> Can you point me to a page, where I can see the sticky mojo?

<comment><USER11> <http://mojotech.github.com/stickymojo/>

Edit: The sidebar containing (Intro, HTML, CSS, Javascript, Download, MOJO) "sticks" to the page as your scroll down</comment></comment>


Why It Makes Sense To Start Your Company Outside of The Valley - <AUTHOR> http://grasshoppergroup.com/why-it-makes-sense-to-start-your-company-outside-of-the-valley/ <comment><USER2> Disappointed. This actually reads like an eHow article. Almost all points are trivial, and are nothing more than pitching the other side of the coin (of why you _should_ start your company in the Valley):

Indepedence? SV: Connected

Low Cost of Living? SV: Center of the Universe

Lower Wages for Top Talent? SV: Where talents are

Fewer Nearby Competitors? SV: Where the action (people/market) is

Relative Obscurity? SV: World renowned

I think the question is something most entrepreneurs in and out of the valley have thought about a lot, myself included. I personally very much like to see more action in Pittsburgh and Portland (OR). I don't think the author offers a very compelling, deep argument beyond what a content-farm author can put together in an hour or two.

</comment><comment><USER3> >Top programmers in Portland or Raleigh-Durham (where Shoeboxed.com is located) don't have as many lucrative opportunities to choose from

As a result, they may move to Silicon Valley.

<comment><USER4> That's precisely why I moved from Seattle. I don't know why I waited so long to literally double my salary (compared to five years ago).

</comment></comment><comment><USER5> The good thing about the valley is that there's a lot of talent around, investors and so on.

An average/bad entrepreneur should be able to weight the lifecost there and what you get from being in the valley... I thought this article would give me more insight about what's like to live there(and why I shouldn't), instead of giving obvious reasons.

</comment><comment><USER6> Having going through raising startup capital for our business, the availability of it here in the Valley will make me think twice about trying to start a business anywhere else. The availability and accessibility of the angel and VC community is the reason so many businesses start here.

</comment><comment><USER7> However, you will get enormously higher valuations - literally four to ten times or more - if you have the right connections in Silicon Valley. And you will get acquired more readily (very likely because of those same connections) in Silicon Valley. Until/unless companies outside the Bay Area get those same sorts of valuations - and largely they won't because the angel/VC infrastructure isn't there - it makes way more sense to move to Palo Alto.

</comment><comment><USER8> Do your pivots quietly and cheaply in Detroit or Des Moines and once you have an executable and repeatable business model, then and only then consider the Valley.

<comment><USER9> Once you've done that, you probably don't need the valley.

They Silicon Valley's days aren't over, but with the rapid growth of hacker spaces, incubators, angel groups, and other SV "services" in other areas, the need to be in SV is diminishing.

Stay where you're successful and help build your own local SV type services.

</comment></comment><comment><USER10> One reason worth mentioning is that you can often get far better internet and smartphone connectivity outside the SF bay area.

</comment><comment><USER11> You can obviously build a very successful company outside "The Valley." However, I view being in the entrepreneurial "hot spots" like having multiple founder with a technical background--it just increases your odds of success.

</comment><comment><USER12> I'll probably open mine in Pleasanton or Dublin, CA. It is 30 miles NW of Silicon Valley, give or take a few miles. Here's why:

\- Employees can get to these two cities using BART, 580, 680 or ACE trains. This allows me to make it easy for a diverse mix of employees to come work for me (tech, support, admin, mktng, research)

\- Slightly lower COL. I don't know the exact number, but housing is a bit lower here than in San Jose/Santa Clara. It's generally a reverse commute.

\- Same weather and cultural benefits that come with working in the Bay Area.

\- Very low crime rate.

</comment><comment><USER13> Isn't Groupon a Chicago company?

<comment><USER3> Yes, but they recently opened an office in Palo Alto: [http://www.businesswire.com/news/home/20101201005807/en/Grou...](http://www.businesswire.com/news/home/20101201005807/en/Groupon- Boosts-Silicon-Valley-Presence-Recruitment-Effort)

</comment></comment><comment><USER14> I agree that wages for top talent is lower outside the valley, but it's also very difficult to find that top talent.

</comment><comment><USER15> Other reasons might be the family, kids. Plus if you know what are you doing, and the money is not a problem ,there is no need to be at some location. The guys that thing tat you should move in Silicon Valley are the venture capitalists and angel investors that don't want to move their ass.</comment>


Ask HN: Psychologists in modern companies. Do many have them and if not, why? - <AUTHOR>

That's been puzzling me for some time. From the experience of being in tech industry for about 10 years, I have an impression that significant part of all "problems" teams experiencing are communication issues. Yet when I propose something like say, "You noticed that 60% of our problems are communication. Let's have a person for 'debugging' those, i.e. HR/Psychologist", people just ignore the idea as if it wasn't there. That's so wasteful in my opinion. Are other readers of HN experiencing similar situation? Do you have a person to whom you can talk about communication issues at your workplace? If yes, has it proven to be effective? Thank you. <comment><USER2> I've been working for my current company who specializes in HR software for about 6 years now and from what i see both introspectively and from our clients, most communication issues are a result of a poor corporate structure and/or culture. Having a HR person/psychologist will likely only address the symptoms rather than the problem itself. But i do totally see where you're coming from. I did a bit of side-study into psychology and it seems like business execs could benefit hugely from involving dedicated Psychologists into business decision making (including HR).</comment>


The State of Ruby and Testing - <AUTHOR> http://22ideastreet.com/blog/2011/06/02/the-state-of-ruby-and-testing/ <comment><USER2> Cool survey. I can't help but feel like pie charts are a terrible choice for portraying the information, because they imply that a respondent falls into one (and only one) category, and that all the slices add up to 100%. But I have a sneaking suspicion at least some of the people who have used 1.9.2 have also used 1.8.7 at some point. It'd be much more useful to hear the 90% of rubyists have tried 1.8.7, 85% have tried 1.9.2, etc.

Still, interesting data. I have learned that I am apparently a completely typical ruby user.

</comment><comment><USER3> The pie charts don't really make any sense. For example, a single project can use Cucumber, Capybara, and RSpec, or none of them, or any combination. But in the article and its graphs they are presented as mutually exclusive options.

Separating the results into exclusive types (testing framework, browser integration framework, assertion macros, etc) would make a lot more sense. Or asking what tool is being used for a particular task (unit testing, integration testing, mocking/stubbing, assertion macros, etc).

<comment><USER4> So for all projects that use a combination of tools (the vast majority of projects I would guess), the collected data is invalid. That's too bad.

<comment><USER5> It might not make numerical sense, but it still communicates its intention.

</comment></comment></comment><comment><USER6> Thanks rauljara and automach. I agree that the pie charts were probably not the best way to represent the data that was gathered. The questions could all take multiple answers, and I just summed the results to figure out how big of a piece of the pie each section would get. I made a quick edit to the post to clarify this. Thanks for taking the time to write that up, would appreciate any tips on how to better represent multiple answers per person per question.

<comment><USER7> The colors are very hard to differentiate with the larger datasets, such as the 2 testing frameworks charts.

<comment><USER6> True. I would like to have used a nice JS library or something so you could drill down better. Putting numbers on the charts would have been nice to get a sense of the actual sizes (especially on the ones with very small slivers.) Will keep this in mind for next time!

</comment></comment></comment><comment><USER8> Interesting survey but with some flaws. Ruby seems to be reduced to "Rails" and "web". While this certainly is the majority of code being written, it's still by far not the only code. Testing a library with capybara or selenium is just not possible. What about components and projects not using rails such as stand-alone daemons not even speaking http?

</comment><comment><USER9> Nice survey but considering the limited data-set I'm not sure that's it's worth much.

Nice looking blog too.</comment>


Andrew Chen: "Facebook app users are potentially worth about 1% of what users on your website are worth" - <AUTHOR> http://www.insidefacebook.com/2007/06/24/vc-perspectives-on-the-facebook-platform-andrew-chen-mdv-eir/ <comment><USER2> I just don't see how getting users on facebook actually HURTS you. I can see how it might not help you, but not how it hurts you. ILike has apparently lost visitors to the main site... I guess that makes sense if there is nothing more to do on the main site than in the F8 app.

</comment><comment><USER3> This article assumes that your Facebook app is designed to bring in advertising revenue. I think many Facebook apps are designed to acquire users and direct them to their main site.

<comment><USER4> I don't think that's working very well (so far anyway). Most F8 app sites have experienced a significant drop in visitors, not a rise (look into iLike). I think that Andrew is on to something and that you should cultivate the social net on your own site and not give up so easily. Slow organic growth of your own property is more desirable than quick widget rise numbers on someone else's platform. Problem with F8 is that you don't own the relationship with the customer and you won't be able to monetize that relationship as easily. I'd give organic growth a try first and if that fails, go with F8... you have nothing to lose then.</comment></comment>


Show HN: Python library for keyboard hooks and macros - <AUTHOR> https://github.com/boppreh/keyboard <comment><USER2> Really nice work! I haven't had the chance to check it out, by as a DotA player from the W3C era, I used to use AutoHotkey (AHK) a lot and your library and AHK seem to have an overlap. What does this library have that AHK does not, and what are its weaknesses compared to the other?

</comment><comment><USER3> > To avoid depending on X the Linux parts reads raw device files > (/dev/input/input*) but this requries root.

Does that mean you can use it on the virtual terminal screens? If so, that's pretty cool.

</comment><comment><USER4> Cool :)

Any plan for OSX support in the future?</comment>


Ask HN: Experiences of employees in companies that have been acquired? - <AUTHOR>

Can those who have been employed at startups that were acquired by larger companies shed some light on there experiences at the new company?
My company was acquired by Google a year ago and while on paper I am deemed a Google employee I wouldn't actually classify myself as one. I would say that I am still a sysadmin for a (dieing) startup but with better perks.
Anyone else in a similar situation? <comment><USER2> My previous^2 job was similar. At first everything stayed the same, then slowly the culture started to shift. Outlook was mandated, some perks went away, the best people started leaving. I left around a year later; the work was still mostly the same, but the culture was a lot more "big company", and there were cumbersome procedures around more things (e.g. timesheets).

Hopefully google will be a shift for the better rather than worse, but I'd keep an eye on your options.</comment>


Lose Your Fear and Make More Money - <AUTHOR> http://nightstalkergames.wordpress.com/articles/rejection-therapy-how-to-lose-your-fear/

<comment><USER2> I really like the idea of this game, but I like for ideas to try a new way to get rejected everyday that aren't purposely outlandish. This comment has some good ideas on what you can do to potentially get rejected: <http://news.ycombinator.com/item?id=1755561>

</comment><comment><USER3> Holy snowflakes batman!</comment>


Seam carving - <AUTHOR> https://en.wikipedia.org/wiki/Seam_carving <comment><USER2> Implementation in Javascript - [https://github.com/nparashuram/seamcarving](https://github.com/nparashuram/seamcarving)

Demo - [http://nparashuram.com/seamcarving/](http://nparashuram.com/seamcarving/)

</comment><comment><USER3> Seam carving also has lots of other applications. One thing I found it very useful for was separating letters before running OCR on the individual letters. I was writing a web scraper that needed to get past a captcha and it first isolated the letters using "seam finding", and then ran them through a neural network.

So much faster than haar-cascading.

</comment><comment><USER4> This is how Adobe's Context-Aware Scaling works:

[https://helpx.adobe.com/photoshop/using/content-aware- scalin...](https://helpx.adobe.com/photoshop/using/content-aware-scaling.html)

They also utilise it for context-aware fill.</comment>


FreeBSD 10.3 officially supported on Microsoft Azure - <AUTHOR> https://azure.microsoft.com/en-us/marketplace/partners/microsoft/freebsd103/ <comment><USER3> Let me explain what recently happened while testing Azure RemoteApp.

I was put in charge in comparing RemoteApp to our Citrix cluster, feature compatibility, and cost. Now, I'm part of a university so that's "negotiated". We're also part of I2, so data ingress/egress should be free as per our site contract. (Yeah, it amounted to $5, but we were billed for it against our current enterprise agreement).

I worked with a MS Engineer to set everything up. I set cost limits to kill service if we go over $200 (past the free trial).... Well guess what? They only give emails, not kill service. Your account will still accrue no matter what. The engineer said that it could kill service. So, I had limits set to 'alert me'.

Until 2 months ago. They switched what was the Beta Portal to the main portal. Doing this eliminated even my alerts I had. The account accrued around $2800, with NO emails, No alerts, and NO questionable billing calls regarding 'non- normal computing practices'.

I'm finishing up a paper and a post-mortem regarding this incident. Obviously my university can absorb this, but the points stand:

1\. There is no adequate way of controlling your bill

2\. Billing calculations are done with many hours of lag-time. You don't know the zinger you just got until later.

3\. There is __NO __fraud policy... Unless you count "Too Fucking Bad" as the policy.

<comment><USER4> Did you try contacting them and asking for a refund? What did they say?

<comment><USER3> Oh yeah. I did that. 1 time through our executive agreement. That one was unresolved and marked as resolved.

I then called again, promised that it would be taken care of. It was ignored after the 3rd email.

I called again, and was given someone so daft that, even when requesting a manager, he refused. That incident went nowhere.

I'm now on the 4th ticket. I _might_ be getting somewhere... But again, they refuse to return calls and emails.

</comment></comment></comment><comment><USER5> FreeBSD is getting a lot of love recently. That's awesome.

<comment><USER6> Some of it it's a reaction to systemd hate.

<comment><USER7> Didn't Hubbard give a talk where he likes some of the design decisions from systemd and wants to adopt them?

<comment><USER8> A more likely contender is Nosh. It's additionallyy inspired by SMF and systemd and can import systemd's unit files. it also works on BSD and Linux.

<comment><USER9> > can import systemd's unit files

That's actually pretty neat. I don't have any real complaints about systemd, but every alternative I've looked at is more painful to use for service management. No longer having to hack together init scripts has been wonderful for me, it took a 10 line unit file to get YouTrack configured as a proper service on my CentOS 7 VM - I used to run JetBrains teamware products on Windows just because dealing with custom init scripts was such a pain in the ass.

<comment><USER10> > _it took a 10 line unit file to get YouTrack configured as a proper service > on my CentOS 7 VM_

If you did it the way that other people have done it, wrapping _youtrack.sh start_ and _youtrack.sh stop_ in a systemd service unit, with a sprinkling of erroneous _Type=forking_ to get around the fact that that ends up running the Java process as a quickly orphaned grandchild of where systemd expects the daemon to be, and with log output explicitly redirected away from where service management could handle it into an ever-growing private log file under /usr ... then you have entered systemd House of Horror territory. "proper" is not really the word.

* [http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/sy...](http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/systemd-house-of-horror/)

* [http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/sy...](http://homepage.ntlworld.com./jonathan.deboynepollard/FGA/systemd-house-of-horror/tomcat.html)

<comment><USER9> I initially tried the Type=forking method, but systemd kept yelling at me (as it should have) because it doesn't really fork correctly. I actually just run the service in simple mode with a launcher script that contains this abomination of a command:

/opt/jetbrains/youtrack/internal/java/linux-x64/jre/bin/java -Dlauncher.app.home=/opt/jetbrains/youtrack/ -Djl.service=YouTrack -Djl.home=/opt/jetbrains/youtrack -ea -XX:+HeapDumpOnOutOfmoryError -XX:HeapDumpPath=logs -XX:ErrorFile=logs/hs_err_pid%p.log -Dfile.encoding=UTF-8 -XX:MaxMetaspaceSize=250m -Xmx1024m -Dorg.eclipse.jetty.server.Request.maxFormContentSize=5000000 -Dorg.eclipse.jetty.server.Request.maxFormKeys=10000 -Djetbrains.jetpass.admin.name=default_admin_name -jar launcher/lib/app- wrapper/app-wrapper.jar AppStarter com.jetbrains.bundle.bootstrap.Bundle

<comment><USER10> Just remember to do things the daemontools way, and chain to the final daemon binary from that script with the shell's exec command, and systemd should be happy.

Contrast:

* [https://plone.lucidsolutions.co.nz/software-development/issu...](https://plone.lucidsolutions.co.nz/software-development/issue-tracking/youtrack/youtrack-v6.5-on-centos-7.1-as-a-zip-install)

And the redirection to $LOG and Poor Man's Daemon Supervisor in some people's youtrack.sh:

* [https://www.howtoforge.com/running-youtrack-issue-and-projec...](https://www.howtoforge.com/running-youtrack-issue-and-project-tracking-tool-on-nginx-debian-wheezy)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> ha, funnily just one day before code freeze of freebsd 11 :) nevertheless it's great that freebsd is getting more attention these days.

</comment><comment><USER12> Blog post from yesterday about the release: [https://azure.microsoft.com/en- us/blog/freebsd-now-available...](https://azure.microsoft.com/en- us/blog/freebsd-now-available-in-azure-marketplace/)

</comment><comment><USER13> I expected a new version of Microsoft Xenix since the 80's ;-)

</comment><comment><USER14> And yet they sadly still do not accept prepaid credit cards. :(

<comment><USER3> Yeah, you know why, right?

So they can screw you over with "Unknown until later" bills, complete lack of being able to control your funds and services, and what I call "Comcast Bills" (AKA: pay what we tell you and GTFO).

Just read my previous comment (or the top one of this story). Doesn't even matter if you're an enterprise with a site license of 150k people.

<comment><USER15> It's actually because prepaid cards are high sources of fraud that cloud providers don't want to deal with.

</comment></comment></comment><comment><USER16> I am always a bit surprised by comments that give Microsoft a bad reputation no matter what it does.

The computer science field has always been "ruled" by ideas and philosophies, but in the end a company is a company, and the ultimate goal of a company is to make money.

It isn't weird or evil that Microsoft is trying to make money using whatever mean it can use.

By the way, it's crystal clear that a considerable Microsoft is pivoting to become a cloud provider and in that sense the most obvious thing to do is to provide developers with all of the tools they might need.

Kudos to Microsoft for being able to perform such a direction change.

Plus consider that competition usually means lower prices for customers.. We should be happy that new players are diving into the cloud business.

<comment><USER17> Well, I don't know your age but a lot of us grew up during the 1990s and early 2000s and experienced Microsoft's bully behavior first hand while we were trying to make Linux[1], Free Software and Open Source more popular.

That kind of trust is hard to win back.

It may be childish but I've been enjoying Microsoft's fade into irrelevance the last decade.

[1] Amongst other OSes.

<comment><USER18> How exactly has Microsoft "faded into irrelevance"?

Various versions of Windows are used on probably 90% or more of desktops and laptops, in both home and business settings. It still sees widespread server use.

Word, Excel, PowerPoint and Outlook are widely used.

SQL Server is quite common within many enterprises.

Azure is a major player, and is seeing more and more adoption.

The porting of .NET to Linux and OS X is making Microsoft's development technologies available to a wider audience.

The Xbox brand of consoles is quite popular.

Microsoft has numerous offerings, across a range of sectors, that have huge uptake and are quite successful. I don't think that "irrelevance" is the way to describe Microsoft or their products.

<comment><USER17> Since I seem to have ruffled some feathers with my statement: compared to how dominant Microsoft used to be, they're now just one of the companies offering a certain product in many markets. This is a good thing.

"Irrelevance" was perhaps hyperbole but if you compare it to their past, well...

I'd say the only product they have left where one doesn't have much of a choice (in business mostly) but to use it is the Office line and even that is debatable nowadays.

So while many businesses would trade with Microsoft's position in a blink, they are not the unavoidable powerhouse they used to be.

<comment><USER19> If you engage with corporate America at all, you'll find that Microsoft is not only relevant, but immutably ingrained into the DNA of the company. Office, SharePoint and SQL Server are not to be trifled with in corporate America - <USER2> not make the mistake of discounting their relevance or significance in how work gets done in the VAST majority of companies with >1,000 employees here.

<comment><USER13> > Microsoft is not only relevant, but immutably ingrained into the DNA of the > company.

For the current generation, perhaps. There was a time Microsoft reigned pretty much alone, where there were no other viable options. During that time, Microsoft defined what a PC was and dictated what everything around one looked like.

That's not the case anymore, and it hasn't been for quite some time. Where you find Microsoft is much like where you expected IBM mainframes to be in the 90's - in high-inertia systems. It's too difficult (and, frankly, not that cost-effective) to convert your documents to other formats or to cloud-based office apps. What you gain from it is not enough. It's too difficult to move your AD users. It's too difficult to port your apps to use other databases after you fell for writing stored procedures in TSQL for everything.

Mainframes are not dead yet and will stay around for a while. Microsoft will stay around for some time too, but it will never again dictate what a computer is.

After all, if you look at a chicken really close, you'll realize dinosaurs are still around too.

</comment></comment></comment></comment></comment></comment><comment><USER20> Microsoft is becoming a corporation of goodness? (Windows Subsystem for Linux, now that)

<comment><USER21> Yeah if you forget on purpose they act as patent trolls at the same time with Android, and try to make every file format incompatible with the previous versions just to ensure you keep being locked in in their products. And keeping a monopoly on PCs by having Windows installed by default everywhere. Oh, and the forced windows 10 upgrade. Is that all good for you?

<comment><USER22> Forced free upgrade.

You don't want to know how much money they are losing with it, all because they want a shift to a newer OS. Which makes their platform more future proof..

Yes, it's forced, no doubt. But if i were Windows, i'd rather have a lot of people a free upgrade ( and unknowing users forcing to upgrade), then leaving everyone in the Windows Vista erra :)

<comment><USER23> They are not losing any money, because Windows 10 is undoubtedly adware. It's "free" because _you_ are the product, and they don't even try to hide this fact:

[https://news.ycombinator.com/item?id=10053622](https://news.ycombinator.com/item?id=10053622) (a default install of Win10 communicates with third-party domains of well- known ad-serving/analytics/tracking companies.)

[https://news.ycombinator.com/item?id=9976298](https://news.ycombinator.com/item?id=9976298)

[https://news.ycombinator.com/item?id=10053352](https://news.ycombinator.com/item?id=10053352)

[http://betanews.com/2015/10/15/microsoft-now-uses- windows-10...](http://betanews.com/2015/10/15/microsoft-now-uses- windows-10s-start-menu-to-display-ads/)

[http://www.extremetech.com/computing/204595-lock-screen- ads-...](http://www.extremetech.com/computing/204595-lock-screen-ads-on- windows-10-bring-us-closer-to-a-nightmarish-capitalist-dystopia)

<comment><USER24> They aren't losing much money because most Windows sales are OEM sales. I recommend that you read this: [https://hal2020.com/2013/03/07/what-if- microsoft-had-done-wi...](https://hal2020.com/2013/03/07/what-if-microsoft- had-done-windows-8-differently/)

</comment></comment></comment></comment></comment><comment><USER25> Wow!

Legal Terms

© 2016 Microsoft. All rights reserved.

<comment><USER10> ... followed by the full text of the FreeBSD Licence.

<comment><USER26> And? Still blatant copyright infringement:

      "THIS SOFTWARE IS PROVIDED BY MICROSOFT 'AS IS'..."

One of the purposes of the BSD license is to give the original authors credit!

<comment><USER27> Microsoft is distributing a VM image of FreeBSD through their marketplace in binary format, that has been modified to be used on their cloud service. The license they choose to distribute it under is completely harmless, and you're still sure to find the FreeBSD licence details inside the OS itself once it's running.

There's no copyright issue here. Look at how literally any other VM image is distributed, on Amazon, GCS, Digital Ocean...</comment></comment></comment></comment>


How I Learned to Rely on My Own Memory - <AUTHOR> http://lifehacker.com/5971452/how-i-learned-to-rely-on-my-own-memory-and-stop-depending-on-technology <comment><USER2> This article is really helpful. One of the statements at the end talks about starting to work on a problem or idea immediately if it is possible(vs jotting it down). What is bizarre is that sometimes NOT staying focused on a specific task list yields extraordinary results.</comment>


Customer churn can kill your startup - <AUTHOR> http://tomblomfield.com/post/81105143223/customer-churn-can-kill-your-startup

<comment><USER2> From what I've seen, low churn businesses tend to have 1 or more of the following characteristics:

1\. Network effects: Your product is a key (or highly integrated) part of an industry's value chain.

2\. Process lock-in: Your product is a key (or highly integrated) part of your customer's work flow/process.

3\. High ROI and/or Low Cost of Ownership for the Customer: Use of your product generates compelling economics for the customer.

4\. Behavioral lock-in: The network effects are eroding, the work flow is changing, and the ROI is shrinking, but the customer still uses your product out of habit/familiarity/convenience/culture/loyalty/etc.

</comment><comment><USER3> Great article. Validates the point that it is super important to rather have a few users who love your product in the early days. Massive churn rate in addition to killing startups can also impact more established companies. For example, Zillow has been having over 30% churn rate annually. But at the same time they have been able to acquire new customers to keep the momentum going. More than 10% of total realtors in the US have subscribed to Zillow's premier agent program at some point. Needless to say only startup are not prone to underestimating churn rate. Zillow's stock price doubled in last one year as their revenues "grew." But I suspect they are soon going to hit the glass ceiling with this high of a churn rate.

<comment><USER4> I definitely think loyalty is key. Proving yourself in those first few months is going to determine (for the most part) your success as the company grows and gains more popularity.

</comment></comment><comment><USER5> This is a really interesting article. The graphs really illustrate the differences.

I always had a problem with Groupon's model, but I couldn't explain it as well as the author did.

I think people often lose sight of the most important part of a business, that your customers really enjoy and like it, this makes sure they stick around.

Groupon's problem is that no one really gets a lot of value out of it. The businesses that use Groupon often don't see the customers returning and they usually lose money from the Groupon promotion.

Even people who use Groupon often complain that the business can't handle the massive rush that Groupon causes, so they usually have a subpar experience when they actually try to use the discount.

Groupon is only really good for one party, Groupon. Everyone else is left with a bad taste in their mouths.

</comment><comment><USER6> This was a super interesting article, Tom. The two graphs you have really tell a clear story, and I really enjoyed how you laid out different strategies for different market types. This makes it very obvious what customer acquisition levers you're talking about, as well as what happens when you pull on them. I've been very impressed with your writing, between stuff like this and the Grouper Rails Missing Parts series. Please keep it up!

<comment><USER7> I really enjoyed this piece as well. The two graphs are exceptional in providing clarity.

I'd be interested in knowing what he used to create these graphs, and if they have a special name.

<comment><AUTHOR> Thanks for reading.

It's a form of cohort analysis, and I've heard the graphs called "Cohort Revenue".

It's pretty simple to construct - you can download the Excel file I used at [http://www.filedropper.com/churn](http://www.filedropper.com/churn)

<comment><USER8> I really love this chart as well because it seems to convey the evolution quite naturally - I will implement a version for my payment provider. Thanks for sharing!

EDIT: I downloaded the cohort data for my SaaS from Recurly and injected all this into a google spreadsheets. With maybe 10 minutes of work I had my data, and it's pretty good. Thanks again :-)

</comment></comment></comment></comment><comment><USER9> The article states that some startups succeed because "they've found some viral loop, the crack cocaine of startup-land". My question is whether these things actually exist? The only kind of business I can think of where something like this really applies is media-styled companies aimed at young people. But this type of company doesn't really seem to be the kind of company the article is talking about. I can't think of any business-to-business companies (as 'upselling' implies) that have any kind of viral loop, so it seems to me that the article conflates high-growth media-companies with high- revenue business-companies, and then argues against a hypothetical business company working on user acquisition as if it were a media company.

Am I wrong here? Is there some sort of viral concept for business-to-business companies?

EDIT: Just to clarify what I mean by the fuzzily defined term 'media companies', I mean companies whose product is in one of the low/no fee media spaces, like social media or digital media.

<comment><AUTHOR> Whatever kind of company you run, dig below the top-line growth numbers. Look into churn and revenue by cohort.

There are b2b companies with very high churn (Groupon's merchant acquisition is arguably an example) and those with very low churn (Stripe, GoCardless).

As an aside, there are some b2b companies with a pretty high viral coefficient. B2B invoicing platforms are a good example - a business might bring all of its suppliers/customers onto a platform. This is basically Tradeshift's strategy.

<comment><USER9> Thanks for that information, that's interesting. Either way, I thought it was an interesting article, and it was well written too. I also agree with the core point that growth without retention is meaningless. I suppose I just take issue with the term 'viral' here, although your point stands even with business-to-business: if you've had a sudden influx of customers, then you'll need to fight to keep them rather than just considering them an unchanging constant of your business forevermore.

</comment></comment></comment><comment><USER10> This article is true for any business with paying customers.

A great way to see how you can reduce customer churn and increase customer loyalty is actually asking if your customers would recommend your business to a friend or colleague. Since word of mouth is very valuable, knowing where you rank on a scale of 0-10 can be insightful in understanding how to improve your business.

One system to manage such engagement is called Net Promoter Score ([http://en.wikipedia.org/wiki/Net_Promoter](http://en.wikipedia.org/wiki/Net_Promoter)).

Note: I work for Promoter.io which provides a service to do this.

<comment><USER8> I think you are kind of firing a promotion bullet for nothing here: you should definitely explain what NPS stands for, otherwise you're losing people.

<comment><USER10> Yes, you are right. I wish the article had more ways to tackle reducing churn. I know one way is to engage your customers to see if they would actually recommend your business to friends/colleague's.

I amended my comment to better explain my position.

<comment><USER8> My favorite way is to measure my customer's engagement then work at increasing it.

</comment></comment></comment></comment><comment><USER11> I think he stole those graphs (or at least got the inspiration to them) from Phil Libin at Evernote: [https://vimeo.com/11932184](https://vimeo.com/11932184) @13:25.

<comment><AUTHOR> I'm not claiming to have invented these graphs - they've been around for a while!

They featured pretty prominently in every investor pitch deck we wrote at GoCardless.

</comment></comment><comment><USER12> Summary: \- If you chase your customers away, it's bad for business \- You can chain them to your business using anti-competitive tactics

Is it just me or is it just a myth of the startup world that a good product is a sensible idea for businesses?

For some reason, many business people seem to take a bad (or at least nondifferentiating) product as the default assumption. Maybe because that's where you need them the most, and companies creating good products are most in need of good engineering talent.

</comment><comment><USER13> Everything can kill your startup

</comment><comment><USER4> It's interesting to read about all these statistics and metrics and to think about Groupon's strategy in customer acquisition and retention. I heard about a startup that is focusing on the social side of acquisition and retention a lot more than just pushing out deals. It's pretty interesting; I'd like to hear what you all think. www.spendingkarma.com

</comment><comment><USER14> A few tell-tale signs that a B2B company may be dying from churn:

1\. A homepage which seems over-optimized for new customer signup ("how do I get past this splash screen?") versus supporting existing customers

2\. An over-emphasis on committing to a year/over-generous discount for an annual commitment

3\. An extremely short trial period

<comment><USER15> Define short trial period. <14 days?

</comment></comment><comment><USER16> Who'd have thought that retaining customers is important to a business?

<comment><USER17> _Lots_ of startups that are funded make these mistakes.

They fail to account for cost-of-acquisition vs life time customer value because the VC money keeps the snowball rolling forward fast enough that they think they're doing it by themselves. As soon as you shut off the marketing the whole thing crashes straight into the ground because of churn.

Modeling churn is a very important activity and modeling it correctly allows you to decide whether your ugly duckling is really a swan or actually just an ugly duckling.

What I do come across is that such insights are not welcome and that they make you an 'unbeliever'.

<comment><USER16> Hmmm, having worked for and run many non-tech based small businesses I guess I took it for granted that repeat customers and customer retention is important. Maybe the difference in insights is due to seeing the customers face to face.

Funny little culture this 'tech startup' culture...</comment></comment></comment>