The Costs of Running a Support Team in the Bay Area - <AUTHOR> http://www.peopledelight.com/costs-customer-support-bay-area/ <comment><USER3> People Delight sells outsourced (mostly) offshore customer support, so the source is only a _little_ biased.

Though having direct experience with this, these numbers are pretty good. Few places will need a dedicated VP/Director level for a 6 person team though, and if they did, that would apply to outsourced teams as well.

<comment><USER4> In other words, part of the problem. The coders get all the perks, the free sodas, stock options, the high salaries, etc. The front line employees get a commute from Stockton and an opportunity for an extra dollar an hour wage next year, unless there's a wage freeze.

<comment><USER5> Supply and demand! Software engineers are much harder to find than support staff.

They also bear a lot more of the burden than a front-line support person, as the problems they solve are much more complicated, and need to fit in with competing interests beyond one customer's single support request.

<comment><USER6> > They also bear a lot more of the burden than a front-line support person

I'm not sure about that part. The amount of abuse those people have to withstand without being allowed to defend themselves (because "it's a customer, be nice!") can break even the calmest person.

<comment><USER7> Yes, it is a rare kind of person who can be good at being front-line support for very long. Especially for one of those outsourced-support outfits that isn't actually allowed to help the customer.

I kinda kid about the last part, but even when it's internal, being front-line support is brutal, especially for low-value products. The customer knows they can usually get free stuff by being mean, and it's the front line support rep who has to deal with that, almost always without the power to fire the customer. Half the time, they have to deal with corporate policies that are set in place really to get rid of customers who actually use support, but that don't want to admit this obvious fact. This requires an ungodly amount of patience.

That was one of the reasons why I think doing support for your own company is so much easier; you can actually say "Hey, uh, I don't think we can help you, how about I give you your money back and you go talk to a competitor?" you don't have to pretend to be ineffective until they leave on their own, which is essentially what the corporate policies are setup to do. It's soul crushing.

(I mean, developers get paid more because businesses notice when their developers can't develop; businesses seem to be largely okay with ineffective customer support. I suspect you would have to come within 70-80% of a developer salary if you actually wanted to keep effective customer support people. If you look at very high dollar products where support people are expected to actually help customers solve problems? they pay in that range; sometimes better. )

<comment><USER8> Amen. The sheer stupidity of running a low value unempowered astroturfing support org to isolate your developers from listening to customers is matched only by the frequency with which it seems to be done.

</comment></comment></comment></comment></comment></comment><comment><USER9> It's weird that $15-18/hour is considered pricey, when you could get 3-4 support staff per run-of-the-mill SF developer salary.

"All I want is someone who has the social skills to talk to clients, technical skills to be familiar with the stack, and the nous to troubleshoot issues based on the partial info that clients provide!"

Support sucks. You get the short end of the stick from _everyone_ \- clients, management, developers - and there's little in the way of benefits for doing so. No wonder there's a high turnover in the field.

<comment><USER10> If they're expecting actual technical support staff (people who have a technical ability as well as client facing abilities) to work for 15-18/hr they're insane. Again outsourcing that sort of support is equally difficult for the same reasons outsourcing engineering is difficult with the added bonus they need to be effective communicators, generally in english.

<comment><USER11> You're right, I've seen the type of Orgs in SF where 15-18/hr is the base wage and it's not healthy (for the organization or the people who are working there).

For the most part, I've seen that the type of Orgs with those support wages are likely just trying to throw bodies at support volume. $16/hr for another human to answer X amount of tickets with a Y% satisfaction over Z amount of time. Their customer base is probably B2C or B2B with a large SMB base.

The model is bound to fail, particularly for communication reasons. The type of Org that employs this position is also likely to not have the product feedback loops that connect Support (reactive) with the Product/Eng teams (proactive...hopeuflly). This means product is not addressing bugs quickly or fixing usability issues that support agents frequently work around and explain to frustrated users. It also means they likely don't have adequate internal tooling to solve problems in real-time.

It's a form of technical debt that is REALLY hard to measure - I believe this is because there's too much focus on "standard" support metrics like NPS, FRT, # of touches... Yes these are important, but they are surface level stats for maintaining a basic, "good" support experience. Great support experiences require tighter integration with other teams with better data.

There's no one right answer, but likely a spectrum of options that need to be analyzed for which works best for you. \- Have an international customer base? Maybe outsourcing could be a great option to keep costs low and cover more timezones \- Not interested in outsourcing? Stay in the US and build a new office with talent outside the Bay Area (check out Lyft's Nashville office) \- Do you absolutely need Support to be in HQ? Make the commitment to higher wages and staying lean and effective, not just as a Support team but as 1 company together.

<comment><AUTHOR> I would also draw a distinction between B2B businesses with Customer Success needs and B2C businesses. Perhaps I should modify the blog post to reflect the assumption that this is basic question-answering support, rather than technical support.

</comment></comment></comment></comment><comment><USER12> I don't think that teams with only six people are that interesting. In terms of cost, it really does start to matter when your employing 100+ support teams, where the skills required may be somewhat limited.

One of my previous employers is a large telco, with two locations, one in Copenhagen and one in the other end of the country. When I left, the plan was to close down the entire support team in Copenhagen and move those tasks to the other office. The benefit was/is that you can pay people a little less, while still leaving them with a better work-life balance, due to lower rent and shorter commutes. As a bonus the "office" space is much cheaper.

There's a huge benefit to place things like support teams in more rural areas of a country. You'll have an easier time hiring and retaining and the cost goes down. Companies, especially in the English speaking countries, just take it one step to fare and move the job out of the country. Sure it's cheaper, but you'll lack the cultural understanding that your customers will expect. Also you do need developers, sales staff and so on to actually be on site with the support teams once in a while. Having to travel abroad or even more than a few hours really hinder that interaction.

<comment><USER8> The other thing that comes with moving jobs into more rural / less competitive markets is lower turnover.

Preface: I know some support rock stars and have nothing but respect for the amount of crap they have to put up with above and beyond software engineers, but from a salary perspective there are better things they could be doing. A lot of which, doing support for long will train them for. Yet those those are the exact people you want to keep in your support org.

</comment></comment><comment><USER13> Customer support for every company is going to be different; there just isn't a formula. Some companies can utilize more automation because the types of questions fielded are going to be very similar (e.g. "where's my package?" or "how come there's a flashing red light?"). A team of 8 just about anywhere can scale to fairly high volumes.

But since we're talking about the Bay Area, and it sounds like specifically for a technically focused company (I'm thinking startup) the good news is that the core team is likely already fielding support because talking to customers is so important to the growth and direction of the product. Yes Bay Area salaries are high, but hopefully you're hiring high quality team members that are more than just front-line support -- they should be an invaluable part of your product and customer development process. You can't really put an outsourcing price tag on that.

