Jack Dorsey: Let's Reconsider Our "Users" - <AUTHOR> http://jacks.tumblr.com/post/33785796042/lets-reconsider-our-users <comment><USER2> 'Customer' is a misleading term if the person in question does not pay for the product. Given the abundance of free products (both past and present), 'User' has become the norm.

Customer is however a convenient term for a payment processor, where everyone is either a merchant (customer) or payer (customer's customer).

<comment><USER3> People who use Twitter are paying for the product, just inadvertently.

I think there's a deeper issue at work here that something like App.net addresses.

There is a complete disconnect between buyer and seller. When someone is using Twitter, they are paying for it by selling their data, but this is just implied.

I think that the industry could solve a whole bunch of issues by:

1.) Charging for their service.

2.) Paying people for their data.

It could be that both balance each other out. It could be some other mechanism. Maybe you earn money, maybe you hold on to your data and you just pay for the full cost of using a service.

Whatever the solution, I think we should start using the term 'customer' and making explicit what is already implied when we're using a 'free' service.

<comment><USER4> Explicitly paying people for their usage data will overtly change their usage habits because they'll be aware of the fact that everything they do will be sold off to advertisers. A good portion of the value of usage data is that it's not "tainted" by the fact that users are conscious about the tracking in the first place.

I guarantee over 99% of Facebook's billion+ users have no idea that's really how Facebook is making their money. Sure, they might see the ads, but they don't know how those ads really work.

As for calling users "customers" because their data is being sold, well, no, that's not an accurate name for them per the definition of "customer":

cus·tom·er/ˈkəstəmər/

Noun:

A person or organization that buys goods or services from a store or other business.

A person or thing of a specified kind that one has to deal with: "a tough customer".

The label "customer" implies a conscious action of making a purchase. Twitter users are not actively purchasing anything, they're just creating usage data that makes money on the back end.

<comment><USER3> People should be aware of the fact that what they do will be sold to advertisers. I'm not going to go as far as to support legislature that enforces this awareness, but I wouldn't be surprised if in the next couple of decades that this idea is thrown around by lawmakers.

I wouldn't be surprised if lawmakers set to make it so everyone had the right to make sure their information was not sold to advertisers.

I'm personally under the impression that regulation causes more problems than it solves in the majority of situations so I'm hoping that the industry self- regulates and companies like Facebook and Twitter allow me to pay for their services and opt-out of their business of selling my private information to others.

I'm not really sure why you defined "customer" for me. I never said that Facebook and Twitter users are currently customers, but that they should be.

It is dishonest to have the business taking place "on the back end" of things and to purposefully hide such transactions from people.

I also find it arrogant to think that it is advantageous to shield such financial complexity from people because they don't want to think about it or won't understand it.

So if Facebook and Twitter want to continue to be dishonest and arrogant companies, by all means, let them continue, but I think it will be part of their ultimate demise, either from increased consumer awareness on topics such as information privacy and digital identity, or from legislation.

</comment></comment></comment></comment><comment><USER5> It's fairly alarming to read company dictats like this one. I hate to think that anyone could have some split second change of mind about the use of a particular word and then try to force it on the rest of the culture, top-down.

Yes, there's some sense in which "user" connotes a detachment from the people who use the programs you create, but I hopefully Square isn't such a centralised culture that the CEO gets to decide on it in isolation from "the team".

<comment><USER6> Since when are start-ups a Democracy? Are only bottom up decisions allowed or must everything happen organically? I don't think a decision like this needs a company wide referendum. I actually think it would be a waste of time and resources and create an unnecessary distraction.

I find it refreshing Square is open enough to listen to its newest board member and allow them to make an immediate impact. While small this change may not have come from the current culture that is more tech heavy and take the term user for granted.

<comment><USER7> > Since when are start-ups a Democracy?

<http://www.nizkor.org/features/fallacies/straw-man.html>

<comment><USER6> OK, admittedly a little dramatic to make the point that one thing that can slow down a startup (which should be fast by definition) from their real goal is involving everyone in every decision. It was in response to a board meeting, not quite in isolation as was stated.

</comment></comment></comment></comment><comment><USER8> Mind you, this was prompted by a question from Howard Schultz, CEO of Starbucks. You know, the company that endlessly confuses people with the words Tall, Grande, and Venti :-)

But while an industry outsider may be unfamiliar with the term "user," I've never worked anywhere where we didn't have the highest appreciation for, and commitment to, the people who use our software. The term does not have any negative connotation to it, and there's not an industry-wide problem here to fix.

<comment><USER9> Ever notice that if you ask for a large at Starbucks, the barista will confirm: "Venti?"

It wouldn't surprise me if this were a designed response from Starbucks, encouraging their customers to develop and internalize the Starbucks dialect.

<comment><USER10> well, a problem that I had when I was a barista (at a different coffee chain, back in 2001), was that we didn't have three sizes, we had four. So if somebody asked for a medium, I would get confused and say "well, we have two mediums", and if someone asked for a large I would have to ask "did you want the one that would reasonably be called large or did you want the one that is actually the largest that we have?". Whenever I tried to standardize "small, medium, large, extra-large" or "tiny, small, medium, large", then always half of the people would end up the wrong thing and get upset. It was lose-lose.

So now when I go to a cafe I say "I'd like a twelve ounce coffee", so I don't have to try to translate that through their local notion of whether that's "small" or "medium" or "tall"

</comment></comment></comment><comment><USER11> 'User' only seems depersonalizing because of familiarity. Use 'customer' as habitually, and it too will eventually seem generic. And then, expect posts about how 'customer' compresses our understanding of these people to an economically reductionist relationship. (The 'euphemistic treadmill' is a related concept.)

Ultimately, an attitude can make up for the word choice. For example, if you say 'user' with the same reverence as do the software agents in the original 'Tron' movie, you'll be paying the users way more respect than 'customer' grants.

<comment><USER12> To some extent I'd agree, but these patterns are already deeply ingrained into corporate-speak external to any particular startup culture. Language such as "user issue" versus "customer feedback" is generally an indicator of importance. Perhaps not very meaningful (depending on your perspective), but important nonetheless.

</comment></comment><comment><USER13> Wow that was reactive and heavy handed. The answer isn't to stop using the word user. The word user has it place. Certian conversations need a generic term for the people who "Use" your software where other conversations need a more specific word for the people who use your software such as "Cupcake business owner", "Deli Cashier", etc.

User is not a bad word. However, its not the right word to use to describe some one who uses your software at times (Sometimes you want a more detailed word), and sometimes "user" is the right word (You are talking big idea, vision, less detail). eg. "How many users are hitting our server right now?" "We have 20,000 people submitting tweets, and 1,200,000 people reading tweets."

</comment><comment><USER14> Heartwarming. I predict in short order the phrase "customer" will take on all of the negative connotations normally associated with the phrase "user".

