Susan Kare designed the suite of icons that made the Macintosh revolutionary - <AUTHOR> https://www.newyorker.com/culture/cultural-comment/the-woman-who-gave-the-macintosh-a-smile <comment><USER2> Sadly, the icon garden was closed by 1997 as part of Job's reinvention of the company. It was a great place to meet and a public garden that Apple put in to get their Infinite Loop campus built in Cupertino.

[https://www.quora.com/Where-did-Apples-icon-garden- sculpture...](https://www.quora.com/Where-did-Apples-icon-garden-sculptures- go-after-the-garden-was-decommissioned)

Lots of employees were shocked and a bug report went around after they went missing... something like "missing icons on reboot. Still missing after finder recovery."

Before there was the android version garden... there were the mac icons...

[http://clarus.chez-alice.fr/c_applegarden.php](http://clarus.chez- alice.fr/c_applegarden.php)

</comment><comment><USER3> What a wonderful article!

I have always loved Susan's work, particularly the dogcow — [https://en.wikipedia.org/wiki/Dogcow](https://en.wikipedia.org/wiki/Dogcow) — and her bitmap fonts — [http://www.folklore.org/StoryView.py?project=Macintosh&story...](http://www.folklore.org/StoryView.py?project=Macintosh&story=World_Class_Cities.txt&sortOrder=Sort+by+Date&author=Susan+Kare)

<comment><USER4> The Wikipedia article about dogcow states that someone else made it:

> In 1983, the dog icon had been created by Susan Kare as the glyph for "z", > as part of the Cairo font. Later, when designing the classic Mac OS "Page > Setup" print dialog box, an example image was required to demonstrate the > orientation and color of the paper.[2] HCI engineer Annette Wagner made the > decision to use that dog as a starting point, editing it and creating a > larger version with spots to be more suitable for demonstrating various > printing options. The new dog graphic had a more bovine look.

It claims that Susan Kare made the _dog_ icon but Annette Wagner made _dogcow_ based on it.

<comment><USER5> I got the impression that the dogcow was essentially a mistake, like stretching 4:3 to 16:9. The changes were intentionally (and manually) done to better fit with Page Setup, but it not intended to look like a cow or dogcow hybrid. I don't have any sources though, just something I think I read many years ago.

</comment></comment></comment><comment><USER6> Totally shilling right now, but I got a physical set of the playing cards [1] that she designed for Windows 3.0 Solitaire, and I swear that it's one of my favorite novelty purchases.

[1] [https://www.areaware.com/products/solitaire- cards?variant=14...](https://www.areaware.com/products/solitaire- cards?variant=14622412804)

<comment><USER7> I've got the other set - the beach!

[http://shop.cooperhewitt.org/p/3953/evan-roth-solitaire- deck...](http://shop.cooperhewitt.org/p/3953/evan-roth-solitaire-deck-of- cards)

(high five)

</comment></comment><comment><USER8> I think the smile made quite a difference to people's perception of macs. I quite like stuff like that and the Reddit alien. Macs image seems to have shifted a bit from friendly boxes to cool thin things for the well off.

<comment><USER9> Their stuff is far more affordable today than it was back in the day. That's why it's in the hands of hundreds of millions of users.

That friendly box that was the original Macintosh retailed for $2,495 in 1984 dollars. You can get a MacBook Air for $999 in 2018 dollars.

<comment><USER10> that's really irrelevant when PC notebooks can had for $200-$300. That means that not well off are not going to be chosing macs

<comment><USER9> The existence of even cheaper computers does not make my point irrelevant. A larger proportion of the population can afford a Mac today than in 1984, and an even larger proportion still can afford a computer of any sort.

</comment></comment></comment></comment><comment><USER11> Her web site is "kare.com". She's done icons for Apple, Microsoft, Autodesk, Facebook, Paypal... She's still doing graphic design.

Good icons are really hard. Most icons suck. Open source software icons especially suck. Open source people just do not seem to get communication through graphic design at all.

</comment><comment><USER12> She is very talented, and has a good eye for proportion & shape. When you compare the classic black-and-white Macintosh to Amiga, GEM, OpenWindows, Windows 3.1, Windows 95 &c. you see that the Mac was head-and-shoulders above the rest.

<comment><USER13> Amiga Workbench and GEM [1] icons, fonts and chrome were some of the most aesthetically unpleasant designs ever. The proportions were all stretched out, and the icons were mostly ugly.

With Kare's icons, even the pixelation looked cute.

[1] I was briefly enchanted with GEM because it made my DOS machine look and feel like a Mac, but when I compared it to an actual Mac it looked horrible.

This is what GEM looked like: [https://en.wikipedia.org/wiki/Graphics_Environment_Manager#/...](https://en.wikipedia.org/wiki/Graphics_Environment_Manager#/media/File:Gem1.png)

And this is what System 1 (original Mac OS) looked like: [https://en.wikipedia.org/wiki/System_1#/media/File:Apple_Mac...](https://en.wikipedia.org/wiki/System_1#/media/File:Apple_Macintosh_Desktop.png)

<comment><USER14> Heck, even GEOS looked better than GEM.

The Amiga desktop was such a missed opportunity. Take the first mass-market computer capable of high-resolution graphics in 4,096 colors and make the icons... wait for it... black, white, and orange on a blue background.

A friend of mine who was legally blind had an A1000. I sometimes wonder if it was only for the icons.

<comment><USER15> There's a reason for that color scheme. The OG Mac had a built-in, sharp, monochrome CRT. The Amiga was designed to be usable with whatever TV happened to be lying around. Hence the complementary pairs of black and white, and blue and orange: the only colors that would read well on the oldest, grottiest, junkiest b&w or color TVs. If you were editing HAM images in Deluxe Paint, obviously you'd want a high-quality monitor for that. But if you didn't _have_ a high-quality monitor, the basic system UI would at least degrade well to be usable with what you had.

Function over form is a part of the Amiga design. Its graphical shell is called "Workbench" and not "Desktop" \-- it was thought of as a computer for engineers and makers who were willing to forgo prettiness for practicality.

</comment></comment></comment></comment><comment><USER16> Ah the icons of my youth, quite awesome. However, for me, the BeOS icon set has not been toped. When I first installed BeOS I remember being totally blown away by them.

[http://www.iconwanted.com/en/beos.html](http://www.iconwanted.com/en/beos.html)

<comment> cup-of-tea Those are indeed much more beautiful and consistent. These all seem to live in the same world while the Mac one seem to be designed one at a time.

</comment></comment><comment><USER17> > Every fifteen minutes or so, as I wrote this story, I moved my cursor > northward to click on the disk in the Microsoft Word toolbar that indicates > "Save."

Gosh, cmd+S / ctrl+s doesn't work? Am I the only paranoiac that saves work every few seconds? Are all developers like that?

<comment><USER18> no, you're not alone. the following keyboard sequence is practically muscle memory: ;<return><return><cmd-s>

if it's the end of a line of code followed quickly by another line of code, i just keep going. if there's a spot in the code where i decide to separate with a blank line, it's like a natural break point that deserves being saved. of the voices in my head, the one i tend to listen to the most is the one in the back screaming "Save, save often"!

<comment><USER19> I have problems sometimes adding an import in golang, then habitually hitting save which runs `go fmt` which removes the import. Sometimes it takes me 4 attempts before i can force myself to not save

</comment></comment></comment><comment><USER20> you can get signed Susan Kare prints on her website

[http://kareprints.com](http://kareprints.com)

no affiliation, just a fan

<comment> amiga-workbench I've been looking for some artwork to hang in my bathroom and these are adorable, will be grabbing a few.

</comment></comment><comment><USER21> A DogCow goes Moof.

"Moof!" is the universal 'ping' in our household, how loud, happy or sad it's return "moof" lets us know how the rest of the family is doing.

</comment><comment><USER22> Oh those memories, thank you Susan <3 I will never ever forget that bomb-icon. It scared me to death. I would run to my dad and ask him what I should do / had done wrong. So damn proud when I didn't have to ask him some time later bc I was prepared. (5 to 7 years old maybe back then)

</comment><comment><USER23> The icons made the mac revolutionary? What a ridiculous exaggeration. The icons were an improvement over the "textual" xerox icons but it wasn't what made the mac revolutionary.

<comment><USER24> I agree. People had been doing bitmapped icons at least since the 70's. The Xerox Star (which the Mac copied) used them, too. The Mac's icons were good but were evolutionary, not revolutionary.

</comment></comment><comment><USER25> This article reminded me of a Microsoft designer who had created many WMP skins during the Windows XP era. I think she had a website/portfolio which I can no longer find unfortunately.

Experimenting with Winamp and Windows Media Player skins is why I now design and program UIs.

The Y2K aesthetic hits home better for me, because I grew up during that time and not earlier.

</comment><comment><USER26> Most of the New Yorker articles I read are the size of novellas, so it feels a little strange that they have a very short article for someone who's had so much impact on anything related to computers over the years. Almost everyone in the world probably uses derivatives of her icons, with some direct and others inspired.

I probably need to update her profile on my site as well: [https://www.theymadethat.com/people/m1xhv6/susan- kare](https://www.theymadethat.com/people/m1xhv6/susan-kare)

</comment><comment><USER27> Perhaps of interest here: [http://www.bytecellar.com/2012/09/11/susan- kares-32x32-pixel...](http://www.bytecellar.com/2012/09/11/susan- kares-32x32-pixels-of-steve-jobs-on-my-flesh-and-forever/)

</comment><comment><USER28> I was stoked to get a set of napkins that she designed at a cute shop last time to travelled to Portland:

[https://www.areaware.com/products/bitmap-textiles- napkins?va...](https://www.areaware.com/products/bitmap-textiles- napkins?variant=49036062660)

(They're on great cloth too! So hard to find cloth napkins that are absorbent but also don't wrinkle.)

</comment><comment><USER29> I can imagine Jobs yelling: make it cuter, damn it!

<comment><USER30> He met his match with Paul Rand then:

> When Jobs was asked what it was like to work with Rand, he said, "I asked > him if he would come up with a few options, and he said, 'No, I will solve > your problem for you and you will pay me. You don't have to use the > solution. If you want options go talk to other people.'"

[https://www.logodesignlove.com/next-logo-paul- rand](https://www.logodesignlove.com/next-logo-paul-rand)

<comment><USER31> Watching the video with Steve Jobs talking about Paul Rand was really fascinating.

My two takeaways: 1\. Paul Rand's IBM logo really was interesting because it predated emojis, but that is what it is. 2\. Steve Jobs is a great speaker (duh). When he needs to think and respond, the stillness is amazing. This is very different to presentations because he is ready for it.

<comment><USER32> His IBM logo is pretty clearly an hieroglyph (specifically phonograms), in my opinion.

See [https://en.wikipedia.org/wiki/Rebus](https://en.wikipedia.org/wiki/Rebus) (in the escort card example, the eye is also a replacement for "I").

(I mean the logo with the eye and the bee, of course, not the main IBM logo, which he also designed)

</comment></comment></comment></comment><comment><USER33> Her icons were such a huge part of my childhood. It's amazing how one person had that much impact on the aesthetic I grew up with.

</comment><comment><USER34> OH WOW! She helped create the magical world of my childhood! That is amazing.

</comment><comment> ezequiel-garzon Why was the title changed?

</comment><comment><USER35> I always thought that the Keith Ohlfs designed NeXt icons, and his later designs for WebTV, were good also.

</comment><comment><USER36> The icons of my first computer. Has been a long time since I saw them.

</comment><comment><USER37> She also designed the icons used on Facebook for their now-defunct Gifts.

</comment><comment><USER38> Trashcan / Fat Trashcan was brilliance :)

</comment><comment><USER39> mine hasnt smiled in six years since I installed Gentoo. If anything its a haunted, war-weary stare as I casually insist it compile Chrome and LLVM again. Its a sullen scowl as I compile the latest stub kernel and pack it dutifully alongside dozens of others in the EFI partition.

</comment><comment><USER40> Her work is extremely important to the Mac and to Apple, but I don't like hero worship articles. It was a team effort, and there were a lot of people responsible for making the Mac (and Apple) what they were/are.

When people wrote lots of hero worship articles about Jobs they missed the contributions of Kare and others. This quote does the same thing:

> "If the Mac turned out to be such a revolutionary object––a pet instead of a > home appliance, a spark for the imagination instead of a mere work tool––it > is thanks to Susan's fonts and icons, which gave it voice, personality, > style, and even a sense of humor. Cherry bomb, anyone?"

Her work is important and great, but she didn't do it in a vacuum.

It seems like every profile of someone nowadays has to make them out to be a singular genius who's work is of individual, utmost importance. It's not enough to just say "Hey look at this cool stuff this person did!" They have to be singularly responsible for something.

<comment><USER41> Who assisted Kare that this article fails to mention?

<comment><USER40> You missed my very simple point. It's not that she had assistance in her role (though I'd wager she did not create all her icons in a vacuum, instead collaborating with others on the Mac team.)

I'll restate my point plainly; hero worship articles about anyone who's work is actually part of a team (all the many articles about Jobs are much worse than this one, for example) help paint a false picture in our society of the lone genius. This false narrative is harmful just for being false, but also helps lead people to feel like being a lone genius is an achievable goal and what one should strive for. Which of course leads to failure.

My problem is not with Kare or someone writing about her. My problem is with this author and many others writing in this way and denying the reality that geniuses of all kinds collaborate with others and are enriched for it.</comment></comment></comment>


Show HN: Paully – Paul Graham's essays read automatically with a lifelike voice - <AUTHOR> https://paully.jeshan.co/ <comment><AUTHOR> Hi HN, I wanted to read PG's essays but for such long content, I prefer audio. So I made a podcast out of his essays.

I generated the audio automatically with Amazon Polly, AWS's lifelike text-to- speech offering. It reads impressively well like a human. I thought you'd find it useful. It's available on iTunes as well (you'll find the link on the website)

It was not all straightforward though. For example, there is currently a limit of 1500 characters to be translated per request. I also have to merge all of the audio parts in order.

I'd like to invite you to check it out. If you have any advice on how to improve this, do let me know.

Jeshan.

</comment><comment><USER2> Interesting and useful idea. How have you handled licensing? I don't see any mention of it on your site (though I may have missed it), and I see that paulgraham.com carries a copyright mark.

<comment><AUTHOR> Thanks, I have not thought about that. I figured (hoping) that it would be ok if this is a free project for the community.

<comment><USER2> In that case, I strongly recommend taking the site down ASAP, at least until you get things squared away. Then reach out to Paul Graham. Contacting a lawyer would also be good, as it sounds like you could use some legal advice in this area. I don't either, for that matter. I just wouldn't want to be potentially exposed.</comment></comment></comment>


What You Need to Know About Asynchronous Programming in JavaScript - <AUTHOR> https://itnext.io/what-you-need-to-know-about-asynchronous-programming-in-javascript-894f90a97941 <comment><USER2>
      const apiCall = url => fetch(url);

      const timeout = time => {
        return new Promise((resolve, reject) => {
          setTimeout(() => reject('Promise timed out'), time);
        });
      };

      Promise.race([apiCall, timeout])
      .then(response => {
        // response from apiCall was successful
      })
      .catch(err => {
        // handle the timeout
      });

This code doesn't do anything, since neither 'apiCall', nor 'timeout' are promises themselves. It just resolves with (response === apiCall).

>You can't afford to get this wrong.

>Throughout my career I've been in a lot of job interviews, both as an interviewer and as a candidate. I've seen my share of candidates fall apart when asked to code asynchronous code using Promises and async/await.

An interview is more stressful than writing an educational blog post, and yet it failed at its purpose twice.

</comment><comment><USER2>
      let orders;  // initialized in outer scope
      db.getUser(id)
        .then(user => db.getOrders(user))
        .then(orders => db.getProducts(orders[0]))
        .then(products => {
          // orders is now accessible here!
        })

No, it isn't.</comment>


Improve this technical interview - <AUTHOR> https://www.gastrograph.com/blogs/gastronexus/interviewing-data-science-interns.html <comment><AUTHOR> This is our technical interview for data science interns (and full time data scientists, without the deadlines!);

Lots of us here (rightfully) complain about the interview process, coding tests, white board interviews, and projects - your feedback won't fix that across the industry, but would help us improve the process we are actively using to hire data scientists at Analytical Flavor Systems.

Any constructive feedback is greatly appreciated.</comment>


Recommendations / Tips to Hiring Young, Web Savvy Stars? - <AUTHOR>

I'm looking to hire a young, web-savvy internet jock - someone who lives and breaths web 2.0.
I'd love advice on the best places to find such a person - can be great job boards, conferences, etc. What's worked for you?
By the way, the job is at Widgetbox (www.widgetbox.com, http://www.quantcast.com/p-3ayZhMX92Pd1o). If interested yourself - email me (ryan at widgetbox.com)! <comment><USER2> Provide a great environment with lots autonomy, no politics, and a strong equity stake.

</comment><comment><USER3> come to the "Creating Infectious Engagement Conference" next Thursday at Stanford.

</comment><comment><USER4> Does 5000 karma points count?</comment>


Your technical skills are obsolete: now what? - <AUTHOR> https://codewithoutrules.com/2017/10/23/obsolete-skills/ <comment><USER2> In my experience people with large amounts of obsolete technical knowledge are usually the ones making vast amounts of money being a contractor in a bank.

I know at least two RPG and COBOL on Big Iron developers whose daily rate is upwards of $2000.</comment>


SpeckJS: Comment Driven Development - <AUTHOR> https://github.com/speckjs/speckjs <comment><USER2> How does this differentiate itself from existing comment test frameworks?

e.g. [https://github.com/dtao/autodoc](https://github.com/dtao/autodoc)

<comment><USER3> Hey,

We feel that it's different because instead of asking you to learn a new tool or language, we provide a simple syntax to compile into the testing framework of your choice. This will literally output Tape or Jasmine tests for you. It also fits into various different workflows with plugins for Grunt and Atom.

If you have further questions we will be happy to answer!

</comment></comment><comment><USER4> This is an excellent idea.</comment>


Why is no one signing their emails? - <AUTHOR> https://arp242.net/weblog/signing-emails.html <comment><USER3> It's surprising to me that anyone could think that email signing was even vaguely in the ballpark of being comprehensible to the ordinary person.

<comment><USER4> Conceptually it's not hard at all. "When you send an email there is no proof that it came from you. It is easy to fake emails. When you press this button, it will 'digitally sign' the email. Now people can tell that it comes from you."

It's the key exchange that's difficult. However, as the blog rightly points out, having _companies_ sign their emails would be a _massive_ step in the right direction. Every ordinary person uses an email service. If that email service handled the key exchange for those companies the it would be truly wonderful. It doesn't even need to be that difficult given that these companies almost certainly have certificates for their websites.

Then all the service provider has to do is put this nice message when delivering the email: "This email was not signed by the company that it claims to be sent from. Beware." Not in any way difficult for an ordinary person to understand.

<comment><USER3> This is a deeply ironic reply - is it intended to be? There's almost no words there that would gel into comprehension in any way for average Joe and Jill.

I don't want this to come across the wrong way - but are you a Linux engineer/admin? I think when someone has deeply understood deeply technical things for a very long time, they lose touch with just how arcane their knowledge is and how much of a real expert they are - skyscrapers above the ordinary level of knowledge. This state leads them to think that what is obvious to them can't be hard for others to understand.

<comment><USER5> You must have a very low opinion of average Joe/Jill, to not expect them to understand "When you send an email there is no proof that it came from you."

I really don't see what's so hard about the first paragraph, which is the only one intended to be understood by a layperson. Even though the concept of "signing" has a long-established and well-known non-digital meaning, which nearly everyone will understand, the paragraph still goes out of its way to define it. Seems pretty idiot proof to me.

<comment><USER6> I knew a smart guy that believed someone could physically watch him through his monitor.

<comment><USER7> Given laptop webcam placement these days, this is kinda true...

<comment><USER8> I was looking at (budget) desktop monitors the other day, and noticed a disturbing number of them included a built-in webcam.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> I think if Gmail decided to implement email signing today as a prominent feature where they show a big warning for all non-signed emails the user demand for it would happen pretty quick e.g.

        WARNING: You cannot trust this email was sent from who it
        says it's from, the email have been modified in transit,
        and the email may have been read by hackers in transit

Similar to how Chrome started showing non-HTTPS sites as "Not secure".

<comment><USER10> They already show this information, but it's not prominent (I had to view the sender details to see it).

[https://support.google.com/mail/answer/6330403](https://support.google.com/mail/answer/6330403)

<comment><USER11> Encryption and signing are different things here. Encryption in this case means that the contents of the email are encrypted between Google's servers and the recipient's servers. i.e. preventing snooping.

Signing verifies that the contents of the email itself have been authenticated by the author. I.e. prevent spoofing.

<comment><USER10> Their documentation doesn't mention signing specifically, but wouldn't S/MIME include signing?

<comment><USER11> Signing on behalf of the server, maybe, but gmail in no way supports/encourages having the actual author sign their messages, to my knowledge.

</comment></comment></comment></comment></comment><comment><USER4> All I can say is OMG yes. I've been meaning to write the exact same blog post. How is it we're at 2019 and email clients don't demand some kind of signature? How is it that you can spoof email... simply by entering the fields however you want to? It's insane.

I agree that the key exchange is difficult, but seriously I'll even take a CA if it means that I can reasonably tell that email that appears to come from my bank probably comes from my bank. Even better if a technical user can manage the keys themselves, but at least lets do the bare minimum!

<comment><USER12> PGP isn't demanded, but a different kind of signature is increasingly demanded: DKIM. Only a minority uses it to reject mail on its own (although I guess that minority is bigger than the number of PGP users), it's widely used as part of a scoring system.

</comment></comment><comment><USER13> There's nothing stopping spammers from signing their spam. The pain point with signing and encryption is key rotation.

One problem is that both scammers and banks themselves use domains like paypal.accepournewtos.com or paypal.usersurvey.com and firstname.lastname@example.com

<comment><USER14> > There's nothing stopping spammers from signing their spam. The pain point > with signing and encryption is key rotation.

Yes, but those signatures can't be verified.

I understand this is tricky problem; how do we prevent people from simply clicking "accept this unknown key"? I'm not sure; but not _every_ user is a blubbering idiot, and "unknown signature" strikes me as a lot better UX than "carefully look for spelling errors or misleading domain names".

<comment><USER15> [https://twitter.com/miradoreltd/status/843877685675868160](https://twitter.com/miradoreltd/status/843877685675868160) adopted from [http://blog.johnath.com/images/snotweasel.png](http://blog.johnath.com/images/snotweasel.png)

[Transcription: Windows XP error dialog with the yellow triangle - <USER2> "Something happened and you need to click OK to get on with things." details: "Certificate mismatch security identification administration communication intercept liliputian snotweasel foxtrot omegaforce." then you have a button saying Technical Crap and three radio buttons 1) More technical crap 2) Hoyvin-Glayvin 3) Launch photon torpedoes and then OK and Cancel buttons.]

<comment><USER16> I will argue that something like the chrome untrusted certificate warning will scare away most of the users.

[https://i.stack.imgur.com/r0iOf.png](https://i.stack.imgur.com/r0iOf.png)

<comment><USER17> Nope. Back in the old days Microsoft actually did tests on this in Internet Explorer, with users real banking credentials not fake ones, so that the user would properly value giving credentials away.

The only thing that actually works is brick wall UX. If you don't give the user the option to ignore the problem, they are forced to give up, which was the only safe option for them. If there's a way to continue, despite it being unsafe, users will do that.

Humans have a psychological defect in which they become rigorously focused on achieving a specific objective, and screen out indications that this is a bad idea. This is why those signs saying "Danger! Low bridge" aren't as effective as you'd expect. The human driving the over-height vehicle is focused on getting to the other side of the bridge, your warning signs aren't helping them do that, so they ignore them.

This is why a modern Firefox has brick wall UX for some HTTPS problems and would like to do it for more such problems. Only brick wall UX keeps people safe.

This is also why "bad idea" and similar Chrome overrides for their brick wall have to be changed periodically, these start a "power user" feature for people who actually do what they're doing, but quickly they spread and are used by people just trying to get things done, without grasping that now they're completely insecure.

<comment><USER18> That brick wall UX keeps me from using Firefox on my work intranet, since we have a self-signed certificate it doesn't like. I kind of wish the other browsers did the same, so they would actually fix it instead of everyone having to click the insecure warning to continue five times a day.

</comment></comment></comment></comment></comment></comment><comment><USER19> Sure an email from Paypal.com can be signed or encrypted, but so can an identical one from Paypa1.com. How are users more protected in this case? In fact a big "sender verified" message in the email client for the latter email will cause a lot more phishing.

<comment><USER20> Web browsers already implement a 'near miss that's probably intentionally confusing" check on domains, and the code is readily extracted and shared (I know about it because someone extracted it and added it to Emacs a couple years ago).

This seems like one of those cases where more large infrastructure people need to say "don't let the perfect be the enemy of the good".

<comment><USER21> > Web browsers already implement a 'near miss that's probably intentionally > confusing" check on domains,

What do they do with the information?

<comment><USER20> For Emacs (and its web browsers, email clients, etc) this comes up in a concept of "confusables" strings that could easily be mistaken for other strings, usually as a result of Unicode tricks (multiple similar code points from different scripts, or composed versus combined characters, or sometimes ugly tricks with LtR/RtL markers. The code added to emacs was. A library that could be used to detect these probably-misleading tricks, but they didn't implement a policy for them. The uses I saw of the library fell into the sort of "Danger, Will Robinson! This looks like it might be malicious" type warnings that can be found in most browsers these days.

</comment></comment></comment></comment><comment><USER22> Email is already generally signed and verified when sent and received by competent email providers.

DKIM and DMAC are the technologies that do this. DKIM employs asymmetric cryptography to sign all outbound emails from a domain name using a key for which the public part is published in the domain's DNS. Receiving mail servers validate signatures automatically, looking up each domain's public key from DNS.

DMARC allows senders to advertise the fact that all email they send will be authenticated, such as with DKIM or SPF, so that receivers may drop anything else (kind of like HSTS for websites). Messages that lack a DKIM signature, from sending domains that require it, will simply be dropped.

Quality email providers, including most webmail providers, offer these capabilities built in. These technologies are table stakes for email, like HTTPS is for websites. Take a look at received email in your mailbox for DKIM/DMARC status headers and you might find that many messages are protected by these technologies.

However, even strong authentication of email addresses is not enough to prevent abuse. Attackers can send email from addresses that are similar (but not identical) to the person they want to impersonate (typo-similar domains). An attacker can fully set up the domain and employ DKIM+DMARC. Just like with TLS, possessing a key is not by itself an indicator of trustworthiness. Signing our email won't stop people from being tricked by impersonators unfortunately.

It's similar to the phone system: if someone calls you and claims to be an employee of your bank, how do you know if it's really them? The best answer is often to independently navigate to the bank's website, look up their contact info, and then use it to reach them. The same is the for email addresses: you can't assume that an address belongs to someone - you have to verify it somehow (using an existed trusted channel). Then DKIM+DMARC can help by making it impossible for anyone to forge messages from that address.

A starting point for a better solution to the identity discovery problem could be a better address book experience, calling to the user's attention the first time they're communicating with a new person, especially at a new or different organization. Defending against phishing is more of a user experience design problem than a crypto engineering problem in my opinion.

<comment><USER23> DKIM and DMARC only verify the domain of the mail server ... which is something we care about only because the email clients can't do something better. A signed email identifies an individual sender. Pretty much apples and oranges.

<comment><USER24> Sure, but the SMTP server won't sign the email if it was sent with the wrong login. So unless I don't trust the whole domain (in which case even PGP could result in a false sense of security), this pretty much verifies the sender. Only thing I need to do is to check if it's correct.

</comment></comment></comment><comment><USER25> Because no mail client implements a sane process for acquiring and operating S/MIME certificates using an S/MIME-issuing CA within the mail client's UX, much less doing so automatically for all configured email addresses using "confirmation link" emails occasionally.

</comment><comment><USER26> I used to work for a big tech company and the vast majority of people there signed all email by default and encrypted them when the content was sensitive. Part of onboarding was a training session on how all this works.

Now I work for a non-tech startup and there are exactly two of us who sign our email. Happens to be another engineer I need to occasionally exchange encrypted messages with.

As a positive, at least no one seems confused by my signed messages.

</comment><comment><USER27> > For signing there's more margin; it's okay if half the people never verify > your signatures.

The problem that people may not verify signatures is one, but what's far worse is that bad email clients won't show the email content for emails signed with S/MIME certificates that have later expired. I was in an organization where S/MIME certificates were always issued with a validity of one year, and I used to sign all my mails. After a year, a colleague told me (and showed me) that my previous mails in Outlook couldn't be read any longer. Turns out that Outlook has a convoluted process to say "Yes, I know that the certificate used to sign this mail has now expired, but it was valid at the time of signing and I just want you to let me use it for older emails or just show me the email content with some warning". I had to go through a series of steps to make sure Outlook trusted those certificates for all mails.

Email clients need to improve a lot more on usability if people are to use signatures and also manage multiple (expired) certificates.

</comment><comment><USER28> The average Joey Bloggs is just coming to terms with fake news and how to make their social media pages more private.

PGP is not user friendly though and will never reach wide adoption until it's made easier or someone develops a service for it.

<comment><USER14> PGP doesn't need to be user-friendly just to verify signatures. It's like verifying your Linux distro's package system: all of them sign their packages (usually with PGP) and they get verified on installation, but as an end-user I never see it.

And yes, PGP is hard, but only if I want to add signatures to my emails, or use it for encryption. But that's a different use case than what I wrote about here. I think this is exactly the sort of confusion I intended with:

> Confusion between every-day "random person A emails random person B"-usage > versus "large company with millions of users sends thousands of emails > daily"-usage.

<comment><USER29> >But that's a different use case than what I wrote about here.

I find it amusing that the problem in the HN threads isn't that they know too little, it's that they know too _much_. They've seen arguments against PGP for years, and are having trouble processing the post in any way that is different from the "usual" PGP use cases they've seen. I'm seeing comments arguing that the user can't understand concepts of web of trust, or will get fooled by Paypals.com's signature, etc.

</comment></comment></comment><comment><USER30> > Would probably have avoided Podesta and the entire Democratic Party a lot of > trouble

Unconvinced. The Podesta phishing email has:

> _From:_ Google <firstname.lastname@example.com> > _Date:_ March 19, 2016 > at 4:34:30 AM EDT > _To:_ firstname.lastname@example.com > _Subject:_ _Sоmeоne has > your passwоrd_

From a Google domain, to a Google domain. Google uses DKIM, so the sender, message-id, etc, WAS ALREADY SIGNED, and apparently got through anyway.

Which part of this would further signing have helped?

</comment><comment><USER31> It's easy. The mail teams at Apple, Google and Microsoft are running in maintenance mode and honestly there's no money in it for them to invest in it.

<comment><USER32> GMail _just_ had a major redesign.

<comment><USER33> The literally only changed the CSS of the pages. Not even pagination logic was changed - what am I missing?

</comment></comment></comment><comment><USER34> I always sign my email with PGP/MIME, although I do wonder if any of the recipients ever bothered to validate the signature. I mostly do it out of habit at this point. I use my GnuPG smartcard to authenticate through SSH and encrypt files so I might as well tell mutt to sign my email.

These days I suspect that the average user simply trusts their provider's antispam to discard bogus emails (and as TFA points out, DKIM does effectively provide a signature, although obviously it's not the same trust model).

I haven't given up on PGP, if anything I use it more than ever, but in this age of webmails and the general trend towards the centralization of the web I think the author is preaching in the desert.

<comment><USER35> How do you distribute the public key?

<comment><USER34> Through the usual keyserver network, keybase and my own web server.

</comment></comment></comment><comment><USER36> Author does not mention dkim in article which makes me think he might not "read all the relevant RFCs" as he claims. Majority of important emails _are_ signed and are not easy to spoof

<comment><USER14> I have updated the article to mention it:

> DKIM is useful, but limited. All it does is verify that an email which > claims to be from paypal.com is really from paypal.com. What it lacks is the > ability to show warnings such as "this email wasn't signed, do you want to > trust it?" and "this signature isn't recognized, yikes!"

Perhaps such warnings could be accomplished with DKIM somehow (I'd have to study it to see), and if it can: great! But in its current state it's doing something different than what I'm proposing (which is why I omitted it originally).

<comment><USER24> Well that UX somehow exists: If DKIM fails, the changes are high the email will be classified as spam or possible phishing.

</comment></comment></comment><comment><USER37> At my current job it is "mandatory" to sign your mails with mime. We got the infrastructure in place. I have seen 3 signed mails up until now. A colleague of mine got the reply to one of his signed messages "can't read because it's encrypted".

I would really love signed mails thought...

</comment><comment><USER38> I was a period I actually sign every email I send. I stopped when I keep getting replies about there's this mysterious p7s attachment people can't open. And some people say their virus scanner thinks it's malware.

</comment><comment><USER39> I sign my emails with PGP all the time.

One of the problems I noticed is that the signature ends up as an attachment and that confuses the hell out of many people.

 _Did you send me an attachment? What was that file I couldn 't open it!_

<comment><USER14> Once (or rather, _if_ ) PGP gains some traction this problem will disappear; email clients will improve the UX to show a specialised "PGP signed" box and hide the attachment.

<comment><USER40> It's been 23 years since MIME Security with Pretty Good Privacy (PGP) was proposed.

[http://www.faqs.org/rfcs/rfc2015.html](http://www.faqs.org/rfcs/rfc2015.html)

I'm starting to think that someone really doesn't want this to happen.

</comment></comment></comment><comment><USER41> The only organizations that i see consistently signing their emails are the large commodity traders [1], not sure what drives it (third world country operations, secrecy, etc.)

[1][https://en.wikipedia.org/wiki/List_of_commodity_traders#Mode...](https://en.wikipedia.org/wiki/List_of_commodity_traders#Modern_companies\[3\])

</comment><comment><USER42> I gave up on using PGP for personal communications ages ago (even ones where signing would actually be nice and not just a waste of time), but I still appreciate services that do this. For example, my repository hosting (sourcehut, [https://git.sr.ht](https://git.sr.ht)) and related services sign emails. I could know nothing about their key, key management, levels of trust, etc. just that I hit trust the first time (I'm perfectly okay with a TOFU model here) and now I throw away any emails that don't have a green tick next to them in the "Signature" field.

Email software could make this dead simple without requiring that the user know anything about the web of trust, regardless of how complicated PGP is under the hood. For most users, even webmail users, this would be good enough.

<comment><USER43> That is exactly what autocrypt ([https://autocrypt.org/](https://autocrypt.org/)) aims to do: define a protocol to effortlessly encrypt back and forth with no input from the user

</comment></comment><comment><USER44> Also, by guaranteeing we're the source, it only makes us more liable for what is written. If I say something that reads like a commitment, or get upset, or tell a mistake, there's always a chance of benefiting from a loophole during trial; if it was digitally signed, no escape.

The best interest of companies and individuals is that others send them signed mail, and that they send non-signed mail... I think that doesn't help at all.

It's different from signing a website, because one is way more self-conscious when putting informations on a website.

<comment><USER45> Sorry, but that's nonsense. The Received headers in an e-mail can already guarantee that your company is the source.

</comment></comment><comment><USER13> E-mail is transitioning to web based central/closed services. For example in Sweden - government do not send e-mail, instead they use a private proprietary service that require an Android or iPhone for second factor access, as an alternative to snail mail.

So if you want to keep messaging decentralized, open and standardized, instead of just complaining, we need to try out things like e-mail signing. In order to improve we need to _feel_ the pain points and engineer them away.

</comment><comment><USER46> I was so surprised when I received a signed email by Postfinance, my bank here in Switzerland.

I really think it would be very beneficial if all major providers would start to use that. At first not many people would check the signature, but if then this takes momentum probably all major email provider will start to show an icon telling that the email is signed and verified. Just like Gmail shows when an email was received through a secure channel (TLS).

</comment><comment><USER47> Maybe it is because major email services already do good enough job of filtering spam/phishing emails?

And yes, we already have DKIM.

<comment><USER14> (I am the author of this article, looks like someone posted it here before I got the chance)

If they were, phishing would be a thing of the past; but it's not. In addition it's a lot harder to filter out targeted spear phishing with spam filters.

Spam filtering is certainly useful – as are other measures such as the malicious website list that most browsers have – but it seems to me that adding _extra_ guarantees such as signing would be a good thing?

DKIM is useful, but also limited. It just detects forgeries of From address and such. Ideally email signing should be like https: if it's not https then you shouldn't trust it. DKIM can perhaps fill this role; but the current implementations don't; they just add some score to the spam-check.

<comment><USER48> You are begging the question by assuming that a signature on an email message proves anything useful to the recipient when the facts on the ground show this not to be the case.

It is not harder to conduct phishing with email signatures, and the fact that such phishing campaigns have no problem putting TLS certs on their phishing sites is a simple existence proof of this fact.

Email signatures does not impact spam in any significant manner beyond existing measures to prevent domain name forgery in the header. Spam email signed by email@example.com does not stop being spam because it is signed and the signature provides no useful signal to spam filtering tools.

The difference between an email signature and a TLS cert on a web site is that in the latter case the user is making an effort to connect to a specific site and the certificate ensures that they are in fact connecting to paypaaaaal.com even if other means were used to misdirect them to this site. With email there are two problems to be addressed, transport privacy/security (a sender problem) and unsolicited email (a recipient problem) and signatures are only useful in ensuring integrity of the former and do nothing for the latter.

</comment></comment></comment><comment><USER49> Okay, this may be off-topic, but I think the specific problem mentioned in the article would be much more easily solved by Queensland University of Technology providing context for the gift--which is already expected email etiquette. No need for a massive overhaul to email infrastructure. ("Off- topic" because the anecdote is a pretext for discussing signing email.)

I once had a similar experience in real-life. I received a check via express mail with no accompanying letter or explanation, which seemed like it _had_ to be bogus. Mindful of cashier check scams, I took it to my bank to see if it was safe to cash, and they erred on the side of caution and said, "no." But it was $600, so I cashed it anyway. And then about a month later, remembered I had closed out a poker account for that same amount.

I'm all for security, but can we start with common courtesy?

</comment><comment><USER50> The post is about signing, but the same applies to encryption:

> "This is not comprehensible to the ordinary person."

Too many moving parts, but there could be a solution. Unfortunately it's not going to happen.

The solution is that the few big webmail providers start setting up end to end encryption using any open standard. It must be the same zero configuration stuff that worked for WhatsApp which every grandpa and grandma use. If they start doing it for messages sent between their addresses, the world will follow.

Unfortunately this means that it must be done in the browser and the webmail provider can't see anything of the content. I don't think Google wants to see this happen even if they own the most used browser.

</comment><comment><USER23> A lot of the things people suggest as replacements for SMTP could be done with SMTP if email signing became standard. You could have closed message groups where you only have emails from people you have corresponded with before. So you could have a family INBOX, a company INBOX and a friends INBOX. Getting added to a particular INBOX would involve some communication out of band. This could be done in a very intuitive way. People would have no problem understanding the concept of a private INBOX.

It would totally allow man in the middle attacks but spammers/scammers generally can not do such attacks and would not have any financial incentive anyway.

</comment><comment><USER51> I'm guilty of not signing my emails despite associating some accounts with my key. A fear I have is signing but the receiver, even someone in the general tech field, not understanding the surrounding text/attachments and dismissing my mail. I wonder if that's part of why these large orgs don't sign.

I do agree with other comments that if big clients like Gmail abstracted PGP signing nicely for their users, it would put more pressure for organizations to publish public keys and sign lest the people they try to reach complain that Gmail gives them a nice big warning each time they try to open one of their emails.

</comment><comment><USER52> It always surprised me that, back in the heydey of spam, few (if any) mailing lists required signatures for e-mails sent.

Most of them were subscriber-only lists, and many were targeted at a highly technical audience, new subscribers were rare, and spam was not particularly targeted.

I'm not sure how many person-hours per week was spent by moderators hand- filtering spam, and it definitely increased the delay for posts to appear.

It doesn't make as much sense today with DKIM and friends, automated spam filtering, plus the general volume of spam is lower, but seemed like such a big win back then.

</comment><comment><USER53> My company has been a frequent target of phishing attacks. Setting up the strictest possible SPF, DKIM and DMARC records and then reminding everyone to always verify the domain matches goes a really long way to keeping people safe. It might not be as perfect as end-to-end PGP, but it's available today & supported in almost all of the major email clients. If you haven't set up DMARC yet, it's a good place to start as it stops scammers from being able to spoof emails and make them look like they came from your domain.

<comment><USER54> We, organization I work for, gave up on managing our own email. We pay Microsoft to do it. Their automated phishing detection is phenomenal. Maybe two or three emails slip through a quarter, down from dozens a month.

We had so many because our user base gets an email address which expands the email base from employees to employees + customers, so 10k to 150k+ and once someone fell for the scam it would get resent from their address which looks much more convincing.

</comment></comment><comment><USER55> At first thought, you'd think: All that would be needed to make this happen would be for gmail, outlook mail, and Apple's clients to support signed and/or encrypted mail and display a logo if the digital signature matches, say, a signature in your contacts.

But spammers would probably just throw a "signed" or "verified" logo or text at the bottom of the mail and fool or confuse most people into trusting an email they shouldn't trust.

</comment><comment><USER56> We need free S/MIME certificates with decent validity periods (remember, you have to keep around all certificates you've ever used!).

Webmail (which a lot of people use) is also not ideal for dealing with certicates. You more or less have to trust the mail provider with your private keys. There are just countless attack vectors.

Finally, it's quite technical to get a certificate, copy it to all your devices that have an email client and configure them.

<comment><USER14> I am not intimately familiar with the finances of PayPal, Google, Facebook, or Amazon.com, but I suspect they may be able to afford an S/MIME certificate. Perhaps even two or three!

> Webmail (which a lot of people use) is also not ideal for dealing with > certicates. You more or less have to trust the mail provider with your > private keys. There are just countless attack vectors.

You are _already_ trusting the email provider with _everything_. What's so bad with trusting them to verify a signature, too?

We're not communicating state secrets over encrypted email here; we're just verifying the signature on "PayPal sent you a message, click here to view it"-kind of emails.

<comment><USER57> But the signature doesn't tell you the sender is the org they claim to be, because how would the verification system know who the sender says they are?

</comment></comment></comment><comment><USER58> I have been using S/MIME for over a decade. I used PGP a long time ago, but it was way too much to expect others to use. Now that S/MIME is built into major MUAs, it makes more sense.

But one problem I have run into recently is that some correspondents complain that the attached smime.p7s file causes their system to mark my messages as spam. It has made me reconsider using it.

</comment><comment><USER59> One reason is a trusted PKI. Even if an email is signed, how does one verify the ownership of the key? I hope certificate authorities aren't the answer here, we've all seen how that worked for the web.

This is where a PKI on a blockchain makes sense.

Product Pitch: Signed emails, with inbuilt verification of key ownership, backed by a PKI on the blockchain

<comment><USER60> Estonia provides everyone a smartcard with a per-person certificates on it, those could absolutely be used to exchange encrypted e-mails in general, but the reason they aren't is because e-mail clients do not support it, there isn't a single e-mail client that comes even remotely close to that functionality. People resort to encrypted containers ASICE and attach those.

</comment></comment><comment><USER61> One reason is that SPF already accomplishes good enough sender identification without any hassle on the user side.

When you get an email from email@example.com and example.com is trustworthy and uses SPF, then you know that the sender in fact was firstname.lastname@example.com

It's easy enough to set up SPF for any domain.

Gmail, Yahoo, Outlook etc all use it.

<comment><USER14> SPF can be a massive hassle since it's based on which server is sending emails, rather than which organisation is sending emails. Change some server and your SPF breaks. In a large organisations there can be a bunch of different ways of sending emails (main app uses SendGrid, marketing team uses SureyMonkey, some 3rdparty tool uses something else, etc.) In practice, I see administrators get SPF wrong all the time, which is why it's rare to see a hard-reject policy.

In addition, the limitations of DKIM also apply to SPF:

> DKIM is useful, but limited. All it does is verify that an email which > claims to be from paypal.com is really from paypal.com. What it lacks is the > ability to show warnings such as "this email wasn't signed, do you want to > trust it?" and "this signature isn't recognized, yikes!"

<comment><USER24> > What it lacks is the ability to show warnings such as "this email wasn't > signed, do you want to trust it?" and "this signature isn't recognized, > yikes!"

Such a warning already exists: [https://lifehacker.com/stop-looking-like-a- phisher-in-gmail-...](https://lifehacker.com/stop-looking-like-a-phisher-in- gmail-5875549)

</comment></comment></comment><comment><USER62> I do PGP sign my emails but not the mails that my little web app sends out. I should try that and see how users do react.

How's the state at the receiving side? I mean what percentage of users would be displayed a message about the PGP signature being valid despite them neither using nor knowing about PGP?

<comment><USER14> I don't think there are many clients which support PGP out-of-the-box. The state of S/MIME is better though; I believe many desktop email clients already support it by default.

Still, more work needs to be done. It's a bit of a catch-22: no one is signing their emails because client support isn't that good, and client support isn't improving because no one is signing emails.

</comment></comment><comment><USER63> Because it adds nothing. Unless both part exchange their keys securely and both parties store the keys securely you are just delegating identification to a different infrastructure with no indication of it being more secure but with an added false sense of security with is even more dangerous.

<comment><USER64> Yet this is exactly how SSL security is implemented.

Speaking of that, couldn't companies use their existing domain certificate to sign emails?

<comment><USER65> No. You need a CA certificate that is authorized to sign email certificates to sign the email certificate that signs emails. The domain certificate is merely authorized for the SSL connection itself, and the CA that signs it likely doesn't have trust bits for email either.

</comment></comment></comment><comment><USER66> Maybe one reason is because it is a hassle to check the signature of someone you didn't have already in your contact list ?

How do you know it's not a fake signature ? Certainly you have to look at their website and find the key. But what if this person doesn't have a website ?

<comment><USER14> for S/MIME you don't need this; it's just a CA chain like HTTPS (for better or worse).

For PGP I mentioned some possible options:

> PGP could also be used; we can bypass much of the key exchange dilemma by > just shipping email clients with keys for large organisations (PayPal, > Google, etc.); like browsers do with some certificates. Or publish the keys > on a DNS record. Even just publishing them on your website (or, if you're a > bank, in local branches etc.) so people can manually add them to their > keyrings is a lot better than not signing anything at all!

</comment></comment><comment><USER67> In lieu of signing, shouldn't links in emails be disabled wholesale at the enterprise/organization level? If we can't prove who it comes from, then you shouldn't click on it, end of story.

</comment><comment><USER68> I know this is just a spam email, but Queensland University of Technology (QUT) is different from University of Queensland.

I hope you can adjust the names in your post! I have some University pride even if it is just spam

<comment><USER69> It wasn't spam... That was the point of the article?

</comment></comment><comment><USER32> Isn't this solved by DKIM, which at least GMail sort-of supports?

<comment><USER70> That only establishes that an e-mail sent from firstname.lastname@example.com was authorized for sending by example.com.

<comment><USER24> And if example.com is a decent email provider, this also proves that it was sent by john, because otherwise the SMTP server wouldn't sign the outgoing email with a wrong login.

</comment></comment></comment><comment><USER71> Weird, the email says Queensland University of Technology but the author talks about The University of Queensland. Two different universities but they are close (physically) to each other.

</comment><comment><USER60> I wish Microsoft released the patents protecting SPFv2, it could help against quite a lot of spam but it can't be implemented by GPLv3 software, it's a pity.

</comment><comment><USER72> I always thought the best webmail would be one that uses PGP in purely browser side javascript with an open source 3rd party library, or you can disable that and do it manually if you are still worried. The fact gmail never integrated PGP shows what a fraud google is.

</comment><comment><USER73> I think [https://en.m.wikipedia.org/wiki/DMARC](https://en.m.wikipedia.org/wiki/DMARC) is meant for that. Of course it relies on trusted DNS.

</comment><comment><USER74> [https://xkcd.com/1181/](https://xkcd.com/1181/)

</comment><comment><USER75> FWIW Facebook will not only sign but encrypt its emails sent to you using your PGP key.

</comment><comment><USER71> Lol, Queensland University of Technology and The University of Queensland are two different universities.</comment>


TCP and the Lower Bound of Web Performance [video] - <AUTHOR> https://www.youtube.com/watch?v=C8orjQLacTo

<comment><USER2> Very impressive how John Rauser tied all the relevant RFCs together to make his point on why to increase the initial congestion window. I specially liked his appeal to humility towards the end of the talk.

</comment><comment><USER3> Thought this presentation was well done and informative.</comment>


From Android to iOS: what I love, what I miss - <AUTHOR> https://medium.com/p/f5a2e903dfd1

<comment><USER2> You should get both an iPhone and an Android, with Google Voice to switch between one and an other :)</comment>


Here's what Muslim tech founders have to say about Trump - <AUTHOR> https://www.techinasia.com/muslim-founders-react-donald-trump-election-win <comment><USER2> "It's clear now that the average person is concerned they're not sharing the prosperity enjoyed by industries like tech. A constructive response would be to try and fix that instead of fearing everything President Trump will do in the future," he exhorts.</comment>


5 Reasons You Need to Learn to Program - <AUTHOR> http://blog.learnstreet.com/5-reasons-you-need-to-learn-to-program/

<comment><USER2> What a load of rubbsih,

Programming is automation :- Yes it is, but a lot of jobs in life are not, do the people who take care of the elderly and vulnerable need automation in their lives, hmmm an automated butt wiper, or picker uper...

PROGRAMMING TEACHES YOU TO BREAK PROBLEMS DOWN :- True it does but not all jobs or life in general is about problem solving. Also other jobs Cival Engineering is about breaking problems down, architects they use software, but do all need to know how to program to use the software.

PROGRAMMING JOBS ARE BECOMING MORE AND MORE ABUNDANT :- This is probably the only one I can't argue against.

YOU WILL EITHER BE AHEAD OR BEHIND :- Not really you will only be ahead or behind if your job requires you to use piece of x software. I am a web developer by trade, can't use excel for anything, never needed to. Used open office to do a few graphs but thats about it.

PROGRAMMING IS FUN:- It can be and normally is, but not for everyone. I find cooking dull, but you could argue the same points except the job one that you need to learn how to cook.

All this everyone needs to learn to program is a load of non-sense, people need to know how to use a computer, use the internet but people like me get paid to make software easy to use so that you don't actually need to worry that a user can't understand basic logic.

Its not an essential life skill, never will be.

</comment><comment><USER3> I wish I could get the 3 minutes back that I spent reading that. That belongs on an infomercial that runs on Comedy Central around 3am.</comment>


Google sees voice search as core  - <AUTHOR> http://news.bbc.co.uk/2/hi/technology/7982763.stm

<comment><USER2> how many people set up their browser to require as little typing as possible for normal browsing habits? I know I have.

I've considered going with voice recognition for typing but the software doesn't seem to be "there" yet.</comment>


Anatomy of a hack - <AUTHOR> http://www.theverge.com/a/anatomy-of-a-hack

<comment><USER2> Summary of process:

1\. Used mail.com, which was apparently vulnerable to some hack that allows resetting the password for accounts.

2\. Hacker was able to setup call forwarding for the person's phone, with only the email address to prove identity ( and perhaps information taken from emails )

3\. Hacker was then able to reset gmail account even with two-factor auth, by having the two-factor number read out via voice via call forwarding.

Email is pretty much the problem here entirely. Using an insecure email host, and having access to your email be able to access thousands of dollars worth of bitcoins... is terrible.

Do you trust email hosts in general? I certainly don't.

<comment><USER3> Related to #1: Mail.com doesn't offer two-factor auth, which is disgraceful.</comment></comment>


Stack Overflow is doing me ongoing harm - <AUTHOR> https://meta.stackexchange.com/questions/336526/stack-overflow-is-doing-me-ongoing-harm-its-time-to-fix-it <comment><USER2> SO is mismanaging this so awfully.

Also kinda funny that she gets fired for using the term 'they' and then Stack Overflow goes and talks to the media about her firing and refers to her as 'they'.

<comment><USER3> It's not just mismanagement of the situation, SO is actually behaving badly.

</comment></comment><comment><AUTHOR> OP here, disclosure: I worked with Monica for several years, so I know her professionally. Everything that I have read about this situation and how she was treated is appalling.

</comment><comment><USER4> Very happy this has come to the attention of hacker news.

As a regular contributor to SO it has really bothered me with how she was treated, I think with the support of the HN community we can make a difference.

<comment><USER5> Maybe you can give some back story, or point to where it's summarized fairly well? (maybe it was even on HN and I missed it?)

All I see here are a list of what SO did wrong, but only from one side, and not why they felt the need to do so (even if only explained post-facto).

As a member of the HN community, I think it only makes sense to attempt to get as much information as possible, lest this turn into and angry internet mob situation that no longer cares about details and facts. We have enough of those already.

<comment><USER6> [https://meta.stackexchange.com/a/335088](https://meta.stackexchange.com/a/335088)

</comment></comment></comment><comment> why-oh-why More context: [https://judaism.meta.stackexchange.com/questions/5193/stack-...](https://judaism.meta.stackexchange.com/questions/5193/stack- overflow-inc-sinat-chinam-and-the-goat-for-azazel)

However I'm not familiar with the situation.

<comment><USER7> Thanks. Sometimes posts are really confusing. Without context this to me seems like some random person complaining very generically about their employer...

For anyone else wondering: It's about someone that got their moderator rights removed from StackExchange after they were sceptical of CoC changes that involved preferred pronouns and such.

</comment></comment><comment><USER8> As time goes on, StackExchange is becoming less concerned about what their users desire, and less concerned about meta in general. I hope Monica is vindicated, but I expect StackExchange will continue down this unfortunate path. To my knowledge, there are no decent alternatives to what StackExchange offers.

</comment><comment><USER9> This posts builds on the previous HN discussion "Stack Overflow Inc. Fiasco: Timeline" from 17 days ago [https://news.ycombinator.com/item?id=21173643](https://news.ycombinator.com/item?id=21173643)

</comment><comment><USER10> It's the end of SO as we know it. If they don't turn this around it will demise slowly.

<comment><USER11> Seems exactly like SO as we know it.

</comment></comment><comment><USER12> I have no clue about this situation, but given the allegations, this looks like it would be better handled as a slander and libel case in court.

<comment><USER13> It looks like this is her trying to avoid having to go there. As far as I understand, slander & libel cases are also extremely hard to win for victims in the US, so they typically avoid them.

<comment><USER14> The Stack company also added forced arbitration to their TOS a year or two ago. That may be an impediment for her.

<comment><USER15> She opted out within the 30 day window, so her options remain open.

</comment></comment></comment></comment><comment><USER16> You got fired. Deal with it. Move on.

</comment><comment><USER17> She's been removed from a volunteer position at a company and threatens lawsuits. Good luck with that!

<comment><USER14> The removal is not the legal issue; s__t-talking about her to the press is.

</comment></comment><comment><USER18> SE and Chipps mistreated Cellio and were obnoxious about firing Cellio, but I don't see anything in that post about "ongoing harm". Ongoing harm would be if, hypothetically, people were harassing Cellio on Twitter or in meatspace over SE's slander, or if employers or customers shuned Cellio.

<comment><USER19> > were harassing Cellio on Twitter

[https://twitter.com/bitandbang/status/1182389562846384129](https://twitter.com/bitandbang/status/1182389562846384129)

She's not named, but the slander is obvious.

<comment><USER20> That is clearly directed at the people resigning in protest, not the person that got fired.</comment></comment></comment>


Lab Sharing? Thoughts? - <AUTHOR> Hey guys, sorry I have been a long-time lurker and was very nervous to post this. I made colabsci.com and have gotten good feedback from the people in my lab. Should I switch the concept to sharing lab equipment/skills/training to sharing any skills irl? For example, learning how to drive stick (stuff you can't learn on the internet). Would love to hear from this community! :) <comment><USER2> It's not immediately clear from the website if you intend to ship your lab equipment to me, or if you want me to come to your lab and use the equipment there. Frankly I don't see how either approach would work.

Edit: however, this would work for something like compute resources. For example, I might have a GPU server sitting idle for days, while I'm figuring out what to simulate next. Would be nice to allow access to it and make a few bucks.

</comment><comment><USER3> Bunch of fake testimonies, very attractive!

Can I see the research profile of the advertisers?</comment>


Please don't block everything but Googlebot in robots.txt - <AUTHOR> http://danluu.com/googlebot-monopoly/ <comment><USER2> Is there a technical reason that other crawlers can't just follow the googlebot rules? It's great that bots seem to obey the wishes of site owners, but I'm genuinely surprised that the yandex bot doesn't just follow the Google bot rule and ignore the general disallow rule.

<comment><USER3> No technical reason. Following robots.txt is purely self-enforced, crawlers don't even have to read it if they don't want to. It's just part of being a good netizen.

<comment><USER2> Thanks. That's what I suspected - I'm just surprised that yandex is behaving like a good netizen :)</comment></comment></comment>


Tracking PG&E outages by scraping to a Git repo - <AUTHOR> https://simonwillison.net/2019/Oct/10/pge-outages/ <comment><USER2> ETOR probably stands for Estimated Time of Restoration, i.e. the time at which the power will probably go back on again. A quick search of ETOR led me to [https://www.torontohydro.com/how-we-restore- power](https://www.torontohydro.com/how-we-restore-power), which explains how ETORs are calculated and even has a nice video on it.

</comment><comment><USER3> The San Francisco Chronicle used the data I scraped in their own visualization here, combining it with wind data: [https://projects.sfchronicle.com/2019/wind-outage- map/](https://projects.sfchronicle.com/2019/wind-outage-map/)

<comment><USER4> Nice. I used this a dozen times over the outage period. Thank you for your work!

</comment></comment><comment><USER5> Unix time stamps are generally considered to be UTC, but fair to ask of them to clarify. Everyone does their own thing with date time.

<comment><USER6> Unix timestamps are a _duration_ ¹; they're not in any particular timezone. They're "the number of seconds since midnight 1 Jan 1970, UTC" — but while I've used "UTC" there, you can also equally define it as the number of seconds since 19:00 on 31 Dec 1969 in America/New_York. It's the epoch itself that requires a timezone, not the duration since the epoch.

¹iiiish. Let's forget leap seconds exist.

<comment><USER7> Interesting fact - it was not midnight in Greenwich at the Unix epoch because the UK Government coincidently ran an experiment with staying on British Summer Time the whole year round from 1968 to 1971.

This lead to one of the hardest to track down bugs I ever encountered (ultimately came down to LocalTime(0, "London") coming out as 01:00 when 00:00 was expected)

<comment><USER8> Thank you for this. It is a random bit of trivia that may save the day for someone when debugging in future.

</comment></comment></comment></comment><comment><USER8> Are there any data centers in these areas? It would be interesting to tie this information to site outages to see who has proper fail over.</comment>


First Round Capital launches their version of News.YC - <AUTHOR> http://news.firstround.com/ <comment><USER2> at least they gave YCNews the credit, and the first round group is another startup epicenter, so it makes sense I guess to do the social news thing.</comment>


UK government to release funding for mini nuclear power stations - <AUTHOR> https://www.theguardian.com/business/2017/dec/03/mini-nuclear-power-stations-uk-government-funding <comment><USER2> What happened to Thorium reactors?

They were going to be the big new thing, and burn up all the old nuclear waste. Is it just the fact that the technology needs to mature a lot more.</comment>


Going Multi-Cloud with AWS and GCP: Lessons Learned at Scale - <AUTHOR> https://metamarkets.com/2017/big-cloud-data-aws-and-gcp/ <comment><USER2> One of the biggest benefits of Google Cloud is networking. By default GCE instances in VPC's can communicate with all instances across zones and regions. This is a huge plus.

On AWS, multi region involves setting up VPN and NAT instances. Not rocket science, but wasted brain cycles.

Generally, with GCP setting up clusters that span three regions should provide ample high availability and most users don't need to deal with the multi cloud headaches. KISS. You can even get pretty good latency between regions if you setup North Carolina, South Carolina, and Iowa. Soon West Coast clusters will be possible between Oregon and Los Angels (region coming soon).

<comment><USER3> I may be completely off here, but isn't this due to their underlying architecture decisions? That is, AWS from the start has kept all regions completely separate, so that problems in one region do not influence another. But GCP has has issues with failure across regions IIRC.

<comment><USER4> Having a software defined networking spanning across regions and failure cascades across regions are two different things. There's nothing preventing a vendor from presenting to you a single network, while they are actually distinct networks.

<comment><USER5> Having distinct networks in different regions encourages you to architect your application in a fault tolerant way.

<comment><USER6> Or the contrary. In most cases there is something to synchronize between regions, like a replica of the data.

With difficult interconnection of regions, it makes it somewhat harder to do, and it can easily end-up with "meh, AZs are good enough".

</comment></comment></comment></comment></comment><comment><USER7> If any Google Cloud people are listening I wish you had an equivalent to AWS's Certificate Manager. Provisioning a TLS certificate which automatically renews for eternity (no out-of-band Let's Encrypt renewal process needed) and attaching it to a load balancer is so nice compared to Google Cloud's manual SslCertificate resource creation flow[1].

To a lesser extent, it's also nice registering domains within AWS and setting them to auto renew. Since Google Domains already exists, it would be neat to have this feature right inside Google Cloud.

[1]: [https://cloud.google.com/compute/docs/load- balancing/http/ss...](https://cloud.google.com/compute/docs/load- balancing/http/ssl-certificates)

<comment><USER8> We hear you, while I can't speak to future products and features I can say we understand there is room to improve the SSL provisioning and lifecycle management story in our products and we are making investments in that area.

</comment></comment><comment><USER9> One thing that I liked with GCP is their recommendation for cost saving. I spun up a compute engine for a hobby project and within minutes they gave recommendations to reduce the instance size and how much i can save. I don't think AWS offers something like that. Correct me if I am wrong.

<comment><USER10> Even better are Google managed services (PubSub / Dataflow / Datastore), which scale up and down based on usage (cloud native products) and thus save money automatically compared to their equivalents in AWS (Kinesis / Kinesis Analytics / DynamoDB) which does not autoscale.

<comment><USER11> DDB recently added autoscaling -- [https://aws.amazon.com/blogs/aws/new-auto- scaling-for-amazon...](https://aws.amazon.com/blogs/aws/new-auto-scaling-for- amazon-dynamodb/)

<comment><USER12> It does not work well, it gives late responses

<comment><USER11> Really? Feel free to email me about that randhunt@amazon

</comment></comment></comment></comment></comment><comment><USER13> One extra point for tracking VM bills:

GCE bills are aggregated across instances. To get more detailed breakdown, you can apply labels to them and the bills will have label information attached in BQ.

Alternatively, you can leverage GCE usage exports here:

[https://cloud.google.com/compute/docs/usage- export](https://cloud.google.com/compute/docs/usage-export)

Which has per-instance per-day per-item usage data for GCE.

Disclosure: I work for Google Cloud but not on GCE.

</comment><comment><USER14> When it comes to GCP:

\- They have _Role Based Support_ plans which offer flat prices per subscribed user which is a much better model. [1]

\- Live migration for VMs mean host maintenance and failures are a minor issue, even if all your apps are running on the same machine. It's pretty much magical and when combined with persistent disks, effectively gives you a very reliable "machine" in the cloud. [2]

1\. [https://cloud.google.com/support/role- based/](https://cloud.google.com/support/role-based/)

2\. [https://cloud.google.com/compute/docs/instances/live- migrati...](https://cloud.google.com/compute/docs/instances/live-migration)

</comment><comment><USER15> >>> on AWS you have the option of getting dedicated machines which you can use to guarantee no two machines of yours run on the same underlying motherboard, or you can just use the largest instance type of its class (ex: r3.8xlarge) to probably have a whole motherboard to yourself.

Not at all. Major mistake here.

When you buy a dedicated instances on AWS, you reserve an entire server for yourself. All the VMs you buy subsequently will go to that same physical machine.

In effect, your VMs are on the same motherboard and will all die together if the hardware experiences a failure. It's the exact opposite of what you wanted to do!

<comment><USER11> I think two concepts are being conflated:

Dedicated Instances: [https://aws.amazon.com/ec2/purchasing-options/dedicated- inst...](https://aws.amazon.com/ec2/purchasing-options/dedicated-instances/)

and

Dedicated Hosts: [https://aws.amazon.com/ec2/dedicated- hosts/](https://aws.amazon.com/ec2/dedicated-hosts/)

<comment><USER16> At my current job, we're looking into DIs to reduce our SQL costs. With standard Spot/RIs, we're paying per-core for SQL Server. But with a DI, we're expecting to be able to license against the physical sockets instead.

> _You can use Dedicated Hosts and Dedicated instances to launch Amazon EC2 > instances on physical servers that are dedicated for your use. Dedicated > Instances are Amazon EC2 instances that run in a VPC on hardware that 's > dedicated to a single customer. You can also use Dedicated Hosts to launch > Amazon EC2 instances on physical servers that are dedicated for your use._

> _Dedicated instances may share hardware with other instances from the same > AWS account that are not Dedicated instances._

> _An important difference between a Dedicated Host and a Dedicated instance > is that a Dedicated Host gives you additional visibility and control over > how instances are placed on a physical server, and you can consistently > deploy your instances to the same physical server over time._

It looks like you can launch DIs on your DHs, or on any arbitrary host; but once you have a DI on an arbitrary host, only your VMs will run there; so a de facto Affinity policy. And any instance you launch on your DH is automatically a DI.

Is there a benefit to running DIs without having a DH? It sounds like having a DI gives you 90% of a DH. The DH gives you is a few hardware details (which might be essential for licensing), and like GP suggested would let you choose Affinity (or Anti-Affinity) between them manually.

 _As a result, Dedicated Hosts enable you to use your existing server-bound software licenses like Windows Server and address corporate compliance and regulatory requirements._

This is the first I'm hearing about DHs, and it sounds like that might be what we need, instead of the DIs we've been telling other teams about.

<comment><USER17> If you have hipaa reqs, your signing an agreement with Amazon will require you to host pii/phi on a dh

<comment><USER18> This changed [https://aws.amazon.com/blogs/apn/aws-hipaa-program-update- re...](https://aws.amazon.com/blogs/apn/aws-hipaa-program-update-removal-of- dedicated-instance-requirement/)

<comment><USER17> Wow. Thanks!

</comment></comment></comment></comment></comment></comment><comment><USER19> If AWS were to go to a per-minute billing cycle, they would be instantly more price-competitive with Google's offering. Or, to put it the other way around, those leftover minutes form a significant chunk of AWS's profit margin.

<comment><USER10> I don't think so. GCP's bill is usually about 50% of AWS's bill for same application, if you run it full hour (from my personal experiences and from several others as well: [https://thehftguy.com/2016/11/18/google-cloud- is-50-cheaper-...](https://thehftguy.com/2016/11/18/google-cloud- is-50-cheaper-than-aws/)). GCP has lot more cost saving features like seamless scalability, custom shapes, sustained discounts and so on. If you workloads span less than hour, GCP can offer more then 50% savings.

<comment><USER11> I refuted some of the networking claims in that article previously (I work for AWS). Especially the bizarre claims that you have to get a C4.4xlarge for 1gpbs... The 220 mpbs network cap claim is just not true. Just run iperf3 on any aws instance to a GCE instance and you can see greater than 220mpbs.

<comment><USER20> Honestly we all know that the small instances have terrible CPU that doesn't let you use the advertized 1Gbps anyway. Other than that, even if AWS let 1Gbps traffic go on for a while, you get throttled pretty quickly from my experience.

</comment></comment></comment></comment><comment><USER21> > _As we investigated growth strategies outside of a single AZ, we realized a > lot of the infrastructure changes we needed to make to accommodate multiple > availability zones were the same changes we would need to make to > accommodate multiple clouds._

Maybe he author means multiple _regions_? Multi az is so easy. Everything works. Multi region is much harder.

</comment><comment><USER22> Very nice writeup! A nice, detailed read that was easy to understand.

It seems to focus more on raw infrastructure (EC2 vs GCE) instead of each company's PaaS offerings. Obviously AWS has the front runner lead here, but would be super curious in a comparison of RDS vs. Cloud Spanner for instance. (pun unintentional, but then realized, and left in there)

<comment><USER4> This should be RDS vs Cloud SQL

</comment></comment><comment><USER23> Great thorough comparison and falls very into line with my experience. Definitely worth the read. Thanks!

</comment><comment><USER24> Off Topic: it's frustrating that these companies spend quite a lot of time and money learning about the complexities of their infrastructure but when you're interviewing at such companies, you're expected to have answers for everything and a complete strategy for the cloud.

/rant

</comment><comment><USER25> Great post! How difficult is it to switch from an AWS EC2 instance to the GCP version?

</comment><comment><USER26> Nice post! I will be using it as a reference.</comment>


Falsehoods Programmers Believe About Names (2010) - <AUTHOR> https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/ <comment><USER2> I have a friend who's a refugee from Afghanistan. Apparently they don't use surnames there (or at least his tribe doesn't). When he applied for a visa my city council shifted his first name to his last name and he had to come up with a first name on the spot. His name is officially Peter Abdullah now.

<comment><USER3> At my uni there is a student (from India, IIRC) that doesn't have any surname.

Some of our software didn't like that, so we checked her passport, and sure enough, her full name was merely her first name.

<comment><AUTHOR> Oh man, I really feel for her. Dealing with the various immigration agencies must have been a nightmare. I bet they ended up officially changing her name to "Firstname Firstname", which is what we tend to do in the states..

This bugs me, because if a name is supposed to be a unique identifier, then part of it's existence is to feed the ego. "This is ME! I am Jean Valjean!"

When you then you change somebody's name to fit your short-sighted database constraints you're pretty much saying, "You don't matter as much as our programmers' decisions matter, now move along 9430"

</comment></comment></comment><comment><USER4> Similar lists:

Falsehoods programmers believe about addresses: [https://www.mjt.me.uk/posts/falsehoods-programmers- believe-a...](https://www.mjt.me.uk/posts/falsehoods-programmers-believe- about-addresses/)

Falsehoods programmers believe about time: [http://infiniteundo.com/post/25326999628/falsehoods- programm...](http://infiniteundo.com/post/25326999628/falsehoods-programmers- believe-about-time)

<comment><USER5> Trying to compile a list of those at: [https://github.com/kdeldycke/awesome- falsehood](https://github.com/kdeldycke/awesome-falsehood)

Fell free to send pull requests! :)

</comment></comment><comment><USER6> Previous discussions:

[https://news.ycombinator.com/item?id=11370046](https://news.ycombinator.com/item?id=11370046) (1 comment)

[https://news.ycombinator.com/item?id=10255610](https://news.ycombinator.com/item?id=10255610) (13 comments)

[https://news.ycombinator.com/item?id=10094603](https://news.ycombinator.com/item?id=10094603) (1 comment)

[https://news.ycombinator.com/item?id=9239656](https://news.ycombinator.com/item?id=9239656) (3 comments)

[https://news.ycombinator.com/item?id=7365517](https://news.ycombinator.com/item?id=7365517) (2 comments)

[https://news.ycombinator.com/item?id=4079837](https://news.ycombinator.com/item?id=4079837) (5 comments)

[https://news.ycombinator.com/item?id=1438472](https://news.ycombinator.com/item?id=1438472) (138 comments)

Also:

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

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

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

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

</comment><comment><AUTHOR> I used to date a woman whose hippy mother decided that last names were slavery, she's the person who turned me onto this list. The experience really opened my eyes into the anglo/usa-centric nature of most app development best practices, and how complicated it must be to work as a localization engineer.

She suffered quite a bit, any call to a government agency, especially FASFA student loans (btw fuck you FASFA, fuck you), would often end up in tears after hours of pleading to them she was a real person, or explaining "just freaking search me this way, it's how they did it the last time I spent 2 hours on the phone with you). The only benefit is that having only one name makes it rather difficult to google/facebook stalk you.

tl;dr: Not everybody has a name like yours. Don't use "first name", "last name" for somebody's name. Just give it a 512-byte or larger UTF8 field, and move on.

<comment><USER7> Tangentially, I'm always slightly uncertain about what to put when asked about my "first name" on official forms. While I have a first name it is not and has never been the name anybody has used for me. I've always gone by my second name, and if you where to ask for me by my first name no one would know whom you are talking about.

Basically do you want the the string returned by name.split()[0] or do you want the string which is the most commonly used identifier for me?

<comment><USER8> I'd say you want to be consistent within the same context. Otherwise it's their own fault if they can't ask you for something more specific.

E.g. if they want a display name, they should ask for a display name. Most of the time people need only a few different roles, and you can always pre- populate default values based on doing a simple name split and letting people suggest more approriate alternatives.

Upside is that asking for specifically what they need addresses other concerns, such as e.g. parents signing up to something on behalf of their children, or someone needing to put another name of a shipping label.

</comment></comment></comment><comment><USER9> This makes me think you should maybe just have a few fields for names for different use cases and maybe provide an example next to it to see it in context.

      Name on Invoices       John Miller, PhD   John Miller, PhD / Ocean Drive 13 / Tahoa 12345

      Name for Phone Calls   Mr. Miller         Hello Mr. Miller, how may I help you?

</comment><comment><USER10> Ugh this again. No. People have a first name, and they have a last name. Each name consists of a reasonable number of ascii characters. If they decide they are special and don't wish to conform to this scheme how is this my problem?

What if I decide my "name" is the first billion digits of PI? Are you going to add that to the list of names that you need to support? No?

<comment><USER11> I hope you are not downvoted.

In economics, people talk about the problem of 'sorting and labeling' and how that is an unconscious reaction (which does unfortunately lead to bias) but it helps immensely in the overall productivity of an entire system.

When people expect you to design special systems which increases the overall entropy, I wonder if they realize that you too incur a cost for creating that system. I say this as someone whose name is constantly butchered during my dealings with American entities, and I am not generally asking them to modify their system to accommodate my name so it remains unaffected. Thankfully, in most cases, I actually have a choice of whether I should continue having dealings with such entities. (I don't know what happens in cases where you don't, like, say the DMV).

<comment><USER12> If the argument is economics and system complexity you should favour a single name field over first and last name though. It's one of those rare occurrences where something is both simpler and the better option.

<comment><USER11> But is it the better option? Suppose x% of the human population has a name which can be reasonably decomposed into first and last names. I honestly don't know what x is, but say it is about 90%.

When you store it as a single string, which order will you choose? Will you have delimiters between them? Would they still be in effect when the person's name has more than 2 parts? If you are ever in a situation where you need to sort by name, will you do it by first or last name? What if there is a need for the other option to the one you chose? Can you reasonably guarantee that you can identify family members if you ever need to? When the customer tells their name over the phone, will it slow down your customer service people if you display the entire name in a way which they are not usually familiar with?

<comment><USER12> 1\. There is no order, just use whatever the user entered. In general don't get smart with this data just treat it as a single blob of text.

2\. Sort by the whole thing

3\. No you can't guarantee identifying family members any more than with a first name last name system. If you need that it should be an additional part of the system. Presumably for the 90% of people who does have a typical first name, last name combo you can still identify family members in the same way.

4\. Just introduce free text search for this field if you need to find people.

<comment><USER11> I realized that I am in agreement on point number 1 - don't get smart with this data, in which case the other points are not very relevant.

But suppose you are working at a place where people are keen on getting 'smart with the data', your replies do increase the entropy if only to the extent that 'we have this idiot programmer who thinks he is too smart to use first and last names as we have always done and is breaking all our reporting systems and is causing hell for our customer service agents'.

:-)

<comment><USER12> Yeah if you are intent as a business on getting smart with the data it's much easier for everyone to just get smart upfront and ask the user for the data you want. This is not very inclusive though and has a clear anglo american bias. One might argue that this is a manifestation of the lack of diversity in the industry as whole. I think the list is aimed more at changing the perception and believes about names so that systems designed from scratch change rather than aiming to change existing systems that have a clear first name/last name convention established already

</comment></comment></comment></comment></comment></comment></comment><comment><USER13>
        names are central to our identities

I have never experienced this.

</comment><comment><USER14> Previous discussions on HN:

\- [https://news.ycombinator.com/item?id=1438472](https://news.ycombinator.com/item?id=1438472) (138 comments)

\- [https://news.ycombinator.com/item?id=10255610](https://news.ycombinator.com/item?id=10255610) (11 comments)

</comment><comment><USER15> I would functionally disagree with 40 - by the time someone is in a position to be referenced by a computer, they'll have some way of being referred to, even if it's just a number. It's hard to imagine a truly nameless slave that is kept off the grid, yet still has a computerised individual reference somewhere...

<comment><AUTHOR> One could change #40 to: You need your customers' names. I look at a name the same way I look at a username, more frequently than not it's a hassle you don't need to solve. In many applications a username, or even better, an email address, is the best UUID for a user.

We design apps to collect names by default, even when we don't need them and will never use them for any purpose, or at worse, the purpose we use them for is violation of privacy.

<comment><USER11> Suppose someone calls in and tells you they want to cancel but forgot which email address they used for signup, what is the next piece of information you ask them?

<comment><USER14> The easiest solution is to have their address on file, and send them an actual letter to confirm the cancellation.

<comment><USER11> And if there are multiple tenants (e.g. roommates), who will it be addressed to? Just wondering if the issue is as simple as leaving the entire name field as a nullable string.

<comment><USER8> Your _address_ entry needs to be flexible enough to accommodate pretty much arbitrary text. There are _no_ universally required fields for addresses. Zip/postal codes are _almost_ universal, but not entirely. E.g. "name; town; country" is sufficient some places; "name; postcode + town; country" is very common, but it can also go to the opposite extreme of a ridiculous number of separate items, so it's best to just give a number of lines and width that is constrained by your _address labels_ , and let people figure out how best to address things to themselves.

If you need to make you address pretty much free form anyway, it makes practically no difference to ask people to put their address _including name_. If you ask for a name, the problem is that the name they may want you to use in other contexts is not necessarily the same name that people they live with will recognise them by.

E.g. consider a trans person that want you to know them as one gender, but isn't out to their family.

The safest in general is to not ask for "just" a name, but ask "what should we call you in context X?" but in many cases you can forgo the name by not synthesising data items (such as an address) from multiple parts, but letting users provide the whole thing as one entity (you can still pre-populate based on most common patterns), which as a bonus saves you from other stupid mistakes.

<comment><USER11> I agree with everything you are saying, but you ended your comment with "what should we call you in context X?". "What should we call you in context X" is, at least in the context of the current discussion, the same as a non-nullable string for the name field. Or am I misunderstanding your comment?

To add to my previous comment, what if two or more people from the same address are signed up for your service? How would you help them distinguish between the correspondence each one gets from your company?

<comment><USER8> I'm saying that you need to be more specific. Just asking for name and having a non-nullable field for it runs straight into this problem, because the user will not know whether you are asking for their legal name, what they want to be called on the site, or what they want you to put an address label when physically mailing them, all three of which may be different.

> To add to my previous comment, what if two or more people from the same > address are signed up for your service? How would you help them distinguish > between the correspondence each one gets from your company?

By asking "what should we call you when mailing you?" (if you insist on a name field) or "which address (including name) should we use when mailing you?" You could then if you wish pre-populate any variation of name you might have on file for them in those fields; the point is that the more you focus on gathering the specific information you need for that specific context, the fewer wrong assumptions you will be making about what the user would actually prefer.</comment></comment></comment></comment></comment></comment></comment></comment>