Lots of companies have a process where the developers are insulated from day- to-day support roles -- and if that's working, great. But, the best companies have developers who want to talk directly to (or at least have support access to) customers and understand their problems first hand. This is where the high salaries more than pay for themselves.

<comment><AUTHOR> I definitely don't think it makes sense for early stage startups to work with a vendor - there is too much iteration happening during the search for PMF. Where we see it start to make sense is when the company is hitting acceleration. At that point it doesn't scale to do side-by-sides for training. It becomes necessary to manage large number of high-turnover employees and become really good at hiring and training them. It's really specialized. Most tech companies that have scaled - Uber, Amazon, Google etc etc use outside providers. Which isn't to say that even when we get brought in (usually at around the 6 person mark in the blog post) that we don't spend a TON of time making sure that the communication between the front line agents and product/engineering isn't really good.

</comment></comment><comment><USER14> I run PartnerHero, and we only work with startups (many are name-brands, some are tiny). There is NO WAY you would need a VP or Director level person for a team of 6, or even a team of 60 (our teams start at 2 and go up 80.) Startups are not the same as "small companies", so traditional outsourcing doesn't work. I would strongly recommend hiring outside of the Bay Area (there are state nexus issues you will have to address) and put aside all the local bias. It's not just about saving money, it's about hiring people who will be excited to work with you and represent your voice to the stakeholders who matter the most: your users. Support (operations in general) is really hard and most folks don't get the love and acknowledgment they need. If you can't afford to hire full-time, experiment with interns (paid) and part-time hires. I would look at the Southeast, Mid-West and even Idaho/Oregon/Utah as great options. As for us, we have folks in Honduras, Brazil, U.S., Japan, Spain and Serbia. Great talent (for ops) can be found in many areas, with exceptional English skills and great empathy/problem solving skills too.

</comment><comment><USER15> A lot of things cost a small fortune in Bay Area. On the other most of startups should provide exceptional support.

I believe it's hard to have exceptional support by outsourcing it remotely (unless the whole company is remote). Especially in young company, when every week a lot of things is changing. Also developers can apply changes based on support insights.

Though this might make sense for established companies, I believe initially at startup you should almost never outsource support.

<comment><USER16> In France some companies "outsource" their support out from Paris near other french cities.

The business offices price and cost of living is lower, you can have a proficient team for 1/3 of the price.

<comment><AUTHOR> This is the model a lot of startups follow here as well - "outsourcing" is a loaded term.

</comment></comment></comment><comment><USER17> Interesting read, thanks for sharing! Slightly off-topic, have you thought about making your blog more readable? There is grey text on grey background. I'm short sighted and when reading this on my computer monitor while eating lunch I had to actually print it to pdf to be able to read it conveniently. Your blog also breaks in "read mode" chrome extension that I usually use to alleviate problems with bad designs like this one.

<comment><AUTHOR> Just got up to head out to surf - this is great advice. It's a new blog - <USER2> will take your advice!

</comment></comment><comment><USER18> $15k per year (or $208/person/month) for CRM/Chat/Phone seems high, unless they mean unlimited Salesforce.com license for each user and some add-one... (which for 6-person team seems an excessive choice.)

</comment><comment><USER19> -1 for disabling zoom on mobile devices

<comment><AUTHOR> Noted! Will fix.

</comment></comment><comment><USER20> Actually (sorry late to the party) our company allows folks a great work/life balance. Not a small thing. Appreciated. Well compensated. No commute. For a person in SF that is a minimum savings of 2 hrs a day. Next enjoy team relationships. We do that through slack chat which keeps them close to engineers and other company team members, and keep those departments close to customers concerns. As for costs -- having a The entire US or global footprint to choose the most qualified talent also helps us ensure we are able to ensure the best person for our client, their customer and wage for the location of our team member - win, win, win.</comment>


Why Does Tylenol Kill Snakes? - <AUTHOR> https://www.realclearscience.com/quick_and_clear_science/2020/01/23/why_does_tylenol_kill_snakes.html <comment><USER2> So we have now an effective weapon against Python, but what about PHP, Perl or Ruby?

</comment><comment><USER3> Does anyone know if this might also effect aligators? Was thinking about the python problem in the everglades.

<comment><USER4> FTA:

"As evidenced in prior research, as little as 40 milligrams of acetaminophen can be acutely toxic to any reptile, not just snakes."</comment></comment>


HP TouchPad refuses to die, receives Android 9 Pie custom ROMs - <AUTHOR> https://liliputing.com/2019/04/hp-touchpad-refuses-to-die-receives-android-9-pie-custom-roms.html <comment><USER2> At this rate the only thing that will kill it is the shift to 64 bit only apps in the coming years.</comment>


China has gamified being an obedient citizen [video] - <AUTHOR> https://www.youtube.com/watch?v=lHcTKWiZ8sI <comment><USER2> for historical reference, this reminded me of east germany [http://www.afr.com/lifestyle/stasi-snitches-all-around- recor...](http://www.afr.com/lifestyle/stasi-snitches-all-around-records- reveal-true-extent-of-telling-on-others-20151116-gkzu44)

</comment><comment><USER3> Wonderful and scary. Inevitable I suppose.</comment>


3-D printing migrates to consumer market - <AUTHOR> http://www.boston.com/business/technology/articles/2008/09/07/figure_friendly/

<comment><USER2> Hmm, anyone want to do a 3d printing startup? email me.

<comment><USER3> I've had that on my mind for a long time (ever since I started following RepRap), so I'm seriously interested. Can you email me, since your email is not in your profile?</comment></comment>


The front page of HN almost exactly 5 years ago - <AUTHOR> http://web.archive.org/web/20071110100803/http://news.ycombinator.com/ <comment><USER3> A few notes as I read through this:

\- Passwords are _still_ just as broken now as they were then.

\- Functional programming is still widely discussed, though the focus is more on Lisp than Clojure/Haskell/etc.

\- Fourth post is the usual, somewhat sensationalist, _this commonly-accepted thing is bad!_ sort of headline that makes the rounds here every so often.

\- This post on syntax highlighting [1] reminds me of another recent one [2].

\- 37signals is there with another sage-like statement on the business.

\- Article on women in tech in slot #13.

\- Woah, is that Clo _j_ ure there in #14? And on SourceForge, even. It's come a long way since then.

\- Fears about government invasion of privacy abound.

\- Hey, MySpace! That spam "epidemic" never quite subsided, it seems.

\- Interesting mathematical discussion in slot #24. When reading the headline, I almost expected to read "stackoverflow.com" in the domain slot. Goes to show how popular that sort of post is here nowadays.

As someone who wasn't around back then, it's interesting to look back on this now and see what the site I love now was like five years ago.