<comment><USER15> Reminds me of this ancedote: [http://www.ted.com/talks/mark_forsyth_what_s_a_snollygoster_...](http://www.ted.com/talks/mark_forsyth_what_s_a_snollygoster_a_short_lesson_in_political_speak.html)

When forming the US Government they had to name the new position. Some wanted it to be regal and powerful, others wanted to keep it humble so the leader wouldn't let the power get to his head. Originally the title President was the lowest and most humble title they could think of for the head of state in the new United States. You only presided over a meeting. Now due to it labeling the position of power the connotation has changed and everyone wants to be President.

</comment></comment><comment><USER16> Users. Sounds like a bunch of junkies or gigolos, doesn't it?

The people who visit web sites aren't "users," click-throughs, hits, numbers on a spreadsheet, or some other form of dehumanizing jargon. They're your husband, your mom, your friend, the guy who sits in the cube next to you. They're real PEOPLE, just like you and me.

That's why we think a successful site is one that makes real people's lives easier; One that makes them say, "This site worked for me." So we've made it our mission to ensure this kind of experience at the sites we build. At 37signals we don't see users, we see people.

<http://37signals.com/01.html>

. . . just as relevant in this bullshit bubble as it was in the last.

<comment><USER17> It sounds like you are in agreement with OP.

<comment><USER18> It is a little surprising to see something voted to the top that isn't a criticism of the OP, but there's not much to argue with in the email.

</comment></comment></comment><comment><USER19> "Buyer" or "seller" is interesting since it makes a functional distinction.

But "Customer" or "user" is just a word choice without an inherent distinction. The way either word is used is very heavily dependent on corporate culture. If a company uses "user" in an cold, impersonal way, it's guaranteed they'll use "customer" in exactly the same way.

</comment><comment><USER20> "Users" is a powerful word. It reflects the things that matter to those who _use_ the tools we create: _usefulness_ , _usability_ , and most of all -- the simple fact that what we create is _used_ by people to _do_ something.

To eliminate the word "user", I have to say "the people formerly known as users but who will now be known as _the people who use our app_." I cannot call them "people", because our users are a specific subset of people... they are people in context that matters, deeply. The context of _using_ something we made.

I have always agreed with those who say that if you have a problem with employees dissing users, the problem does not live in the word "users". If they don't think of users as people, fix that first. I am more concerned that the word customer puts the focus on people-who-pay vs. people-who-use.

I think the problem is precisely the opposite: not _enough_ people think of their customers as _users_. For example, we tell our authors to think of their readers as _users_ , not just readers. They're not buying our books to be exposed to our prose... They're trying to use what's in there to do something they care about.

</comment><comment><USER21> It's a lot more useful to take this advice as, "Reconsider the ways in which you talk about people who use your product or service."

It's not "call them customers" or "call them buyers/sellers"; just think about what makes sense, what evokes the right thoughts, and use that word instead. If 'users' works for you, then keep doing that.

</comment><comment><USER22> I don't think there's anything necessarily wrong with the term "user." It's a top-level generic term that could be broken down to better describe those who use your service. In Square's case, that's "buyers" and "sellers" who are both "customers" of the Square platform.

It seems obvious, but I understand what Dorsey's getting at. I've struggled with finding appropriately specific identifiers, and when in doubt just lumped everyone together as "users."

Context matters. Square happens to be one of those paid services whose categories of "users" are pretty easy to identify and name. Like you guys mentioned in your comments, redefining specific terms for "users" of free services and search engines isn't quite as simple. I would suggest "freeloaders" or "browsers" but that would take us in the wrong direction :)

I'm content being labeled a "user" for now.

</comment><comment><USER23> Customer abstracts people as well. Why not just call people... people?

Kind of interesting that the CEO of Twitter and Square has the time to think and write blog posts about referring to people as "users" or "customers" internally. Must be a tough and time-consuming job.

</comment><comment><USER24> User makes me think it's _about_ using the product.

Customer makes me think it's about _paying_ for the product.

Users are my friends. Customers are my clients.

</comment><comment><USER25> The user is not necessarily the customer, or the buyer.

In a company, the buyer or customer may be a manager but the user the members of his team.

In a consumer product, the buyer or customer may be a middle-aged man but the user his 12 years old daughter.

Words have meanings, and randomly inverting them will only cause more confusion. When you sell a product it's important to know who is the custmomer and who is the user. If they're not the same person they will have different goals and needs, and it is important to understand them.

<comment><USER26> Most definitely.

Youtube has video uploaders, commenters, raters.

Games have players, coaches, referees, bots.

Forums have admins, moderators, posters, subscribers, lurkers.

Torrents have seeders, leechers.

Sure, Amazon has customers mostly, and some advertisers.

New terms are ubiquitous from convention, not from reasoning.

</comment></comment><comment><USER27> While I agree with the general idea, "customer" implies a specific sort of relation (one where consideration is knowingly and directly exchanged for a good or service). Twitter's customers, for example, are advertisers. What do you call all those people who use Twitter as a personal communication platform?

Calling those people customers may perhaps cause subtle shifts in Twitter's behavior such that it would be more aligned with those people's interests, but it wouldn't be accurate!

</comment><comment><USER28> It's funny to see this on the same day as Olia Lialina's article "Turing Complete User"

<http://contemporary-home-computing.org/turing-complete-user/>

which argues that speaking of "users" is a mark of respect for their intelligence and autonomy, and that the computer industry is going astray by _failing_ to speak of them.

</comment><comment><USER29> Companies that throw the word "users" around a lot tend to not spend a lot of time actually understanding the people using their product.

Every time I've been responsible for a product, the first thing I've done is make sure we have accurate personas with actual names. Who are the real people using our product? Why are the using it? What makes them happy or sad about it?

I've found that, when presented with good personas, engineering becomes more empathetic for the people using the product, and, as a result, make products that are better for those people (as opposed to better for the engineers, which tends to happen when engineers aren't empathizing with their users).

And I also don't think "users" is a word that needs to be excised from software producer's vocabulary. There are times when you need a word that describes your customers, partners, etc. If you aren't careful, any word you choose there will become too generic.

</comment><comment><USER30> Frequenters of free sites are paying with their time and attention. If you don't return value for time and attention to these customers, they will move on.

If you don't consider yourself a servant of your customers, and work to please them, your contempt is going to come out instead. I got tired of being used by Facebook. I don't feel that anyone has my back at Facebook. I moved on.

By contrast there are a few sites that bend over backwards to delight me, their customer, whether or not they charge me money or make money from me. Customer service sets great sites apart from sites not worth my time.

</comment><comment><USER31> Often, especially in BTB offerings, it makes a lot of sense to differentiate "customer" from "user." Take for example: the decision-maker who signs the deal and writes the check never actually uses the product, instead has staff which does so. Differentiating the customer from the user is very important in this context: you have to make and keep both happy. The customer will consider net impact to bottom line, high-level capabilities generally present in the market place, and the general temperature of the users before buying. They will expect that you have a certain list of capabilities which everyone else is selling them, even if their users will hardly, if ever, use that feature. The day-to-day users of the product, however, will have less abstract problems - they have real tasks to achieve every day, and will care much more about the specific capabilities and how they're implemented.

Sure, we could call them "decision-making" customer and "product-using" customer, but semantics driving psychology work the other way around as well : sales is customer-driven, and development and support are user-driven. Same end result is achieved, while using natural language for the target audience.

</comment><comment><USER32> Today I completed a feature on our site nitrotype.com where "users" can report other "users" with offensive Display Names (mostly kids play, and they love their offensive names...). The link said "Report User". Based on this, I am changing it to "Report Player".

This is subtle, but it actually feels better to me. Building it as "user" wasn't even a thought, but in truth to a player playing a game, it is an odd abstract term in the context.

</comment><comment><USER33> I thought that it was odd that he dislikes "user" because it is impersonal (he wouldn't call his mom one), but then he chose replacements that are nearly as impersonal (I'm sure he wouldn't call his mom a buyer or a seller either). "Customer" is going to get very confusing if they start using it for people who aren't actually paying for anything. So while I see his point, I don't think he's improved the situation.

</comment><comment><USER34> Recently, in building apps, I've changed how I do accounts. Previously everyone was a "user" and permissions got managed by ACL (yes, yes, I know not the best security model..).

Now I give each type of user their own model. So... "customer", "employee", "admin" for example.

This is interesting because when you write code it is instantly apparent who is the focus of an action. It also helps model how the accounts interact with each other.

</comment><comment><USER35> I like the sentiment, but I'm not a fan of linguistic prescriptivism. Words mean what they mean, not what the dictionary says they mean.

</comment><comment><USER36> Personally I'm thrilled when people use my product. I've never thought of the term user having a negative connotation when referring to software users. Is that really a vestige of hacker culture?

Dorsey's post gives me an uneasy feeling. Because everyone receiving the memo knows on some level that it's BS. It's couched in the terms of showing respect for users as people. But the subtext is simply that we need to act as if we respect the people using our product because they provide money.

The whole exalting of the customer in modern marketing speak is emblematic of a lack of respect for people as fellow human beings. It's kind of a perversion of the cliche "the customer is always right. Obviously the customer is not always right, that's why the frickin' expression exists! It's an acknowledgment of the asymmetry that exists in buyer/seller transactions. You're not supposed to believe it, just act like you do.

</comment><comment><USER37> I'm a user, have been since 1993, when they handed me that first hit of email username/password.

Never gonna stop.

</comment><comment><USER38> At both Everlane (<http://everlane.com>) and Dev Bootcamp (<http://devbootcamp.com>) we made a conscious decision early on not to call our customers "users."

It's a surprisingly hard habit to break, but it's important. Being specific clarifies your priorities and adds a level of responsibility.

At DBC, our students are our customers, for example. Treating them like customers acknowledges that they're paying us a lot of money to change their lives. When you're saying "student" and "customer" all day it's easier to focus on what the real problems are.

</comment><comment><USER39> I don't think it's a big issue. I agree with this blog post from 2004:

> We think "users" is exactly the right word. It makes the USER the important > thing. The one who cares about USEability and USEfullness, two words we > really like. We don't care if we make fans. We aren't even motivated to > create customers. We believe that if you can do things in such a way that > you help people become passionate users, the rest takes care of itself.

[http://headrush.typepad.com/creating_passionate_users/2004/1...](http://headrush.typepad.com/creating_passionate_users/2004/12/why_we_love_use.html)

</comment><comment><USER40> No, "user" is a great word if you're talking about what it's like to use the product, and how to improve the experience of using it. A word like "buyer" or "seller" might be better in some cases, but risk being to narrow, because a seller for instance will occasionally have other goals in the app then just doing a sale.

Similarly, "user" is probably not a great word when you're talking about business, because your customers do more than just use the app.

I don't mind being both a user and a customer and an individual, depending on who's talking about me in what context.

</comment><comment><USER41> This almost seems like a dismissal of your users. As he says, square has two types of user: buyer and seller. Only the seller is really square's customer, by the traditional definition of that word. By dropping the term user, and only talking about customers, it seems like the buyer might end up getting neglected.

When your boss asks you a question like "how does this impact the customer", you tend to only think about the people who pay you money, not the other strange definitions of customer that jack might have invented.

</comment><comment><USER42> I've felt this way about being called a "consumer" for a long time and have avoided businesses that label me as such. I say this is a good call.

</comment><comment><USER43> I've always felt the term was neutral. You could put a user on a pedestal, or condescend to them.

In any case, I don't think using "customer" as a replacement is necessarily enlightened or inspired. There's got to be a more creative term.

But then, that might just give rise to another esoteric buzzword, and I'd rather not have that either.

I'm just going to stick with "user".

</comment><comment><USER44> Big +1. Users as a term radically homogenizes people you're supposed to be building for. I came to the same conclusion a couple years ago: <http://corvusconsulting.ca/2010/08/no-more-users/>

</comment><comment><USER45> I've stopped calling my customers "users" since I heard Jeff Veen say, back at an Adaptive Path seminar in 2004, "there are only two businesses that call its customers 'users'."

It pithily drove the point home for me: I had never been designing for users, but people.

<comment><USER46> What were those two businesses?

<comment><USER21> Drug-dealing and software.

<comment><USER47> [http://jensontaylor.blogspot.co.uk/2011/11/similarities- betw...](http://jensontaylor.blogspot.co.uk/2011/11/similarities-between- software.html)

</comment></comment></comment></comment><comment><USER48> On the social network I run, I call them members. I think it's a lot nicer than users. I also sometimes refer to them as musicians (since it's a site for musicians).

If I called them customers, they'd think I were trying to sell them something... which I'm not.

</comment><comment><USER49> Before I go any further, I would like to make it known I really like Jack Dorsey as a person and entrepreneur. He is a smart visionary who possess's the same kind of entrepreneurial spirit that many of us here possess as well but this is one of the silliest things I have ever read.

Why does it matter what you call the people that use your services? They are users of the service. You are providing a service for users. For example: John Doe goes to a store and they use Square, John pays for his product via the merchant using Square — John is a customer, the retailer is a user of the Square service. It's not like John (the customer) is paying Square directly just for the privilege of being able to pay for his particular item via a credit card.

The word users works, lets not over-think this. As long as you are providing exceptional services and exceptional support you could call us cretins for all I care.

</comment><comment><USER50> Pick something that describes the activity. At Shopify we refer to our users as Merchants. They have their own Customers. We also have Partners with partner accounts which further branch into Affiliates, Designers, Developers.

</comment><comment><USER51> I think it's completely contextual. We call our users 'members' at Fotoblur, since we're a community. When I was in college working as a waiter one restaurant insisted we never call customers 'customers' but 'guests.'

</comment><comment><USER52> Some people are both customer and user. Some are only one of those. There is a database modeling pattern for that. And then there is an infinity of roles - customer and user are just two of those.

</comment><comment><USER6> Did the term user ever exist in this context before? Thinking about it it seems right when talking inside baseball, but not when writing copy for your business.

</comment><comment><USER53> Whether it's _customer_ or _user_ , the experience better rock! Less time on semantics and more on great products that _people_ want to use.

</comment><comment><USER54> At least he isn't calling their users "consumers". Dammit I hate that word and whichever MBA put it into the standard lexicon.

</comment><comment><USER55> > If I ever say the word "user" again, _immediately charge me $140._

$140... 140 characters. Subtle jab at Twitter?

<comment><USER56> He created Twitter, so I don't think it was either subtle or a jab.

<comment><USER55> I was under some sort of vague impression that he was estranged from twitter. Googling seems to indicate that was wrong.

So not "subtle jab", rather "pseudo-subtle nod".

</comment></comment></comment><comment><USER26> One customer could have multiple users.

Agents might be more accurate.

Why are we talking about this?

#biggerproblems

<comment><USER57> It's a reflection on how software developers can inadvertently distance themselves from the ones who care the most about their software most, their customers.

The terminology and historical use of the word 'user' doesn't give enough weight to the fact that their 'users' are actually customers. Referring to their customers properly shows more respect for their customers while setting the expectations from their developers when building services.

<comment><USER26> Customers is just one small category of users.

Youtube has video uploaders, commenters, raters.

Games have players, coaches, referees, bots.

Forums have admins, moderators, posters, subscribers, lurkers.

Torrents have seeders, leechers.

None of these are customers.

Sure, Amazon has customers mostly, and some advertisers.

I would say it's not a reflection of distance of software developers, but more an attempt by developers to create a new all-encompassing term which describes all of these things. People, organizations, machines. More than one per real life unit.

</comment></comment></comment><comment><USER58> This is the reason Jack is the modern day Steve Jobs.

</comment><comment><USER59> #bindersofusers

</comment><comment><USER60> >"Why do you all call your customers 'users'?"

We don't, we call our users "users". They are the product we are selling to our customers. We call our customers "customers". Why is he taking such a stupid question as a call to change the way he thinks instead of just answering it?

>No one wants to be thought of as a "user"

Excuse me? I am perfectly content with being thought of as a user of site X when I am a user of site X. I am not a customer of google's, I am a user of their search engine. I am not a customer of HNs, I am a user. If you don't care about your users, then fix that problem, don't try to pretend the word is the problem.

<comment><USER61> @Jack's article was in the context of Square. At Square, the merchants are the customers, and the merchant's customers are probably classified as the users. In that context, referring to merchants as users might be less precise.

When talking about twitter, I'm absolutely not their customer. I'm their user, and totally agree with your assessment.

One thing absent from @jack's article was a definition of customer:

cus·tom·er/ˈkəstəmər/ Noun: A person or organization that buys goods or services from a store or other business.

<comment><USER62> > the merchant's customers are probably classified as the users.

I believe his subdivision of "customers" into "sellers" and "buyers" was to solve that issue - "sellers" are the merchants, and "buyers" and the sellers' customers. It all makes sense to me, but you're right - only in a context where you actually have customers</comment></comment></comment>


What to do if you are unhappy at your job. - <AUTHOR> http://robertgreiner.com/2012/07/if-you-are-unhappy-then-leave/

<comment><USER2> I'd argue it's not that easy to up and quit a job if you have even just one variable added to the situation such as being limited to location. Maybe remote working is the answer. Know of any great remote jobs for Grails/Java developers?

<comment><AUTHOR> Unfortunately, I don't know of any remote Grails/Java jobs, but I do know of several openings across the US. What location are you looking for specifically? I know some recruiters that won't try to screw you over with sub-par opportunities. If you'd like, you can send me an email through the contact link on my website and we can see if there's anything that fits you.</comment></comment>


Ask HN: Why has wikipedia model not worked for (micro)blogging? - <AUTHOR> Why can't we replicate the model of wikipedia (user controlled, donation based) for things like blogging and microblogging  (quora/twitter/blogger/tumblr) ? Why can't we have a community controlled, distributed systems for public good which make no money. Why can't we have a wikiuber where the system takes no cut ? <comment><USER2> What do you mean specifically? I'm not sure how to compare Wikipedia (ideally one shared work, cooperative editing and control) with blogs (everyone writes their own things, in their own corner they control) for the question.

<comment><AUTHOR> I mean a shared and free (beer and freedom) infrastructure in which the contributors contribute and control the content. May be blogging is not apples to apples with wikipedia. How about Quora ?

In fact, why restrict to only content. Anything that is shared and for public good s/could be community controlled. What about Uber ?

<comment><USER2> Part of an answer might be that blogs don't need centralized infrastructure in the way wikipedia does. There are web hosters of all kinds (free, commercial, non-profit, community-run, ...), all of which can host independent blogs, running different (often open-source) software.</comment></comment></comment>


How HTML5 element names were decided - <AUTHOR> http://www.leemunroe.com/html5-element-names/ <comment><USER2> I did notice the complete absence of anyone searching for "section", its semantics dont seem to really make sense.

I do wish they would just let developers specify their own tag names, can default to block level elements with no styling, and a few very popular tag names (the current tags) have specific styling

<comment><USER3> I think this is possible with XHTML5.

</comment></comment><comment><USER4> mso-normal made me laugh out loud. Glad it didn't make the cut.</comment>


Is OWASP Top 10 No Longer Relevant? - <AUTHOR> https://dadario.com.br/is-owasp-top-10-is-no-longer-relevant/ <comment><USER2> (from article linked in linked article)

        A2 Broken Authentication and Session Management - session management is long time solved problem since we all use auth libraries.

Yeah, and buffer overflows are a long-time solved problem because we all use strncpy.</comment>


Paris chefs catering for diners in their own homes - <AUTHOR> http://www.bbc.co.uk/news/magazine-34581898 <comment><USER4> With AirBnB, you can pretty quickly assess the quality and safety of the apartment or room by reading about the local area, looking at photos of the apartment, checking for e.g. smoke detectors upon arrival, etc. If there's a problem with the apartment that the photos don't show, like mould or a terrible smell, you can pick up on this very quickly after arrival and leave to find somewhere else.

With Uber, I can check the car has seat belts before we depart, see if there are any big dents in the chassis, etc. If the driver is driving erraticly, I can ask them to stop the car and I can leave.

With a sharing-economy-restaurant, there's no way for me to assess how safe the food is to eat. Is this person's fridge at a safe temperature? Do they use a separate cutting board for raw meat or fish? Do they regularly wash their hands? Did they try making their own chilli oil and accidentally culture botulism? Did they use some mouldy peanuts full of aflatoxin?

It's much harder to pick up on these things. The first you might know about them is two or three days later when you get sick.

These are risks with any restaurant, but with a regular restaurant they are inspected, licensed etc. I eat food prepared by my friends, but I trust my friends implicitly, and my friends aren't financially motivated so aren't incentivised to cut corners.

Call me a food safety nit, but the idea of eating food prepared by unlicensed strangers does not seem appealing.

<comment><USER5> > Call me a food safety nit, but the idea of eating food prepared by > unlicensed strangers does not seem appealing.

But you just said you do it all the time when your friends cook. Is the only difference the profit motivation? As the article says, this is often more of a hobby than a "real" business... personally, I'd sooner suspect a restaurant – with their notoriously thin margins – to cut corners. I think with a decent reputation system (word of mouth, or some established online source) I'd be comfortable taking a chance at one of these establishments.

<comment><USER6> Yeah, but you have cause to trust your friends. Your friends have accumulated reputation with you, so you have reason to trust them. Not so much with random strangers.

<comment><USER7> Maybe there is room for a service to provide that. Uber has driver ratings doesn't it?

</comment></comment></comment></comment><comment><USER8> I always try and imagine how big things became that way. We watch football in huge stadiums, but I like to think back to a time where people would just get together on Sunday and watch a match - and as they got more and more interesting, people decided that we need more space and built bigger and bigger stadiums.

It feels like this with all this 'sharing economy' stuff. Restaurants probably started off (many, many) years ago just being people inviting others over to eat - over time the best hosts started to charge more and more, and bought bigger and bigger places to host more and more people. Soon there were enough people doing this that it needed to be regulated.

It's like we're going in a circle.

<comment><USER9> This being the internet, you don't have to wonder about such things.

Here's a page with a lot of history on several different food topics: [http://www.foodtimeline.org/restaurants.html](http://www.foodtimeline.org/restaurants.html)

One interesting tidbit is that oldest dining menu comes from ancient Sumeria. They list a proper meal for the gods. Since the king was considered a living god, this could be considered a menu for the king. (So restaurants likely started off as a formalized meal "ritual" for the king.)

It also says that, broadly, street food can be traced back to military mess units. It's likely that during peacetime, the people who prepared food for military units went on to prepare food for the general public.

I also like to imagine that we have football stadiums now because of the Roman use of the Coliseum for watching live sports thousands of years ago, and the Coliseum was just the largest amphitheater, a structure which the Romans borrowed from the ancient Greeks. This would significantly predate the development of football.

<comment><USER8> Ha, I should have thought to dive a bit deeper. I think the thought still makes sense though - I was just using football as an example, it can be extended to why did the Greeks build amphitheaters in the first place. It's not like one day they decided 'huge audiences must be great' \- it must have started with smaller audiences and iterated into the big structures designed to hold larger audiences.

My point was we seem to be starting this iteration from scratch for a quite a few things.

</comment></comment></comment><comment><USER10> > "In the space of three years Airbnb has tripled its presence in Paris - <USER2> > the point that there are now 50,000 flats advertised on its website," > Synhorcat's president Didier Chenet tells me. He says small and medium-sized > hotels have been hit hard and over the summer they had to drop their prices. > "If the government doesn't do something to stop the underground restaurants, > it will be the same disaster."

What a disaster. /s

</comment><comment> jon-wood In London this has been a pretty common thing in the form of supper clubs for at least the last five years, and I don't think anyone is worrying about the restaurant industry collapsing just yet. They tend to be small scale, infrequently run, events in someone's home, with a large one seating maybe ten or twelve people.

<comment><USER11> Pop-up restaurants seems to be the more common term in the US but they range from this sort of thing to relatively small-scale but even regulated (a la food trucks) temporary restaurants.

<comment><USER12> I see pop-up shops, mostly retail, regularly, but never restaurants. The closest I've seen are food trucks, at least in Ohio.

<comment> jon-wood Be thankful, you can barely move in London for pop-up restaurants with "wacky" concepts and overpriced food. Some of them are pretty good, but a lot seem to be pop ups because they wouldn't survive building up a reputation.

<comment><USER12> Interesting. We also are starting to have something here sort of like a popup where a guest chef will host in a place like a coffee shop and cook a fancy full course dinner say one night per month. Is that common over there?

<comment> jon-wood I've not seen a lot of that, much more common is someone renting an empty shop front for a few weeks, doing a full service every night during that time, and then shutting it down again.

</comment></comment></comment></comment></comment></comment><comment><USER13> It finally happened [https://farm5.static.flickr.com/4005/4381726392_ecf7e0b162.j...](https://farm5.static.flickr.com/4005/4381726392_ecf7e0b162.jpg)

<comment><USER14> Sounds like a good idea to me. A lot less dangerous than lending your home away when you go on holidays!

I do a lot of cooking myself (expat french, it's survival requirement ;-)) so I'm actually quite interested by that setup, especially to meet people who also cook or just appreciate good food...

</comment></comment><comment><USER15> John Ralston Saul, writing in The Doubter's Companion:

      > Restaurants, until recently, were places of refuge for people
      > excluded from the mainstream or seeking to escape it—poor students,
      > aging unmarried men not rich enough to have themselves fed at home,
      > richer men seeking sex not wives, and the proverbial artists leading
      > their irresponsible lives. Over the last half-century, restaurants
      > have risen in importance to fill the void left by the decline of the
      > old public celebrations. They now provide the leading forums of public
      > participation.

He's right - restaurants are a relatively modern convenience / provide an arguably regrettable function, and we'd do well to not assume that their implementation is currently ideal, or demands preservation.

Whether this approach is inherently better or worse _in totality_ is a somewhat irrelevant question.

</comment><comment><USER16> Wow, they'd hate most of small town America: most people cook, and either eat what they themselves cook, or are invited over for dinner and bring shit they cooked.

And I don't mean "reheated frozen prepared food", a lot of people actually do cook when other people are eating it. At least, around here they do.

<comment><USER17> Cooking for oneself, or inviting over friends for a shared meal isn't what is at issue here. The conflict is over a new commercial enterprise - <USER3> preparing and serving meals for profit in their homes, mediated by apps/web services - in an industry with existing regulations. The situation has many of the same tensions as Airbnb vs the traditional hotel industry.

<comment><USER18> And like ABnB/Uber the industry is ripe for disruption because of the over- regulation that exists in many places. When people are motivated to make money and realize that the best way to do that is not to cut corners, but to have satisfied customers there is no need for regulation by a bloated and inefficient bureaucracy that usually operates primarily in its own interest.

<comment><USER11> Really? Sure, there's been IMO unwarranted hostility toward food trucks in some cities. But I wouldn't generally put health/safety inspections and other regulations concerning restaurants in the over-regulation "by a bloated and inefficient bureaucracy bucket." I'm sure that if one is a restaurant owner, there are regulatory things one finds annoying but, given the many insider stories one can see or read, it doesn't strike me as an industry that cries out for laxer standards.

</comment></comment></comment></comment><comment><USER19> My roommate is a professional chef that does this for a living. He seems to enjoy the flexibility and creativity the lifestyle affords him, and often gets to bring home leftovers for us. Maybe restaurants should get into this on the side if they think it's such a problem.

</comment><comment><USER20> Journalistic exaggeration much? I live in Paris's suburb and that's the first time I hear about 'secret restaurants'. I don't deny that they exist, just that they are probably in very small number. Are there 'secret cafés'? If so I'm interested: many cafés in Paris treat their customers poorly.

</comment><comment><USER21> So I want to start being a home chef once every week or two with my wife. She's an amazing cook. I'd enjoy hosting, setting up, serving, etc...

Getting to make a great meal would be fun. And getting paid a little bit would make the hobby even better.

How do I get started? Which one of ya'll is starting this app?

<comment><USER22> Just start with your friends & work connections!

<comment><USER21> We do that already. But then you're the host and expected to eat/converse at length. You also don't get paid (I least I'm not going to charge my friends).

</comment></comment></comment><comment><USER11> My sense is that families having cooks--at least in some locations and for some levels of income--used to be more common than it is today. I suspect that some combination of changes in lifestyle and availability of prepared food (e.g. takeout, frozen food) in various forms has made it less common.

The basic idea written about here isn't unreasonable. However, I'd posit that most of the people who want to eat well but don't want to spend the time cooking would also have trouble with the planning for someone to come over to their house at a specific time.

<comment><USER23> _for some levels of income_

Absolutely. In the past times of high inequality it was routine for the comparatively small number of "middle class" people to have at least one member of domestic staff, often a woman who would cook and clean. This absolutely relies on high income inequality and low tax overhead of having an employee, who themselves would not have a pension or social security.

<comment><USER11> Income ranges definitely play a big role. That's at least part of why full- time "help" is more common in some areas of the world than others.

This is admittedly a bit different as it's more like bringing the restaurant experience to the home and doesn't seem to really be intended as a day-to-day thing but rather an alternative to going to a restaurant for a nice meal out. It's really not that far removed from a caterer although caterers tend to focus on larger parties. (Though, when I worked part-time for a caterer back in school, we did handle more modestly-sized groups like Thanksgiving dinners in a house.)

</comment></comment></comment><comment><USER24> I recently spent a few months in Buenos Aires, and these sort of "illegal" restaurants (in the chef's home) are common and have been for years. In fact, they're amazing. Of course, it doesn't happen EU and the US for regulatory reasons, which in a way understand. But it's so sad that great chefs that could be making a living and providing some great food (like in BA), can't because it requires a ridiculous amount of money and licenses to open and operate a legal restaurant. I understand why those laws are in place, but it's still sad. After all, most people cook at home and people rarely get sick or die from not following thorough best practices. Mind you, these illegal restaurants are usually quite small, so they don't really cook at an "industrial scale" like a lot of restaurants do. At one I went we were just 8 random people sitting around a table, and the meal (and company) was amazing. More info: [http://munchies.vice.com/articles/argentinas-best- restaurant...](http://munchies.vice.com/articles/argentinas-best-restaurants- are-illegal)

<comment><USER25> I was down there recently and did the exact same thing with a friend of mine. Probably one of the best meals I ate at while there, and the vibe was awesome. We were the only group there, so service was great as well. There's a Brazilian startup that connects these underground restaurants, that you would usually need to know by word of mouth, with interested parties: cookapp. Its pretty popular in BA and I think trying to make it to NYC, but has regulatory hurdles to get around.

</comment></comment><comment><USER26> Anthony Bourdain has observed that the only way to cook like a professional is to be a professional cook. If you aren't doing it full-time, you just won't have the same chops. (By comparison, imagine if you only wrote software a few hours a couple of times a week. Think you'd be as good?)

But really, this turns on a grey line. If someone is doing a weekly or semi- monthly meal in their own home, for a handful of people, is that a "restaurant"? If I invite a friend for dinner and they bring a date, am I now a "restaurant"? On the other hand, if someone is doing this three nights a week and turning a real profit, that's kinda different. A regulatory line should be set.

The cleanliness issues, I think, are totally overrated. No one is going to be serving something they haven't tried making before. If they poisoned themselves, they'll learn. Cleanliness is harder cooking at scale.

<comment><USER7> A good proportion of the food we eat is served hot, which will kill of most bacteria.

</comment></comment><comment><USER27> This is absolutely fascinating. Is there a website like airbnb.com where you can read reviews and book something like this?

<comment><USER28> From the article: [https://www.vizeat.com](https://www.vizeat.com)

</comment></comment><comment><USER29> As interesting as this is, its more just a way to have a 'local' eating experience - see how Parisians cook at home. It doesn't really supplant the restaurant experience, its just a different eating experience...

</comment><comment><USER30> Interesting phenomena we are seeing here.

Am I the only one who found this sentence awkward?

"According to Jaime, the Mexican, there are growing numbers of "secret restaurants" in Paris"

</comment><comment><USER31> > He says small and medium-sized hotels have been hit hard and over the summer > they had to drop their prices

The horror.

Creative destruction is a bitch when you're the one getting destroyed.

</comment><comment><USER32> Disintermediate your own employer! Marry a gardener, and cut out your suppliers as well.

Pretty sure restaurants will survive this, though their service may have to improve.

</comment><comment><USER33> We used to have one of these in our town that was run by the Situationist International and would move from house to house.</comment>


The 1751 Machine That Made Everything - <AUTHOR> https://www.youtube.com/watch?v=djB9oK6pkbA <comment><AUTHOR> Related:

Jacques de Vaucanson

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

Origins of Precision and first project introduction

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

(The last video, incidentally, is related to the problem of being stuck on a desert island, and how to rebuild tools that produce other tools...)</comment>


Ask HN: How many people would buy a 1:1 monitor? - <AUTHOR>

I'm looking for a new monitor and noticed that all midrange monitors are now 16:9 with a vertical resolution of only 1080p. Why are we losing vertical resolution when most people use their computers to browse the web? Honestly if I could buy a 1600x1600 monitor I would love it. <comment><USER2> Because 1080 vertical lines equals a HDTV 1080p image size, and economies of scale mean that 1080 pixel tall display panels are less expensive than their cousins (because they double as televisions). And because they are less expensive, every monitor maker has decided that "1080p should be enough for everyone".

</comment><comment><USER3> Our eyes are positioned next to each other on the horizontal plane. This is why a screen ratio with a larger width rather than height makes sense.

<comment><USER4> Except it's well-known that humans read more quickly if lines of text are kept short (around 6" or so). The height of a page doesn't significantly affect reading speed (ignoring scrolling). So it makes more sense, for reading, to have a narrow, tall monitor. (This is why LaTeX defaults to wide margins BTW, and I'm pretty sure this is why Kindles etc. are portrait-oriented.)

<comment><USER5> Even on a narrow monitor, all websites since suck.com use snake text these days, so the width of your text columns is likely to be unaffected. The only exception left seems to email software created by Unix folk who prefer all text to be forced to 80 characters wide monospace.

Using a narrow monitor will only lessen the amount you scroll.

</comment></comment></comment><comment><USER6> I don't need 1:1, but I'd love some large format 4:3 sizes.

I have a 30" 16:10 Apple Cinema display as my main monitor and a rotated 4:3 20" HP LCD on my right. While I like the 30" monitor, I'll admit the sides of the screen go to waste. But I love the height, and I like being able to compartmentalize onto the second monitor.

In my mind, a great setup would be two 4:3 equivalents of the 30" display side by side. So instead of 2560 x 1600, it would be 2133x1600. Same height, less width. And I like having two because of the organization issue.

</comment><comment><USER7> Buy one and rotate it sideways (all modern OSs have support for this and plenty of monitors rotate freely).

<comment><USER8> The problem with rotating displays is that LCD pixels tend to be taller than wider ( [http://en.wikipedia.org/wiki/File:Pixel_geometry_01_Pengo.jp...](http://en.wikipedia.org/wiki/File:Pixel_geometry_01_Pengo.jpg) ), hence if you rotate a display it degrades the image quality. Cleartype especially starts looking horrible.

</comment></comment><comment><USER9> You can still buy 4:3 monitors. I have a 27" center monitor with a 19" monitor on each side. I love it. Unfortunately, though, 1600x1200 monitors are pretty pricey for the size.

<comment><USER6> What 27" 4:3 do you have? I looked for large format 4:3's a while back with little success.

<comment><USER9> Sorry, my 27" is 16x9 and the 19" on the side are 4:3. Didn't make that clear in the post. Just saying it's a good way to go :)

</comment></comment></comment><comment><USER10> I think it's because it's easier to move your head side to side than up and down.</comment>


Words That Are Their Own Opposites (2015) - <AUTHOR> https://mentalfloss.com/article/57032/25-words-are-their-own-opposites <comment><USER2> I ran into "The payment was remitted" at work, and I wasn't sure initially if they said they were denying to reimburse me, or if it the payment had been sent out.

</comment><comment><USER3> Weirdly, the verb "to doubt" used to be used in the opposite sense to how it is now. So, for instance, if you say "I doubt it's going to rain", that means you think it won't rain. But a few hundred years ago, it would have meant you think it _is_ going to rain. (And of course if you lived in England, you'd probably have been right.)

</comment><comment><USER4> If you've read Gibbon's The Decline and the Fall of the Roman Empire you will have wondered at the meaning of both sensible and insensible which both seem to alternate between opposites randomly throughout the book.

</comment><comment><USER5> If we take archaic usage into account, there are many more words that now mean the opposite of what they used to mean, e.g. "awesome".

<comment><USER3> When was awesome used to mean bad?

<comment><USER6> they mean that since _everything_ is awesome these days, awesome now means "ordinary"

<comment><USER5> I didn't meant that at all.

</comment></comment></comment></comment><comment><USER7> these are called "Janus words" or self-antonyms. Such as "flammable" and "inflammable".

[https://en.wikipedia.org/wiki/Auto- antonym](https://en.wikipedia.org/wiki/Auto-antonym)

</comment><comment><USER8> Buckle — to collapse, or to fasten

Raze/Raise might be a "phonetic contranym"

</comment><comment><USER9> im wondering how an AI would deal with this sort of thing. would contronym strings, be like forbidden ASCII?

</comment><comment><USER10> Inflammable?

<comment><USER11> That's a dangerous one. The builder asks, is this insulation inflammable?

</comment></comment><comment><USER12> Reciprocal</comment>


A Cover Letter in Brainfuck - <AUTHOR> http://myownfortune.wordpress.com/2014/06/15/cover-letter/ <comment><USER2> Author here.

Due to popular request, I extracted the text from the PDF, it's in a gist at the bottom.

A funny (on my account) story:

After three days with little sleep, the last half-day spent finding just one more byte to remove so it fits in a nice rectangle[1], I was finally done. I sent the complete .asm to Oded Margalit, an IBM researcher who organizes the CodeGuru programming competitions in Israel, and he immediately responded "I can shave 5 bytes off".

It turns out instead of the "quit" system call all the books tell you to write:

        ;;; the program has finished
        quit:
            mov     ah, 04ch        ; quit with return code
            mov     al, 0
            int     021h

You can just put a "ret", and DOS loads an address containing these commands to the bottom of your stack so it works.

You had to see my reaction.

[1] it was supposed to be 32x13 characters at the bottom, after it was done I decided to make it 8x52 characters on the right because it looked better. Had I known I would do it, I could've gone to sleep much earlier...

<comment><USER3> I love it how the OS does the obviously right thing (at least to my eyes, returning from the application's main() function equivalent makes 100% perfect sense), but people who have obviously spent a b*ttload of time with these things are still surprised. Not sure if it's irony, or just tragic. Good story though, thanks!

<comment><USER4> The first x86 assembly program I wrote ran almost perfectly the first time. That was over 15 years ago and I don't remember what it actually _did_ , but I remember being impressed with myself.

Then the screen filled with junk and my P133 rebooted. When it happened a second time I resigned myself to actually read the assembly manual section about DOS programs properly (i.e. not stop after the part which said .COM files are the simplest way to get started).

The idea of asking the OS to unload my application wasn't obvious to me at all :) At the same time, realising why _not_ asking the OS to unload my application produced the results it did was a lightbulb moment.

</comment></comment></comment><comment><USER5> For those wondering what the program does:

TL;DR - The program writes a Brainfuck program that writes the text you inputted. Pretty neat

First copy the text of the letter (excluding the x86 interpreter in hex on the right, or in the case of the gist, at the bottom) and run it through an online Brainfuck interpreter. Supply ASCII text input such as "A" and run the program. It will output another Brainfuck program. If you then run the outputted program through the Brainfuck interpreter you will get the same ASCII text.

So if you run the code extracted from the letter:

        +++++++++[<+++++>-],[[-<--.++<+>>(]<+.-<[->.<]>>,]

If input an 'A' the output is:

        +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.</comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>-----

which if run returns an 'A'

Online interpreter - [http://nayuki.eigenstate.org/page/brainfuck-interpreter- java...](http://nayuki.eigenstate.org/page/brainfuck-interpreter-javascript)

<comment><USER6> Hmm...

It would be interesting to do something similar, but optimizing for output code size.

For example, I'm pretty sure that the following is one of the shortest representations of "A" in BF, although it doesn't clean up after itself.

        -[+>+<[+<]>]>+.

</comment></comment><comment><USER7> The first ever Brainfuck program whose source doesn't actually look bad.

<comment><USER8> That problem has a generic solution:

[https://github.com/eteeselink/bffmt](https://github.com/eteeselink/bffmt)

<comment><USER9> I think "formatted" is different from "doesn't actually look bad"

</comment></comment></comment><comment><USER10> I have questions:

Did the letter work?

Program and interpreter and letter, but why not let us with X86 machines cut and paste.

What did the program do?

<comment><USER2> Of course the letter worked in the technical sense.

In the business sense -

The letter was sent as a PDF to a contact I had, who promised to print it and hand it to the relevant recruiter. I never heard back from them, but I did get accepted somewhere much better, and I have good reasons to suspect there was a man-in-the-middle involved.

I'll try and extract the text from this PDF. Of course I lost the source years ago (_in a thunderstorm_, no less).

<comment><USER11> I tried to OCR the letter.

The hex, I couldn't get.

[http://hastebin.com/raw/ogehefofez](http://hastebin.com/raw/ogehefofez)

<comment><USER2> I put the sources (including hex) in a gist at the bottom of the post.

</comment></comment></comment></comment><comment><USER12> You get bonus points if you find a 32-bit Windows machine and use DEBUG to load in the interpreter. It's like a modern day copy of BYTE.

</comment><comment><USER13> What's wrong with a text file? Notice how brainfuck is specified to work on text files, not on PNG files!

<comment><USER14> Can you embed a text file in the middle of a blog post?

<comment><USER15> Well... yes. You just, literally, paste it there. You can even throw in a <pre> for monospace shock value.

<comment><USER14> The formatting is pretty important for understanding this document. Even <pre> is just semantics and doesn't gurantee anything about presentation. Browsers just default to something monospace.

</comment></comment></comment></comment><comment><USER16> That's great :-) For other teeny DOS BF interpreters, see [http://www.hugi.scene.org/compo/compoold.htm#compo6](http://www.hugi.scene.org/compo/compoold.htm#compo6) (1999) - smallest was 98 bytes!

<comment><USER2> At 19 my raw assembly optimization skills weren't even at national level, and we live in a _tiny_ nation. Some people do amazing things with x86 ASM.

</comment></comment><comment><USER17> My guess is that most HR people would see that and think "Troublemaker", Next..

But, then again, maybe you dont want to work for them anyways.

<comment><USER2> I was so much of a special case at the time that they would do that anyway. I needed to take a gambit that would have some probability of failing at the gatekeeper, but would yield rewards proportional to risk.

And of course _I didn't send it to an HR person_. I don't understand why would a programmer ever send his CV to an HR person. My CV always gets passed to a programmer who can read it and see my value, he passes it on to his team lead, who knows he wants _me_ and lobbies HR on my behalf. Works way better.

<comment><USER2> In fact, two weeks ago I had to take a similar gambit. Here is what I sent this time (to a large group of alumni of the unit I served in). I got a few offers, but I'm still open to propositions:

My CV in one sentence: "Ask anyone in 8200."

I'm busy with my venture (spreading code literacy as wide as literacy), so I can only help you at 30% capacity or for a short period.

I'm looking for the project where my experience and entrepreneur mindset would bring the most value. Hire me to prototype your new product, automate your workflow, refactor your MVP into a maintainable architecture, research new technology, fix the bug you gave up on, mentor your juniors, or just join your team.

I take full responsibility for my work. This is especially valuable in organizations where the bottleneck for R&D is management attention. Does it describe you?

To summarize, I won't solve every problem you have, but I may be able to solve one, without taking up precious manager time.

I'm also available for consulting.

Cheers, Aur

P.S. My hobby is to join companies for 1-2 days. Any such job offer would be accepted automatically עד גמר המלאי [while supplies last - AS]. Need something done but your developers are crunching? Need a really simple MVP? Want a second pair of eyes on your design? I can probably deliver. Ask me.

I shine with Python and C, programmed professionally in C#, Ruby, Haskell, C++, Java, Javascript, and x86 assembly language, and learn fast. I write unit tests for my hobby projects.

<comment><USER18> One line CVs are good but it would help if you also mention your current location and related preference (are you willing to move/commute-on- demand/telecommute-only and preference to work abroad as well as any work permits you might need). Are you open to full time positions or just contracting? Lot of big projects either requires full time commitments or long term contract. From career perspective I would also highly recommend not to shoehorn yourself as "cryptography" or security developer - unless that's what you want to genuinely only thing focus on. Typically people's expertise are mere coincidence of jobs they managed to get first time and it's generally good thing to develop skills in other fields such as computer vision or machine learning and stuff.

<comment><USER2> > your current location and related preference

Irrelevant in Israel. We're that small. Since this is now posted internationally I should mention I'm willing to work remotely.

> Are you open to full time positions or just contracting?

"I can only help you at 30% capacity or for a short period."

> Lot of big projects either requires full time commitments or long term > contract.

Indeed, which is why I had to take this gambit. It worked, I got very interesting offers.

> not to shoehorn yourself as "cryptography" or security developer

"Hire me to prototype your new product, automate your workflow, refactor your MVP into a maintainable architecture, research new technology, fix the bug you gave up on, mentor your juniors, or just join your team."

The cover letter was written years ago for a specific security/crypto position. This "one line CV" is much more general.

> Typically people's expertise are mere coincidence of jobs

Indeed, never understood that. I always loved so many different things...

</comment></comment></comment></comment></comment><comment><USER19> I found your extra byte!

s/confered/conferred/

<comment><USER5> The extra byte he needed to shave off was in the 8086 assembly language brainfuck interpreter (in hex on the right of the letter) so it would fit nicely in a rectangle.

</comment></comment><comment><USER20> So you were expecting IDF human resource types to have a sense of humor?

<comment><USER2> No, just IDF technologist types.

</comment></comment><comment><USER21> This is brilliant!

</comment><comment><USER22> so, what does the program do?

<comment><USER2> Why don't you paste it in an online Brainfuck interpreter and find out? :-)

</comment></comment><comment><USER23> Kids may read HN, I'd think that exposing them to serious profanity would violate some countries laws and put HN at grave legal risk.

<comment><USER14> If swearing on the internet were illegal, most "user-generated content" sites would be shut down.

</comment></comment><comment><USER24> Brilliant, though shame it's regarding entry to the Israeli military.

<comment><USER25> Come on --that sort of political comment doesn't add anything constructive to the discussion.

<comment><USER26> If the word "Israeli" were omitted, I don't think anyone would have questioned if it were constructive. I don't know that the extra bit of specificity ruined it, for me, at least.</comment></comment></comment>


An Apology to Quora - <AUTHOR> https://medium.com/i-m-h-o/11673ab0c1f0

<comment><USER2> Quora Blogs:

"You must sign in to read past the first paragraph."

<comment><USER3> You've never had to log in to read blog content, there has never been a sign- up wall on loading a blog or blog post on Quora.

I understand and respect the displeasure people have over Quora's sign-up wall, but it's not constructive to point it out as a negative where it doesn't even exist.

Also, I'm sure you either 1) don't care or 2) already know, you can get around the sign-up wall at any time by adding ?share=1 to any Quora URL.

<comment><USER2> _> You've never had to log in to read blog content, there has never been a sign-up wall on loading a blog or blog post on Quora._

There was a time when I'd never had to log in to read past the first answer on Quora. If I'm not mistaken, there was also a time when I could read the first answer without pop-over sign up harassment. Likewise, there was a time before Quora started sharing my history [1].

It's hard not to expect negatives with that kind of track record.

1: <https://news.ycombinator.com/item?id=4377181>

<comment><USER3> Like I said, constructive criticism is fair, but using the sign-up wall to criticize Blogs is a total straw man.

There was also a time when Quora refused to let Google index any of their pages, nobody seemed to have a problem then.

Re [1] -- this was quickly reversed and has not happened since, see: <https://blog.quora.com/Removing-Feed-Stories-about-Views> (note the timestamps - complaint: August 13, removed: August 14)

Your statement above is a bit contradictory though, two points are about a Quora where you saw what you wanted without logging in, the third is about something (now deprecated) that others only saw while logged in, about logged in people. It sounds like you are just trying to break down everything you dislike regardless of the context. It's not very constructive.

<comment><USER2> _> Like I said, constructive criticism is fair, but using the sign-up wall to criticize Blogs is a total straw man._

Not at all, it's a general Quora criticism. Where do you get the idea that each feature of the site must be evaluated in a vacuum?

 _> It sounds like you are just trying to break down everything you dislike regardless of the context._

My context is Quora as a whole and the low expectations / lack of trust associated with the site.

 _> It's not very constructive._

That would be a valid complaint if this were a "Show HN" post or Quora was still relatively now. The site is going on 4 years old and the post I linked above reads like a laundry list of reasons users, myself included have given up on Quora.

Personally, I think the brand is tainted.

Look at how often Quora is compared to Experts Exchange. EE didn't and probably couldn't have launched a new subdomain to reinvent itself into Stack Exchange.

I think the more general Q&A that Quora tried to address is due for the same reinvention.

<comment><USER3> It's too bad you've given up on Quora, but like I said, I can understand why you (and others) don't like the sign-up wall among other things.

I don't expect things to be evaluated in a vacuum, but since the original thread here was about the sign-up wall in relation to blogs, I was trying to point out that the original issue isn't an issue (outside of the general dissatisfaction with the sign-up wall, completely separate from blogs), and that you've just piled on things you (and others) dislike in response to my pointing out the fact that blogs are not affected by the sign-up wall. What I'm trying to say is that your original comment would have been more useful if you just said: "Why bother blogging on Quora, the entire brand is tainted and myself and others dislike the sign-up wall and blurring of other content" -- I'm not trying to put words in your mouth, but it's tough for me to read and pass along feedback/complaints about Quora (if you didn't check my profile, I work there), if the complaints are about things that don't actually occur.

You've clearly built on that complaint and expressed what it is you think is rubbish, and I appreciate that, and whether or not Quora ever regains your trust, I hope that you realize we're not out to screw people or turn them away from the site (just the opposite).

Anyhow, cheers and thanks for engaging me.</comment></comment></comment></comment></comment></comment>


Finding Square root of a number in Python  - <AUTHOR> https://github.com/rShetty/pythology/blob/master/square_root.py

<comment><USER2> why not math.sqrt() ?

just kidding, nice readable code and a fun coding exercise</comment>


What is Conversion Rate Optimization? - <AUTHOR> https://qualaroo.com/beginners-guide-to-cro/what-is-conversion-rate-optimization/

<comment><USER2> At first glance, the colorful layout (and the introductory tone of the first page) made me think this was a brochure page for a company specializing in CRO.

It's not - it's a comprehensive and detailed 12-chapter summary of best practices and techniques. Stick with it, it's worth a read.

To the implementors: you may want to make it more obvious it's a full course, with the chapter list (or at least next/previous) at the top or in a sidebar. (I of course missed the "Chapter 1" badge and chapter list link when scrolling through.) Great work!

<comment><USER3> Thanks for suggestion. All that info is below fold. Agree it would help show depth to move it up.

<comment><USER4> kind of reminds me of this guide to CRO but this one uses mostly external resources as opposed to an all-encompassing guide:

[http://www.simplybusiness.co.uk/microsites/guide-to- cro/](http://www.simplybusiness.co.uk/microsites/guide-to-cro/)

great work, super useful!

</comment></comment></comment><comment><USER5> This is an awesome guide! I particualrly love how thoroughly sourced it is, and have found a few gems in those alone.

<comment><USER6> Thanks @cosmie — we worked really hard to make it as comprehensive as we could, and wanted to build on the work of lots of other really smart people that have already put a ton of great stuff on CRO out there.

<comment><USER5> Well you definitely succeeded. I love Chapter 4, as it aptly attacks the rampant misconception that rote implementation of a bunch of UX modifications is the epitome of optimization.

And thanks for keeping it not only comprehensive but objective, rather than only emphasizing the portions pertaining to the services you sell. :)

</comment></comment></comment><comment><USER7> Really great to have all this in one place. Thank you.

<comment><USER6> That was the idea—glad it's helpful!</comment></comment>


Apple's investment into Clangd and refactoring tooling - <AUTHOR> http://lists.llvm.org/pipermail/cfe-dev/2018-April/057668.html <comment><USER2> So, just because there seems to be confusion:

Clangd already exists. It already supports LSP. It is already part of the llvm project. It was written by !Apple, and used by a wide number of people.

(I want to make sure these people still get credit, i already see people in this thread thanking apple for supporting LSP, which is not actually what happened).

What apple has proposed contributing is: Making clangd work with xcode, and extensions to LSP.

This is great (as long as the second ends up standardized over time).

But the benefits people listed here so far already exist in clangd. The main benefit to work is "xcode support" and "better refactoring" which is awesome :)

<comment><USER3> The proposal is to split the LSP implementation into a transport layer and a logical layer. The current LSP implementation is directly tied to JSON-RPC.

Apple's end goal is, as you say, to get clangd to work with Xcode. However, having a replaceable transport layer for LSP could benefit lots of people other than Apple.

<comment><USER2> Sure, it's nice, but again, being pragmatic, nobody else has desired such a thing that much.

Ie so far the "lots of people" have not materialized, even outside clangd.

I can certainly think of use cases for such a thing, but most people seem happy enough with json-rpc at the moment.

Part of that is likely that trying to speak LSP over a non local connection may be a fools errand anyway. It's a chatty protocol no matter what the transport.

<comment><USER3> Just because Apple is the first doesn't mean there won't be others. Maybe others have not materialized because the upfront cost of updating clangd was judged too high.

JSON-RPC has several alternatives that very large software companies have vested interests in: gRPC and XPC.

You seem more knowledgeable of these technologies than I am, though. It just seems to me a good thing that 1) Apple, and consequently, all iOS and macOS developers will be using clangd, and 2) Apple is putting significant effort into improving clangd. I'm not sure why any of that news or optimism needs to be quenched.

<comment><USER2> My point was precisely that plenty of languages have LSP implementations at this point, an f even in those, nobody has cared much to try to find an alternative to json rpc.

As for 2, all I'll say is based on history in llvm projects, I'm not anywhere near as optimistic as you. The history here is simply not one of all great things. The PR is, but the reality is much more mixed (some really great things, some really not so great). So while I certainly am hopeful, it's definitely not the unbridled optimism everyone displays here.

<comment><USER4> You don't think apple's support of llvm and clang has been important to the project? That's REALLY pushing it.

<comment><USER2> That's not what i said at all. I said some things have been really great, some really not so great. This isn't even a controversial view among long-time llvmers.

Heck, last time i asked him (a few months ago), even Chris Lattner agreed with my view, and he used to run his stuff at Apple, so i don't think it's unreasonable.

I think it's perfectly okay to be cautiously optimistic instead of fawningly happy.

Do you actually have data or a real argument you'd like to use to suggest otherwise (IE that it's been all overwhelmingly positive?)

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> I'm glad to see that Apple is putting work into making their tooling better and easier to work with, but I'm still not clear on the benefits of this change. Would someone care to enlighten me? Currently, the benefits of libclang that I see are that I can easily drop it into a project without requiring a lot of dependencies, and I don't need to figure out how to get permission to run different processes and manage interprocess communication between them–if anyone doubts that this will be an issue, on iOS neither of these is really supported at all. In addition, I don't require a daemon to constantly be running to analyze my code. (Why is this bad? Take a look at Swift's sourcekitd.)

<comment><USER6> > if anyone doubts that this will be an issue, on iOS neither of these is > really supported at all

What for you might need it on iOS? Server is meant to run on a development machine.

<comment><USER7> > What for you might need it on iOS? Server is meant to run on a development > machine.

While I totally agree, I can see the author's point. Think for example about Swift Playgrounds.

</comment></comment></comment><comment><USER8> There is an article from 2010 titled "Emacs is dead" that is being reposted on HN from time to time. The author args that the greatness of Emacs is to rely on external, editor agnostic tools where text act as an universal interface/medium but that the practice is fading out, and thus the dead of Emacs. Now, ten years later, Apple announces this. Emacs, the undead?

[https://tkf.github.io/2013/06/04/Emacs-is- dead.html](https://tkf.github.io/2013/06/04/Emacs-is-dead.html)

<comment><USER9> I think you might be right, but the greater context is highly ironic.

The company resurrecting the Emacs concepts is Microsoft. They're the ones that created OmniSharp, bringing the idea of language servers to the programming mainstream. They then created the Language Server Protocol for what now is Emacs's biggest long term rival in the flexible editor arena: Visual Studio Code.

Visual Studio Code is for the moment on a somewhat bloated and shaky foundation because of Electron. But otherwise its design is quite solid. And even that foundation will probably become a lot stronger in the next few years as WebAssembly gains wide adoption. Visual Studio Code itself is written in Typescript and it's not hard to imagine Microsoft adding a WASM backend to it.

<comment><USER10> I think Emacs's greatest strength comes from the ability to use a single scripting language throughout the whole editor. I can quickly write up some ELISP statement to do anything, if I like it I can put it in a file and load it. If I want to share it, I put it in an extension.

I've just looked up the official tutorial on making an extension in VS Code. It seemed cumbersome. You need a code generator to lay the foundations, you need to consult the API docs etc.

With Emacs you can learn as you go and the editor itself guides you if you ever get stuck. You can read the source of any part of Emacs you like, change it on the fly, evaluate and try it (except for some core modules written in C). And I think that's the beauty of Emacs. Emacs is easy to tinker with.

<comment><USER9> Yeah, but I have a million monkeys^Wdevelopers at my back for Javascript/Typescript. How many divisions does Lisp have?

<comment><USER11> Out of curiosity I looked it up. It's a factor of 200: 3788 packages on MELPA, vs 650000 packages on NPM.

</comment></comment></comment></comment></comment><comment><USER12> Looking forward to it.

It is really nice to finally start having C++ environments close to the promise of Energize C++ and Visual Age C++ 4.

<comment><USER13> [https://www.reddit.com/r/programming/comments/25r6pw/a_demo_...](https://www.reddit.com/r/programming/comments/25r6pw/a_demo_of_lucids_1993_graphical_cc_programming/)

They mentioned incremental compilation in the first few seconds of the video. Didn't watch the rest of the video yet.

I've always wished for incremental compilation. Imagine incremental compilation that was so fine grained it would recompile only the functions you changed. Of course this makes full-program optimization impossible but I think most of us don't compile at the highest optimization levels during development anyway because doing so slows down builds without any benefit for development builds. For production builds we use the highest optimization levels of course.

Additionally I would like to have hot patching. I know some people have this, personally I've never had that.

If anyone knows about any systems for hot patching Rust code please let me know :)

<comment><USER12> While not perfect, Visual C++ makes it a nice experience.

[https://blogs.msdn.microsoft.com/vcblog/2016/10/05/faster-c-...](https://blogs.msdn.microsoft.com/vcblog/2016/10/05/faster- c-build-cycle-in-vs-15-with-debugfastlink/)

[https://msdn.microsoft.com/en- us/library/4khtbfyf.aspx](https://msdn.microsoft.com/en- us/library/4khtbfyf.aspx)

</comment></comment></comment><comment><USER14> I'm assuming this is the "LSP" discussed? [https://microsoft.github.io/language-server- protocol/](https://microsoft.github.io/language-server-protocol/)

Mapping json-rpc onto xpc... Sure why not

<comment><USER15> Woah I had never seen this before. That's really cool. So in theory you can make your own editor and provide a ton of IDE-like features by communicating with this server?

Are there any other implementations of LSP by other orgs?

<comment><USER16> [https://langserver.org/](https://langserver.org/)

</comment></comment></comment><comment><USER17> I have mixed feelings about this.

On one hand it's really nice to see Apple jump on the LSP train and use standard tooling for their IDE to interact with language tools.

On the other hand, instead of having a consistent strategy of using proper LSP (which by specification is JSONRPC), they are shoehorning LSP on top of their in-house XPC transport. To do that they're planning to introduce additional complexity to clangd (a transport abstraction), while actually defeating one of the main purposes of LSP, which is reducing the m-times-n complexity problem of matching compilers with tools to an m-plus-n complexity problem. No other tools (unless they support LSP-over-XPC as well) will be able to talk to XCode. XCode won't be able to talk to other tools. I hope they rethink that decision, keep clangd simple and instead adopt proper (JSONRPC) LSP in all of their other tools for Swift, etc instead. That way they'd not only open up XCode to clangd, but also all other editors to their refactoring tools for Swift, etc.

</comment><comment><USER18> Could someone explain what's the difference between both approaches and what are the advantages of Clangd?

<comment><USER19> Moving language parsing/refactoring/etc into a separate daemon is a step towards unifying tooling around specific protocols for interacting with compilers. Microsoft's effort towards a single language server protocol is worth mentioning: [https://github.com/Microsoft/language-server- protocol](https://github.com/Microsoft/language-server-protocol)

I'd love to see a future when new languages/compilers can implement this protocol for their external compiling daemons and just get support in all the various text editors/IDEs automatically.

</comment></comment><comment><USER6> I hope that it also means there will be Apple-provided LSP server for Swift soon.

<comment><USER20> There is one already: SourceKit [http://www.jpsim.com/uncovering- sourcekit/](http://www.jpsim.com/uncovering-sourcekit/)

</comment></comment><comment><USER21> This is great news! More parts of xcode are being exposed as open source and clangd is getting more engineering resources.

</comment><comment><USER22> Does anyone have any details about Apples cross language indexer they mention? A good indexer is the key to and efficient language server and I think clangd's is a little weak right now.

</comment><comment><USER23> I tried building Clangd in trunk but failed to build.

<comment><USER2> We build and use it every day, so ... report it on the list?</comment></comment>


How They Draw the First-Down Line on TV Football Games - <AUTHOR> http://entertainment.howstuffworks.com/first-down-line.htm

<comment><AUTHOR> Its amazingly complicated :-)</comment>