[1] [http://web.archive.org/web/20071110115358/http://drinkbroken...](http://web.archive.org/web/20071110115358/http://drinkbroken.typepad.com/drink_broken/2007/11/syntax- highligh.html)

[2] <http://www.kyleisom.net/blog/2012/10/17/syntax-off/>

<comment><USER4> Discussions on functional programming--particularly Lisp and Erlang--seem much _more_ prevalent then than now. Which is really too bad: functional programming seems to have gotten significantly more awesome in the recent past.

As a simple indicator, there are only two articles about functional programming on the front page, and they're both fairly shallow, general and not current. They're also related: same author and similar subjects.

I'm sure it's just a function (heh) of HN's growing userbase and more diverse audience. Still, I really would like more functional programming stuff. I even vote on interesting FP articles on new, but it often isn't enough, especially because the new page moves fairly quickly and I don't go there _that_ often.

But yeah, ignoring the relative proportions of subjects, the front page actually seems fairly similar to the current one.

<comment><USER5> If you want to follow a particular topic in the "new" articles, you could try doing what I do - I follow the RSS feed at <http://news.ycombinator.com/rss> using Google Reader, and since the search in Google Reader results in the feed and query going in the URL, you can bookmark that search. For instance, you could bookmark [http://www.google.com/reader/view/#search/functional//feed%2...](http://www.google.com/reader/view/#search/functional//feed%2Fhttp%3A%2F%2Fnews.ycombinator.com%2Frss)

By the way, Reader has many of the same awesome keyboard shortcuts as Gmail - you can use j and k to go up and down in the list, 1/2/3 to switch views, v to open the link, etc. (Try hitting ?)

</comment></comment></comment><comment><USER6> Interesting how the articles on the HN homepage are almost timeless. Many of those articles I find just as interesting as the one's posted on today's homepage (perhaps more interesting since there's more programming and less consumer tech news).

<comment><USER7> A lot of good content is buried in archives of good blogs/news sites, and popular aggregators such as Flipboard completely ignore anything but the freshest materials. I worked on FavoritePosts.com a while back, it basically helps you discover older content that's otherwise invisible due to our existing content consumption habits. Maybe I should launch what I have so far.. It's like Prismatic for older stuff.

<comment><USER8> Yeah do it!

I've been thinking about how those who up-vote stories on HN very carefully have an enormous wealth of interesting content in the "saved stories" section their profiles. It's such a shame that this is value is locked away: Somebody could generate pages and pages of amazingly interesting content based on other people who upvote similar to themselves.

<comment><USER7> One way I used to "detect" good content was by keeping track of the amount of discussion content items generated (ie. blog comments, Reddit/HN submissions and discussion activity). There are other mechanisms including the social elements similar to how Prismatic works.

I'm currently working on a related startup that we actually applied to YC W13 with, so we'll see what happens next. The current version of FavoritePosts will require a couple of weeks before I can launch it as an MVP.

But thanks guys for the encouragement! I'll start dusting off the codebase to see exactly where I'm at.

</comment></comment></comment></comment><comment><USER9> Resolution of the MIT lawsuit: <http://tech.mit.edu/V130/N14/statasuit.html>

</comment><comment><USER10> "Innovative New Rails Host: Online IDE, Web Console, Instantly Live"

It's been five years since the launch of Heroku?

<comment><USER11> June 2007: <http://en.wikipedia.org/wiki/Heroku>

<comment><USER3> _> Heroku is owned by Salesforce.com._

Well, you learn something new every day.

<comment><USER12> I work at Heroku and sometimes forget sometimes. They're very supportive and very hands-off.

</comment></comment></comment></comment><comment><USER13> 6th item on the list --> "8 points by hhm 9 hours ago"

Wow, talk about points inflation!

<comment><USER14> Interesting that you mention that.

hhm was my previous username, but I lost its password now. Probably after switching accounts some years ago, after becoming a little paranoid about internet identity (I even sent a mail asking pg to remove that account... he was smarter than me and said he wouldn't do that; thanks pg). I now realize I shouldn't care so much about that really.

By that time, I realized that it might be easy to get into the leaderboard just by posting quality links of stuff I was interested into. I put some effort into that by some time and I reached (I think) the 10th place. I stored a screenshot about that, named something like "and-what-was-that-for.jpg" that I can't find right now. But I remember noticing a couple things about that experience:

\- how empty it was after I achieved that random objective... it was just some score, and it didn't serve any useful purpose, so once I achieved it I couldn't feel too happy about it

and the most interesting bit:

\- it was very easy to get into, say, the 20th or 15th spot. But then raising into the 10th spot was much harder. I understood that people between 15 - <USER2> weren't trying to reach that kind of score, or they weren't trying too hard. People don't compete too much. Then when approximating the 10th spot, I found that it was getting increasingly harder. I'm sure somebody trying to get into the 1st or 2nd spot would have to spend an amazing amount of work into that.

It was just a game I played for some short span of time, then I quit. Now I miss that account a little bit :)

<comment><USER15> I know that feeling all too well.

A few months ago I decided to focus on high quality comments after feeling like I was contributing to the HN noise a bit too much.

As a proxy for that, I tracked my average comment score, trying to get it above 10.

Today it's 14.93, which is quite high - only 4 of the top 100 are higher.

I think my comment quality has risen substantially, but I also subconsciously started making decisions based on score - not posting on topics that were sliding down the front page, or where there were already hundreds of comments but I did have something to say.

In short, the gamification overtook the original goal, and the tail was wagging the dog.

I've now started using a much simpler method - taking a deep breath before hitting reply, and trashing the comment if I don't think I'm adding anything to the conversation. I like this way more.

<comment><USER16> This is (I think) my fifth account here - the rest have all been hellbanned, sometimes because I deserved it, sometimes not.

The first couple of times I was banned it hurt me maybe more than one would expect. I took it personally, I thought about it deeply, I really took it as a wake-up call. I thought long and hard about what was wrong with my personality that the (IMO) best community on the web would actively act to expel me.

One of my later accounts, I acted like you're describing. I tried hard to stay "on message" and to write the kind of things I theorised HN would want to hear.

I think I snapped at one point and yelled at someone. That account is, of course, now hellbanned along with all the rest. I don't even remember the username. By the way, my first account here was either on the leaderboard or maybe a few points off. It was a long time ago.

These days I am more zen-like about the whole thing. I mostly write what I want. I do try not to be abusive - my character is flawed enough that sometimes that's what comes naturally. If I get banned, well, that's life. But I do what you say, taking a second to think about whether my comment adds something - if it doesn't, I just delete it and move on. I think that's perhaps a sign of maturity, when you're willing to throw away your own words (that you might have spent half an hour perfecting) because you recognise they're probably more destructive than constructive to the community you respect.

</comment></comment></comment></comment><comment><USER17> And that $28 mln pmarca donated to Stanford Hospital materialized in Marc and Laura Andreessen Emergency Department [http://stanfordhospital.org/clinicsmedServices/medicalServic...](http://stanfordhospital.org/clinicsmedServices/medicalServices/emergencyroom/)

Next to Lucille Packard Children's Hospital, an impressive testimony of how technology affects the lives of people in Bay Area beyond technology per se.

</comment><comment><USER18> Ahh a post by nickb. I remember making a thread a few years ago asking about what happened to him.

</comment><comment><USER19> All comments had points back then:

[http://web.archive.org/web/20071110123222/http://news.ycombi...](http://web.archive.org/web/20071110123222/http://news.ycombinator.com/item?id=77246)

So much better than no comments:

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

</comment><comment><USER20> I wonder if that person chose the baby or the startup.

<comment><USER19> I don't know about the baby, but he definitely quit his startup.

2007: [http://web.archive.org/web/20071012022938/http://www.shelfma...](http://web.archive.org/web/20071012022938/http://www.shelfmade.net/)

Now: <http://www.shelfmade.net/>

<comment><USER21> Either that or he learned Japanese

</comment></comment></comment><comment><USER22> If you like this you'll enjoy my HN Wayback newsletter: <http://waybackletter.com>

</comment><comment><USER23> Any predictions for front page headlines of Hacker News 2017? I'm going to guess we'll see stories about Lisp, women in tech, and patents. I'm going to assume those are three _separate_ articles. :)

<comment><USER24> Digression: A woman in tech successfully patented Lisp. Given the deteriorating state of patent law, I wouldn't be surprised if it is in the same article.

2017\. I would hope it will be some discussion of quantum computers. It's a topic that never ceases to amaze me.

</comment></comment><comment><USER25> Good things don't change. I guess the bugs haven't changed either, e.g. the "More" link at the bottom is still broken wrt expired link if you let HN sit for any length of time.

<comment><USER26> That did change, though; since then I've made the More link static for users who aren't logged in, which is what the Wayback Machine is showing us.

</comment></comment><comment><USER27> For anyone interested, a link to easily browse the best posts since 5 years: [http://www.hneasy.com/index.php?type=posts&hours=70000](http://www.hneasy.com/index.php?type=posts&hours=70000)

<comment><USER28> The "next 20 posts" link goes to localhost...

<comment><USER27> Thank you. It's fixed. Left and right arrow should hopefully work to browse.

</comment></comment></comment><comment><USER29> If that was the front page today, I would not have thought anything was amiss.

</comment><comment><USER30> What I like about HN is the simplicity and quality of content it has offered since so many years. I heard about HN only about a year ago and have been regularly reading it. The insights and inspiration it offers to newcomers is simply awesome.

The homepage looks just as it looked 5 years ago. That is something worth applauding. It just proves quality and simplicity always win in the longterm.

</comment><comment><USER31> So basically nothing has changed?

And here I was operating under the illusion that we were innovating...

Oh well, time to go and make a new photo uploading site.

</comment><comment><USER32> I was hoping to see at least one person showing off their HN re-design. ;)

</comment><comment><USER33> My interest is piqued by at least two articles about avoiding a co founder, and one with the sort of research behind it that would be a blog post now

</comment><comment><USER34> If anything, this shows that HN hasn't strayed very far from where it was, despite complaints to the contrary.

</comment><comment><USER35> There aren't enough political, human interest, and torrent-related stories. Must be a fake.

</comment><comment><USER36> When it was live then you only needed like 10+ upvotes to get on the front page

</comment><comment><USER37> Funny to see so many front page articles with no comments.

<comment><USER38> I remember reading Reddit before it even had support for comments!

E.g. <http://web.archive.org/web/20050809014858/http://reddit.com/>

</comment></comment><comment><USER39> congrats heroku on 5 years. you make my life easier.

</comment><comment><USER40> Wow. Looks very much like the front page today!

:)

You posted the wrong link.

</comment><comment><USER41> Wow it still looks so similar.</comment>


Trump admin. to reverse ban on elephant trophies from Africa - <AUTHOR> http://abcnews.go.com/US/trump-admin-reverse-ban-elephant-trophies-africa/story?id=51178663 <comment><USER2> it's about time</comment>


After the W3C approved DRM, it's not possible to make a functional indie browser - <AUTHOR> https://bbs.boingboing.net/t/three-years-after-the-w3c-approved-a-drm-standard-its-no-longer-possible-to-make-a-functional-indie-browser/158552 <comment><USER3> After reading the thread, I performed the following on Firefox:

\- about:preferences - Search for "drm"

      - Play DRM-controlled content - <USER2>

\- about:config - Search for "widevine"

      - media.gmp-widevinecdm.enabled Set to false

      - media.gmp-widevinecdm.visible Set to false

</comment><comment><USER4> Stupid, stupid, stupid.. design-by-corporate committee.

"Open standards" my left foot.</comment>


Dropbox and why you should invest in people - <AUTHOR> http://cdixon.posterous.com/dropbox-and-why-you-should-invest-in-people <comment><USER2> It's funny, I was reading old Joel on Software posts the other night and stumbled across this one: <http://www.joelonsoftware.com/items/2008/05/01.html>

From the essay:

 _"The hallmark of an architecture astronaut is that they don't solve an actual problem ... they solve something that appears to be the template of a lot of problems. Or at least, they try. Since 1988 many prominent architecture astronauts have been convinced that the biggest problem to solve is synchronization.

...

Jeez, we've had that forever. When did the first sync web sites start coming out? 1999? There were a million versions. xdrive, mydrive, idrive, youdrive, wealldrive for ice cream. Nobody cared then and nobody cares now, because synchronizing files is just not a killer application. I'm sorry. It seems like it should be. But it's not."_

I immediately thought of dropbox. It appears, to some degree, it _is_ a problem and some people _do_ care. Like Chris said, its the execution and people that made the difference.

<comment><USER3> Yeah, I think Joel was right and wrong.

He was right because there are architecture-astronauts who overdesign things that they don't understand yet.

He was wrong, because the mistake of architecture astronauts is not that they want to solve a template to a lots of problems. Solving a template to a lots of problems can be a huge business. Think of the personal computer. Think of MS Excel. Think of Oracle. It is just very hard to get these things right, because it is very hard to see the market for these generic products in advance. Also generic things are very technology heavy usually, so hard to convince investors. (Maybe I am just defending myself here, because I am also working on a generic application which is about helping businesspeople to access/maintain/query their data intuitively. (Like Excel just with a bit more constraints (with relational db. server backing))).

<comment><USER4> _"He was wrong, because the mistake of architecture astronauts is not that they want to solve a template to a lots of problems._ "

YES.

This idea has always bothered me: "don't solve a template of a lot of problems, solve _one problem_."

Isn't that the essence of innovation? To kill lots of birds with one stone?

The problem with "architecture astronauts" is that they _over-think_ their problem, and they spend too much time over-thinking and over-developing before they really understand the problem space. It's a problem of over-engineering and isolation, not wanting to kill more than one bird.

<comment><USER5> One issue with that is that solving a template of problems really doesn't solve anything specific.

So what you end up with is a framework that solves nothing that requires a bunch of configuration, or unnatural calls to its API(s) to get your one problem solved.

If your 1 problem took, say, 100 "units" of coding; often the framework will take 400 since it's generic. Then you have to code another 50-75 for your one problem.

Sure, the next guy also has only 50-75 to do, but too often these astronauts have no idea of the ROI of the 400, they just assume that "REUSE IS GOOD!" since that's all they've ever been taught. The ROI may never breakeven, much less get profitable.

Also, astronauts VERY often never have to dogfood what they've written, and have no idea if what they've done is actually any good, or usable.

"Before you design for reuse, make sure you've designed it for use." I'm convinced "reuse" has caused more unnecessary code than anyone imagines.

<comment><USER4> Frameworks are the wrong way to solve many problems at once. Frameworks are a disease.

An example of something that solves lots of problems at once well: a language and its compiler/interpreter.

<comment><USER6> Sometimes yes, sometimes no.

A framework makes a lot of sense for internal applications and large companies. You're often repeating a very similar application over and over (same style, same database, same replace-unwieldy-Excel/Access power user DB problem.)

A framework makes a lot of sense for consulting-ware. Deploying 20 versions of a highly customized application with a lot of reuse. As I see it, this is the use case for Spring. I can't think of another way to easily test such a system.

Frameworks make sense when you need to assemble a team together quickly to solve a problem. You are inheriting a set of best practices that allow a quicker norming phase. Frameworks make sense when you have average and junior programmers as the primary workhorses on a project. (Note: we don't have enough A-listers to solve all of the world's computing problems.)

Frameworks aren't for every problem. That doesn't make them useless.

</comment></comment></comment></comment></comment></comment><comment><USER3> This is a good post, but there is the risk of survivorship bias here. Drew Houston is a brilliant guy, but let's be honest most people only recognized his true brilliance after he became successful. (I think most people thought he is smart, but I doubt most people thought he is brilliant before his success.)

So yes, you should invest into people, but the trick is to recognize brilliance in advance. Which is brutally hard. For example recognizing technical brilliance if someone is not technical is almost impossible. I think where YC shines is not only that they try to invest into people but that they are actually quite good at recognizing brilliance. (I doubt they are perfect in this, but probably the best in the market.)

<comment><USER7> Yeah, consider this from another post from Chris in 2010:

 _Entrepreneurs should always ask themselves "why will I succeed where others failed?" If the answer is simply "I'm doing it right" or "I'm smarter," you are probably underestimating your antecedents, which were probably run by competent or even great entrepreneurs who did everything possible to succeed. Instead your answer should include an explanation about why the timing is right – about some fundamental changes in the world that enable the idea you are pursuing to finally succeed._

<http://cdixon.org/2010/11/07/timing-your-startup/>

Here Chris argues that even if he is able to recognize brilliance in advance, he wouldn't necessarily bet on them because of other external factors. So has he changed his mind in the last 5 months?

The more I read about startups, the more I feel like ignoring all advice and jfdi.

</comment></comment><comment><USER8> Ha, I passed on dropbox too, I was asked to invest in the series B and thought the valuation was too high. Learned my lesson - valuations go up for a reason.

<comment><USER9> Isn't startup investing mostly about picking the big winners and not worrying too much about what valuation you get in at?

If that's the case, wasn't your error not thinking dropbox would be a big winner?

</comment></comment><comment><USER10> Came to read about dropbox, but stayed for the dig at KP. Amazing to think that one of the top VC firms in the world were out of the game for so long.

A new generation of killer startups were created: Facebook, Zynga, GroupOn etc. and KP just watched it all go by. It would be difficult to just quantify how much $ they missed out on, but at least now they are sorta admitting their mistake and getting back into tech investing (greentech didn't really turn out to be the second coming that many thought it would be)

Unfortunately people like 'symantec middle manager' are still around.

</comment><comment><USER11> Tangent: So I'll be honest -- I was curious as to who the "jackass VC" was. After a little digging around, I think it's Ted Schlein: <http://www.kpcb.com/team/schlein>.

<comment><USER12> "Ted was the founding CEO of Fortify Software" doesn't mesh with "lifetime middle manager from Symantec who had never started a company"

<comment><USER2> But his winery seems to fit ... <http://www.schleinvineyard.com/content/family_2.php>

<comment><USER13> I bet there's quite a few successful VCs (and entrepreneurs) who own wineries

</comment></comment></comment></comment><comment><USER14> Ahh...so Fred Wilson has started the 'come-to-Jesus' moment for investors.

I guess we can now expect to see many more blog posts about missed opportunities, and lessons learned.

That being said, thanks for the post Chris.

Makes for good reading :)

<comment><USER15> Bessemer's "anti-portfolio" page is the first of the kind I've encountered, years ago: <http://www.bvp.com/portfolio/antiportfolio.aspx>

<comment><USER14> Nah I know. But I predict, just like we are seeing the 'rise of the $1B VC fund', we will likely see the rise of the 'missed opportunities' by high- profile VCs.

Wait for it in 4....3....2....

</comment></comment></comment><comment><USER16> I love dropbox. Dropbox + git is beautiful as is Dropbox + markdown (for writing).

But I don't pay for it. I'm somewhere around 5+ free gigs of which I might use around 30%. Normally if I loved a product this much which I wasn't paying for, but ought to, then I would. But I'm not stealing my account, so I don't really feel like I should pay.

On top of that, I use a different paid service for storing large amounts of files. It ends up being cheaper and I feel both solutions work best how I have them - dropbox for sharing/working and the other for offsite backups that just transparently syncs every night or something.

I guess all that to ask a question...how the heck is dropbox making money? Between the amount of free storage they give and the fact that there are much cheaper remote backup solutions, I just feel like I'm missing something.

<comment><USER17> Try to find a large popular file (a movie or mp3 file downed from the net for instance) and put it in your dropbox folder. Notice that it'll sync almost instantly. When you put a file in your dropbox they calculate a checksum and see if they already have the file somewhere. If they do they just add a pointer instead of having two copies lying around.

Since many large files are saved by a lot of people individually (movies, mp3 files, pdf manuals, etc) this saves them a lot of space. As they get more users this advantage grows.

<comment><USER18> Is this exploitable in some odd way?

What if I wanted to use Dropbox for piracy purposes (I don't, just using an easy to understand model). Could I upload a copy of Avatar.mp4, compute or find the checksum for it, and then distribute just that checksum to other users? Or distribute a file that _wasn't_ Avatar.mp4, but looked like it to the Dropbox client? Would this effectively trick the Dropbox servers into distributing the file for more, so that I could legitimately claim to not be distributing copyrighted material, but just distributing a "magic" file that caused Dropbox to give me a copyrighted file that someone else had uploaded?

<comment><USER19> _Or distribute a file that wasn't Avatar.mp4, but looked like it to the Dropbox client?_

Modern hashing algorithms make this practically impossible, sorry.

Just because you have a hash string that's not technically a copyrighted film, you could still be guilty of copyright infringement. cf. <http://ansuz.sooke.bc.ca/entry/23>

<comment><USER18> Thanks. I was using the film distribution as a simple example, but that wasn't the exact use case I had in mind.

</comment></comment></comment></comment></comment><comment><USER4> But what about great people with a really bad idea _that they are committed to?_

Seems to me that that would be a bad investment.

Also:

Be careful about your metric of great. The metric of great must be "this person is a genius with lots of energy and creativity," not "this person graduated from the right school, knows the right people, comes from the right part of the country, lives in the right zip code, etc." It must be first-hand meritocratic, not based on second-hand derivative indicators.

DropBox's founder went to MIT, but that's not what made him great. MIT is just a good school. The guy may well have been just as great if he'd gone to Ohio State or some other less-prestigious school.

<comment><USER20> I strongly agree with both of your points, at least in theory, but I will also observe that trivially and concretely verifiable derivative indicators (graduated from a "named" school) can be more practically useful than hard/impossible to quickly or concretely verify primary measures ("genuis with lots of creativity"). YC, Sequoia and other VCs are in the business of efficiently finding founders/companies to back; they are not and do not have to be in the business of increasing overall fairness in the world.

There's also the "ambitious and gets shit done" angle. IMO, like it or not, getting into and graduating from a "named" school is one indicator of precisely those two qualities.

There was a study recently that found there was a higher correlation between life outcome and where one APPLIED to college than there was to where one WENT to college. The takeaway for me was that people ambitious enough (and presumably confident enough) to apply to MIT would get similar results in aggregate to those who actually attended. I googled for a few minutes to try to find the study, but failed, so I apologize if I've mis-remembered or mis- stated the conclusions.

Disclaimer: 1993 MIT grad here, but while I greatly value my experience there, I give basically zero "extra credit" for MIT on a candidate's resume over any other school and I'd take "built dropbox" over any schooling, 8 days a week.

<comment><USER4> _"There was a study recently that found there was a higher correlation between life outcome and where one APPLIED to college than there was to where one WENT to college."_

That is very interesting. Thanks.

<comment><USER20> Had a chance to do a little more googling and found the paper: [http://economix.blogs.nytimes.com/2011/02/21/revisiting- the-...](http://economix.blogs.nytimes.com/2011/02/21/revisiting-the-value-of- elite-colleges/)

Excerpt: "Once the two economists added these new variables, the earnings difference disappeared. In fact, it went away merely by including the colleges that students had applied to - and not taking into account whether they were accepted. A student with a 1,400 SAT score who went to Penn State but applied to Penn earned as much, on average, as a student with a 1,400 who went to Penn.

"Even applying to a school, even if you get rejected, says a lot about you,""

</comment></comment></comment></comment><comment><USER21> I don't think it's an argument against Dixon's point, but I found this funny because I remember being so impressed with demo of Dropbox at the time. I remember knowing nothing about who Drew was, seeing this on HN: <http://news.ycombinator.com/item?id=8863> and thinking something along the lines of, "that's brilliant, I hope he gets funded so I can use it."

</comment><comment><USER22> Investing in people over their ideas is always advisable. But let's not forget how brilliant people can still fail. Tons of bright kids come out of MIT, Harvard, Stanford, etc... Should you blindly invest in all of them?

Instead, I prefer Mark Suster's "invest in lines, not dots" strategy. You really have to spend more time to have a better idea on whether you should invest.

In hindsight, of course Drew Houston would be a good investment.

<comment><USER23> I think he's not suggesting investing in "bright kids," but "smart and gets things done." Or "relentlessly resourceful." Smart is just one of the criteria, but he still would invest in people, not in "the idea."

</comment></comment><comment><USER24> We were in the same YC round as Dropbox and it was interesting was to observe the discrepancy between our views and the investors' views. While nobody in our class doubted the success (at whatever level) of Dropbox, it never created the same investor heat early on that many of the "trendy investments" did. I wondered about this at the time and put it down to investors' reluctancy (or inability) to spend the days it takes to actually get to know a company.

I was fortunate to get to know Dropbox a bit more than most (and less than many). We were in the same YC class and shared an office for a little while. They was voted top of our class in YC - I don't think anyone doubted they'd be the most successful company.

I don't think anyone felt that even if they were overtaken by Google Platypus or similar that they would fail either - they were doing such hard stuff and had such dedicated users it would still be a great technology acquisition. The company was a really great investment and in fact after Clickpass was acquired I asked Drew if I could invest but unluckily for me they weren't taking on any more (very) small angels.

The interesting thing was that in those very early days (post YC), the investors still weren't fighting their way into it or making the hullabaloo that you see around some of the other valley companies. Drew and Arash were never big-talking sales people, they never focussed on bells and whistles and instead just concentrated on building great product. Day in, day out they just came in, built amazing software and, starting with Aston, they slowly added other amazing developers around them. That relentless progress seemed to be something that most investors really weren't tuned into.

Investors almost never take the time to actually hang out in a company and instead rely on consecutive and very similar meetings. They never actually watch a company work (although Mike Moritz did interestingly come and hung out in their apartment in the Y-Scraper before making his investment). I always therefore feel that statements such as you should invest "in the team", "in the market" or "purely in any other one thing" are all slightly trite because what you really want to invest in is the relentless march of a product towards a market.

You can't learn that in a pitch though or from a founder's personality or even their CV - all of these are single data points and you want to measure the product trajectory. You can however get a very real feel for that by spending real time with a company, in their office. I'm sure you would get some false positives from it but in the long run it would be hard to avoid the true negatives.

Dropbox's office was _calm_ , intelligent, very productive and full of debate and fiercely intelligent employees who believed without hesitation in the product. The developers were constantly interacting with their customers through their forums and they hung out as a team after work. It was totally and utterly different to many other offices I have observed and made it very hard to imagine an outcome that would not be good. They knew the market for their product, they knew it was big and they marched relentlessly towards it.

I know lots of smart, driven, successful people whom I still wouldn't invest in but I would be very interested to know how many such teams with the kernel of a product people like, in a market that is significant and who march relentlessly towards it do not constitute a good investment.

<comment><USER25> It amazing how quickly the company seems to have developed into something with a recognition beyond the development community. I first cam across it a few years ago while working in England, and that could not have been too long after its launch. What struck me about it at the time, and this has been said more succinctly elsewhere, is how simple and elegant it was to work with - this was confirmed when even the thickest of non-techies in the office could work it out in less than a couple of minutes. Reading the comments here seems to verify my initial thoughts.

I have heard it said before that some of the best ideas are those that take complicated things and make them simple or easily understandable, and their success goes a long way to proving that point.

</comment></comment><comment><USER26> What I like about Dropbox is that it just works as expected. It's trivial and it's well polished.

Dropbox is a great lesson in how ideas don't matter and how execution is king. They had the guts to compete with a dozen other players who were trying to solve the same problem, solely based on the confidence in their execution. Investing in people having the skills to execute, the guts to compete, and the resilience to persist, clearly makes better sense than investing in just ideas.

</comment><comment><USER27> Something related which occurs to me; investing in ideas is basically premature optimisation, because great people can change ideas but average people are unlikely to spontaneously become great.

</comment><comment><USER28> Investing in people is the best kind of investment; because a business of people is always profitable. A very powerful philosophy taught by Dale Carnegie.

</comment><comment><USER29> Behind every great product is a motivated and driven team ;)

</comment><comment><USER30> The title should have been Name Dropping, why I just can't stop...

</comment><comment><USER31> There may have been number of storage sites popping up back in the days but didn't Dropbox provide something new and necessary technology to the PC? As in, don't worry about backing up your files? I don't recall even Box dot net - who was much in the tech news - provide such features.</comment>


SEC Adopts Rules to Facilitate Smaller Companies' Access to Capital - <AUTHOR> https://www.sec.gov/news/pressrelease/2015-49.html#.VRMHw0YUpFA

<comment><USER2> what qualifies someone as an affiliate of the issuer? Will this enable equity crowd funding?</comment>


Mozilla's New 'Brave' Browser can block almost anything - <AUTHOR> http://www.therevista.com/mozillas-new-brave-browser-can-block-almost-anything/ <comment><USER2> The 'Almost' part of blocking anything is because it won't block its own ads.

Apparently the goal is to become the new ad dealer in the block?

<comment><AUTHOR> Exactly!</comment></comment>


Sourceforge launches Geeknet - <AUTHOR> http://geek.net/

<comment><USER2> At first I thought this was a bad idea, given that Sourceforge is such a well- established and recognized brand. I see now it's not Sourceforge that is being renamed, but the parent company, Sourceforge, Inc.

</comment><comment><USER3> It took me a while to realize what this was about. They could have made that "Learn More" button more prominent. That said, I'm intrigued about what this will mean for SourceForge and friends.

<comment><USER4> I think that this is the more informative link: [http://geek.net/press/sourceforge-inc-changes-its-name-to- ge...](http://geek.net/press/sourceforge-inc-changes-its-name-to-geeknet-inc/)

The only 'Learn More' link that I saw looked like it was about a specific product, and not about 'what is geek.net?'

</comment></comment><comment><USER5> This is probably a good idea. Thinkgeek has been floating the parent company for a very long time now, effectively funding all of the other efforts.

</comment><comment><USER6> Wow I just found out my uni friend's dad is on sourceforge's Board of Directors. Would've never known!

</comment><comment><USER7> They did this before with OSDN, wonder if they'll have any more success this time around.

</comment><comment><USER8> Digest: "We sell various sorts of ads, on websites, that people use."

<comment><USER9> Who would've thought that VA Linux Systems would get out of the server business to become an ad company?</comment></comment>


Sci-Hub sued by American Chemical Society over cloned site - <AUTHOR> http://www.ibtimes.co.uk/sci-hub-pirate-bay-scientists-sued-by-american-chemical-society-over-cloned-site-1628782 <comment><USER2> I wonder if the legal cost to sue is being met by Elsevier? They must know they will never collect on their judgement against sci-hub and ACS must know that there is no chance of them getting a judgement that covers their legal costs so I wonder where the benefit is for them?

<comment><AUTHOR> A warning to non-russian webmasters?</comment></comment>


Macintosh Programmer's Switch  - <AUTHOR> http://www.jeffreythompson.org/blog/2012/08/22/programmers-switch/

<comment><USER2> I used to sell Macintosh computers in 1984 and I clearly remember the Programmers Switch. I haven't thought about that for many years (nearly 30 years ago). Thanks for reminding me how far we've come!

<comment><AUTHOR> Welcome! I thought it was neat.</comment></comment>


You've got an idea, what now? - <AUTHOR> http://efura.com/blog/?p=24

<comment><USER2> This is a really well-written and comprehensive article. It reminds me quite a bit of the questions the YC application pushes you to think through. I especially like the last point about competitors. What he outlines about finding others and learning from them is invaluable. There is not better, cheaper test than to analyze what already exists.

</comment><comment><USER3> I was reading the beginning and thinking "Gosh, I could really use a local business search," and it's true - I've had a terrible time with Google and Google Maps trying to do that exact thing. I want businesses of a certain type that I can walk or take the train to.</comment>


How hacking helped me become Obama's CTO - <AUTHOR> https://medium.com/backchannel/how-hacking-helped-me-become-obama-s-cto-c4895cac372e

<comment><USER2> Ah, yes. I remember it all now. There I was, just following Obama around when I heard tales of this hacker.

It was a overcast day and Obama sat alone with a group of his advisors. They were to determine whether this young, one-time CTO who showed great promise would be a good hire. As they perused the resume, one of the advisor's eyes widened and hurried over to Obama. He whispered to him, "This kid was once and still is a hacker. He's been hacking since he was 12 and damnit Prez, he even claims to have hacked his resume and job application in an hour."

Obama looked off to the distance feigning contemplation, but really trying to remember if hacker meant good, bad, or both. In his head he pondered,

"Pretty sure both, but how did something bad turn to something good? Or was it the other way around. I saw that movie Hackers. 6/10\. And wait a minute, can I go to jail for hiring a hacker?"

He smiled and looked around the room, "This kid was once a hacker. Can I go to jail for hiring an ex-hacker?" The advisors all laughed and Obama continued his serious thinking:

"Pretty sure hackers used to hack into things and so if this kid hacked our job application site in an hour, he must be pretty good at protecting from other hackers hmm... And moral move on his part telling us upfront or is it bragging? Is this what everyone does these days? Piss on your house and tell you you got a piss stain on your house? Maybe this is how the world works today. This kid is young and fresh. He knows what the people want. And if he knows how to hack, then who better to hack for than the president of the united states"

Obama finally addressed the room and confidently proclaimed "Hire him. He shall hack for the president of the United States!" The advisor who whispered the news of him being a hacker smiled turned around, and gave the air a fist- pump -- he did it. They all did it. Drinks and celebration would follow and all rested easy that night.

That's the real story folks.

</comment><comment><USER3> Does it bother anyone else that there is no page element that displays this person's name (if you didn't happen to know it already)? I mean, I guess he's supposed to be a big shot and everything...

Oh, I see, if I scroll down far enough I see he's "Harper" and he's "pretty awesome". Terrific.

Maybe I just don't get Medium. (And get off my damn lawn.)

</comment><comment><USER4> I would much rather read blatant publicity stories about Modest than these thinly veiled PR stories about the founder. Modest sounds like an interesting product.

Remind me: did narwhal work?

</comment><comment><USER5> That title may be misleading. It rather seems to be an ad for Samsung.

<comment><USER6> That's what I thought - and not just Samsung, but specifically a particular model. "Cover .gif shot on a..."

<comment><USER7> For a second I thought someone had submitted this article with their phone and by mistake left one of those "sent from my <Samsung?>" in as a trailing message.</comment></comment></comment>


KeePass 2.15 released - <AUTHOR> http://sourceforge.net/news/?group_id=95013&id=299363

<comment><USER2> Anyone know the status of the iOS 2.x compatible version? It appears to be abandoned as it's incompatible with iOS 4.x: <http://mykeepass.wikidot.com/start>

</comment><comment><USER3> This tool is totally awesome, runs great under windows and mono under linux.</comment>


Dangerous Optimizations and the Loss of Causality in C and C++ (2010) [pdf] - <AUTHOR> https://pubweb.eng.utah.edu/~cs5785/slides-f10/Dangerous+Optimizations.pdf <comment><USER2> > Consider the following example:

      if (cond) {
        A[1] = X;
      } else {
        A[0] = X;
      }

> A total license implementation could determine that, in the absence of any > undefined behavior, the condition cond must have value 0 or 1.

> If undefined behavior occurred somewhere in the integer arithmetic of cond, > then cond could end up evaluating to a value other than 0 or 1

I don't even follow this very first example. Neither C nor C++ have any requirement that their condition statements be given 0 or 1.

In C:

> the first substatement is executed if the expression compares unequal to 0.

In C++:

> The value of a condition that is an expression is the value of the > expression, contextually converted to bool

Where conversion to bool is defined as:

> A zero value, null pointer value, or null member pointer value is converted > to false; any other value is converted to true

I'm sure such a thing could occur if cond had a boolean type but contained uninitialized data. That would be similar to the situation talked about in this link: [https://markshroyer.com/2012/06/c-both-true-and- false/](https://markshroyer.com/2012/06/c-both-true-and-false/)

<comment><USER3> I, too, scratched my head over that for a while, and eventually realized that I had probably misunderstood what the authors are trying to say.

I think what they mean is that _if_ the compiler has analyzed the code, not shown in the example, that comes before the if statement, and concluded that unless something undefined happens, cond can only be 0 or 1, _then_ it can optimize out the condition.

They are not saying that the code actually shown is enough to conclude that cond must be 0 or 1.

<comment><USER2> Yeah re-reading the wording now I think you're right. It's this part that throws me off:

> could determine that, in the absence of any undefined behavior

"could determine that" based on the code example shown

vs

"could determine that" based on static analysis performed on some preceding code

It would have been a lot easier to wrap my head around if it were an example where cond could be 0 or 4 or something along those lines. It would really underscore the compiler's desire to reuse the cond as the index.

</comment></comment></comment><comment><USER4> I don't get why people get so upset about C++ optimizations. They are by nature optional. If you think an optimization is dangerous, just disable it. That's why compilers have optimization levels, so you can select what you're comfortable with.

<comment><USER5> Exactly. It's become fashionable to decry the lengths to which C/C++ compilers are able to go in the pursuit of performance because of "safety" issues, but the advantage of letting the programmer fully control every knob in the chain is immense.

<comment><USER6> > but the advantage of letting the programmer fully control every knob in the > chain is immense.

That's actually not completely true.

Take the restrict keyword for instance. Super painful to use in C/C++ and very dangerous. In Rust since the language has constrains around single mutable pointers they can turn it on globally and you get it "for free". If I recall correctly it's going live in one of the upcoming stable releases.

Sometimes constraints can actually let you get better performance than a wild- west of pointers everywhere.

<comment><USER7> > going live in one of the upcoming stable releases

If I remember correctly, it was originally enabled but had to be disabled because LLVM had some bugs around how it was handled. These arose because `restrict` is comparatively rarely used in C / C++ code.

[https://github.com/rust-lang/rust/issues/31681](https://github.com/rust- lang/rust/issues/31681)

<comment><USER8> Turning it back on landed in master a little over a month ago; meaning it will be in Rust 1.28, the next release.

</comment></comment></comment></comment></comment><comment><USER9> The simplest and best example in this presentation:

(x * 2000) / 1000 can be reduced to x * 2 but only if we make some assumptions about x (about if x can overflow)

The reason why this is such a problem in C languages is because most of the time one is working in a mixed abstraction environment. The underlying model for many parts of the language is assembly. In order to get away from these issues and to produce more optional code we should move away from mixing models of abstraction.

<comment><USER10> The value of (X _2000) /1000 will always depend on type. For example, this could result in overflows if it were a fixed point integral or loss of precision if it were a floating point type. X could be a non associative type with overloaded operators like a digest/summary type.

IMO the wierdist thing to read in C++ though is X / A _ A. Its roughly the same as X -= X % A. They values may differ if X or A are negative.

</comment></comment><comment><USER11> I had very bad experience of -O flag especially in case of ISRs. I don't use any optimisation levels... even at -O0 GCC seems to do something.

Good practice as per my experience is to check MCDC and code coverage at unit test level

</comment><comment><USER12> I guess, if you want to know what your code will be doing when executed, don't use C (and don't even dream of C++).

Those are reserved for people who value speed over correctness.

<comment><USER13> False. Like for any language, C and C++ programmers (should) put very high value on correctness. Incorrect code can be written in safe languages too, but clearly C/C++ make it much easier to kill your program spectacularly. Discipline, knowledge, and tools are required to work in C/C++.

<comment><USER14> The usual statement.

First time I heard it was about 1993.

<comment><USER15> That doesn't mean it's not true though? People habe been claiming the earth is round since 500 BC, yet it's still as true as ever.

<comment><USER14> In this case the CVE database records history proves otherwise.</comment></comment></comment></comment></comment>