A blogging style guide - <AUTHOR> https://robertheaton.com/2018/12/06/a-blogging-style-guide/ <comment> vaer-k > 29\. Be sparing with pronouns in technical writing. It's better to repeat a > noun than have it be unclear what "it" refers to.

This is the most valuable piece of advice I hope most readers will take from this article for their technical writing.

<comment><USER2> This advice ("avoid unspecified pronouns") also applies to communicating in text, period. SMS, IRC, Slack, in all of them you can avoid a lot of confusion by being clear in your nouns.

BAD: "We're hooking up the refresh token to the API next week. It was broken by a bad commit, but that is fixed" GOOD: "We're hooking up the refresh token to the API next week. The token was broken by a bad commit, but that commit is fixed"

This advice is one of the two most important tips for clear communication in text I know of. The other tip is: don't ask an A or !A question - you'll just get "yes" or "no" as an answer. Instead, ask to confirm A and not B.

BAD: "Are we releasing this week? Or next week?" GOOD: "We are releasing this week, not next week, right?"

This second tip, however, requires a lot more work to make natural.

<comment><USER3> The A or !A thing never fails. But it's more a hack to work around other people having poor communication skills. It's also good advice to pay attention to the question being asked of you, and actually answer it. So if someone asks you, "Are we releasing this week? Or was it next week?", don't reflexively answer "yes" or "no".

</comment></comment></comment><comment><USER4> Non native English speaker writing: I have perfect understanding of the language and I can even differentiate between different accents, but one of things I struggle with the most is written communication. I don't seem to be able to express my thoughts as fluidly as I can orally. My brain just freezes out whenever I try to write "complicated" sentences which I find extremely irritating. I don't know why this is and would love some pointers on how to improve my (and others in the same boat) writing skills.

<comment><USER5> In my freshman creative writing class at university, my professor recommended using stream of thought and it seemed to work very well.

Just literally start writing everything you think, as you think it, everything, just write it. Don't fret over spelling or even bother with punctuation, no matter how disjointed, just stream and eventually you begin to somehow fall into focus and the words will flow much much better.

Once you're finished and have gotten your point across, just go back and edit.

We all kinda looked at each other and rolled our eyes because it sounds so strange, but it really does seem to work.

<comment><USER6> For those interested in learning more about this method, Peter Elbow is the relevant author. His books _Writng without Teacher_ and _Writing with Power_ go into more details.

<comment><USER7> > _Writng without Teacher_

Feel like you might have taken the "don't fret over spelling" part of the method a bit too literally here.

<comment><USER8> I have to admit I am a little bit disappointed that its not the actual title of the book

</comment></comment></comment></comment></comment><comment><USER9> I love that the second point is basically:

"No, what you write won't matter, but nothing else does either, so go ahead and write."

Curiously, that makes me want to write more.

<comment><USER10> Do a thing for yourself, not others, and most of the reasons not to do the thing seem to fade away. If I truly want to write another Scheme interpreter for fun I just do it now, instead of thinking "several thousand people have already done this, it's useless to do again."

<comment><USER11> There's only so much a person would do for themselves though. I'd like to think most people eventually would want to work on something that has an impact on at least one other person. I would say having a balance of projects for oneself and projects that provide utility to other would be optimal.

</comment></comment></comment><comment><USER12> Well timed – I've been trying to get back into blogging, as a way of sharing and giving back, as well as improving my personal 'brand'.

I was never really happy with the visual format of my site, which I think put me off writing at times - "if it were me, I'm not sure I'd read this in this format, it's too visually taxing". However with a quick style change to something much more basic, I'm feeling much more confident.

I think my final hurdle, which this article may help with, is my writing style. I get the impression that my 'style' changes fairly regularly, or depending on the topic or post I write for a different audience. This likely doesn't matter too much for those visitors who come for a single post and move on, but anyone who would like to peruse around may get a slightly jarring experience.

<comment><USER13> This is a similar issue to my own one; I'm way too easy to distract with the promise of neat tech or extra features, so end up spending longer coding the site than actually writing anything on it.

Wonder how many other developers end up falling into that trap?

<comment><USER14> I did, and realized that I'd spent all this time that was meant to be for writing on coding / finding cool tools / setting things up. Guilt overpowered the fun in this and I threw it all away and just installed Wordpress. I still play with the tech, but in a different time block, away from the writing itself.

</comment></comment></comment><comment><USER15> So I used to have a blog, but I felt this pressure to publish stuff regularly. And that showed in the quality of posts I wrote; shitty, unsolicited articles about nothing. And when I didn't have enough content (whatever that means), I just filled it with random garbage. I've deleted that blog entirely since then.

I've also come to the conclusion that there are two kinds of posts - regular, essay-like blog posts and just random thoughts. These random thoughts could just be 1-2 lines or just a paragraph. You don't need to develop them into a full article. Twitter is designed for this, but Twitter is also suitable for a lot of other things, so you shouldn't feel like you can't have these in your blog.

Maybe I should write a blog post about this lol. I've been collecting topics to write in a text file so that I won't run out of stuff to write. But I now think it's perfectly fine to go 3-4 months without an article, until you feel like writing one that's worthy. I know this is a bit contradictory to point 2/39 in this post, but I just thought I should share.

<comment><USER16> I remember when you could just throw just anything you'd like up on a site and call it good. Curating was (or could be) part of it, but if you wanted to say, "fuck curation" you could. It was YOUR website; it's not a curated exhibit in a museum. Just be an amateur at something. Make a lot of noise!

<comment><USER17> I think that's ok if you're writing for yourself or for a bunch of friends.

But good blogs with steady readership generally curate. Readers gravitate towards quality (because time and attention span are precious) and lose interest fast if the quality is all over the place.

Most bloggers write more posts than they actually publish. The published ones are the ones that pass muster. We don't see the stuff in their drafts folder.

</comment></comment></comment><comment><USER18> Slighty off-topic but I find (as a non-native English speaker) the whole deal with "he/she" to be super annoying when reading. Especially when the gender is basically not important such as when talking about what the dentist said (or w/e). Is there any trick so to speak to avoid such situations?

Also, in Swedish we have "he/she/* = han/hon/hen". Which is soo useful and I am still kind of amazed that the term "hen" is a relative modern invention. I wonder how in earlier days people referred to other people when the gender was not the main focus. Maybe it was always more important before? Or was perhaps the use of titles (the Dentristess..?) a way to denote gender an important communication tool?

<comment><USER19> Just use the generic he[1]. It's classic and has the benefit of not injecting politics into an unrelated issue.

[1]: [https://en.wikipedia.org/wiki/Third- person_pronoun#Generic_h...](https://en.wikipedia.org/wiki/Third- person_pronoun#Generic_he)

<comment><USER20> So the problem is that there's no way to disguish the "generic" he from the "gendered" he, and it is very easy to read everything that uses the generic as being gendered, and then you suddenly have a world where only guys exist, which is probably some sort of political statement.

The singular they[1] has precedent going back to the fourteenth century. Just use that.

[1]: [https://en.m.wikipedia.org/wiki/Singular_they](https://en.m.wikipedia.org/wiki/Singular_they)

<comment><USER21> > and then you suddenly have a world where only guys exist, which is probably > some sort of political statement.

I wish people who felt about that strongly and wanted to make a political statement just used the gendered she creating the fictional world where only girls exist. That would have been so much simpler and avoided so much pointless arguments over the grammatical number and gender of pronouns.

</comment></comment></comment></comment><comment><USER22> > Many articles begin with a human framing, even those about highly technical > topics. Having established a relatable hook, the author quickly moves on to > the general point of the piece, before returning at the end to the mid- > Western accountant they opened with.

Radically disagree with this. Starting everything from recipes to teardowns with a story about your first dog is getting to be a real curse of the internet lately.

<comment><USER23> If it's too artificial, that's right. But, answering the question "why am I blogging about that? Why is that important?" is a great way to start an article. And, most of the time, you can do it with a story-like setup.

<comment><USER24> I think doing so is a major mistake. The reader found the text through either searching or reference (like a link on HN), and thus the answer "why am I reading this" is already provided before they even loaded the site. It is much better to hook the reader with what makes the text unique, confirming the decision to continue reading, and then further down explain why this is important, the history, and why the author is writing about it.

<comment><USER23> Indeed, but IMO that's the role of the "chapô" (not sure about the English word there; abstract? leading paragraph? I mean the short first paragraph, sometimes written in a different font, that's here to engage the reader). So, in an article titled "is blogging still relevant?", that first paragraph could be something like

"Contrary to popular belief, blogging is still a viable economic activity nowadays. Finding readers may be harder than before, and require some more efforts from the reader, though".

And, then, have your article start as a pure story :

"You're in front of your computer, facing the blank screen. Finding ideas is hard, today. You start asking yourself "Does it even make sense? Bah, nobody will read my prose anyway". Then, you close your word processor and look for the new cat video, thinking it's a better use of your time. Well, you couldn't be more wrong. Blah blah..."

OR, after the leading paragraph, you could still use a narrative stucture (setup, problem, attempts to solve the problem), but in a low profile version, ie without the made up character:

"Numbers don't lie: there are 10 times more blogs nowadays than 5 years ago, and people spend 5 times less time on blogs, since they spend most of their online time on facebook or instagram. One might wonder if starting a new blog today still makes sense. Well, first, blah blah..."

</comment></comment></comment></comment><comment><USER21> Do people write (blog) for themselves any more? This blog post frames the whole experience as an extroverted attempt to please the audience that is not yourself. Which is totally fine if you regard blogs as a medium directed primarily outwards, at others. I am just curious whether anyone writes primarily for themselves (in order to better organise their thoughts, or leave a reference for their future self), where any readership is purely accidental, not the raison d'etre? I know that I do.

<comment><USER25> If time allows it and I want to ensure I understand some concept, explaining it to someone tend to be very useful. Writing a blog post is then a great way to do so without requiring one of my friends to listen!

I do this without even publishing the posts. As mentioned in one of the other comments, I am vary of making these accessible for the public due to lack of "oversight". I feel like there's a responsibility when sharing information, and if I'm not 100% sure what I've written is correct, I don't want to mislead people. And even if correct, one should really ask themselves if it actually adds something to the topic which is otherwise not easily accessible. I think this is especially important to ask today when there is so much information already available.

Hence I actually think writing blog posts as means of understanding is a really goof approach; whether or not the piece should be made public is something that should then be judged case-by-case.

<comment><USER26> vary -> wary

goof -> good

:)

<comment><USER25> Cheers :) Autocorrect got me real goof!

</comment></comment></comment></comment><comment><USER27> This is great, although I'd suggest people steer clear of Strunk and White -- it's ancient and full of nonsense.

Instead, try Steven Pinker's "The Sense of Style", "Artful Sentences" by Virginia Tuft, and a new favorite, "First Write a Sentence" by Joe Moran.

<comment><USER28> > This is great, although I'd suggest people steer clear of Strunk and White > -- it's ancient and full of nonsense.

Could you provide an example?

<comment><USER27> This is a good place to start, and you'll find some defences on the same page:

[https://roomfordebate.blogs.nytimes.com/2009/04/24/happy- bir...](https://roomfordebate.blogs.nytimes.com/2009/04/24/happy-birthday- strunk-and-white/#geoffrey)

This is a more complete set of criticisms.

[http://www.lel.ed.ac.uk/~gpullum/50years.pdf](http://www.lel.ed.ac.uk/~gpullum/50years.pdf)

Also see Language log, which has many posts on the wrongness of S&W.

EDIT: If you're not familiar with Pullum, he's the co-author of the Cambridge Grammar of the English Language and probably the most respected grammarian alive today.

<comment><USER28> I found the comment section on the NYT blog more intriguing than the article.

The arguments brought forth by Pullum (I don't appreciate your appeal to authority) are completely ridiculous, examples:

> .. both authors were grammatical incompetents.

There are many ad hominems of this kind in the article.

> No force on earth can prevent undergraduates from injecting opinion. And > anyway, sometimes that is just what we want from them.

Whether you should write subjectively surely depends on the type of text that you are writing. Providing style advice based on expectations of which _urges_ undergraduates can't resist is laughable.

> "There were a great number of dead leaves lying on the ground" has no sign > of the passive in it anywhere.

The book does not claim that this sentence is in passive form at all: "Many a tame sentence of description or exposition can be made lively and emphatic by substituting a verb in the active voice for some perfunctory expression as _there is_ , or _could be heard_." (cited sentence follows)

Pullum also cites three works of literature from around 1900 that do contain the phrase _none of us_ exactly once (?!) followed by a plural verb to make the point that _none of us_ should be followed by a plural verb.

> "The copy editor's old bugaboo about not using \"which\" to introduce a > restrictive relative clause is also an instance of failure to look at the > evidence. Elements as revised by White endorses that rule."

I don't know where he found that rule; my edition of the book does not contain it.

For that article Pullum gets no respect from me. He set out to bash the book and its authors with ad hominem arguments, falsifications and far-fetched proof.

<comment><USER29> You asked for sources for an opinion on a subjective topic, you're not allowed to pull the "appeal to authority" card for being given exactly what you asked for.

<comment><USER28> Of course I am allowed to! Pullum being a respected grammarian does not substantiate the opinion that S&W is "ancient and full of nonsense."

</comment></comment></comment></comment></comment></comment><comment><USER30> Many years ago, i added a script to my blog to scan for certain words and throw an error if I ever use them.

Earlier this year, i was having trouble publishing my article. No matter what I did, it would simply refuse. I try locally with a sample text, it works fine. I spent hours testing, and blaming technology until I reread the error logs carefully:

> The word "Viviparous" is not allowed in this blog.

<comment><USER31> Why did you block "viviparous"?

</comment></comment><comment><USER32> As a female computer programmer called Julianne, I chuckled at point 18.

</comment><comment><USER33> Robert has an awesome blog! Stuff like this makes me appreciative, but also jealous of people who can have the skill to put concepts and thoughts into simple and eloquent words.

It's been almost two years since I've started my own little corner of the internet and of course, it initially it was somewhat awful, but I'm also happy to see my writing (and that corner) improve gradually. I'd recommend to anyone to do the same!

</comment><comment><USER34> Perhaps one of the more helpful / useful things I've read in the last few weeks.

My personal rule of thumb, which arcs over a number of the finer points, is:

"It's not what you say, it's what they hear."

So when it comes to humor, pronouns, self-deprecation, etc. you have to step back and crank up the empathy. Will they hear what you intended, or might you be misinterpreted / misunderstood?

</comment><comment><USER35> Good input and definitely worth considering. Bookmarked :)

I really do dislike #18 though:

      "If you need a quick name for a generic fictional character,
      consider using one from a culture or gender that you usually wouldn't.[..]
      the cost of sometimes calling your imaginary computer programmers Julianna is zero."

First of all, there's a often a good reason you usually wouldn't: It's not realistic. And many readers will pick up on that and be annoyed. So the cost is not zero.

More generally, I think truth matters, and talking about the world as _it is_ does not mean we don't want change. Pretending the world is somehow "better" than it really is does not help anyone.

<comment><USER36> You're free to dislike it, but your conclusion "it does not help anyone" is objectively false.

It actively does help many people. There's a reason why marginalized communities care about "representation". Seeing people like themselves represented in the mainstream helps a marginalized individual see the path to an advanced level in an industry where they are a minority. It's inspiring. It keeps them trying despite meeting a roadblock that their other peers may not encounter. It may not be realistic, but representation is welcoming to minorities, and not really harmful to well-represented folks.

Just because it doesn't help you, doesn't mean it doesn't help anyone, which is a good thing to keep in mind in general.

<comment><USER35>
      "You're free to dislike it, but your conclusion "it does not help anyone" is objectively false."

Well, you think that, but you don't actually know. Even if it helps in some ways it could have downsides (for the individuals or the society at large) making it a net loss.

      "Seeing people like themselves represented.."

Probably, and that's all fine and dandy. It's possible to do that without pretending. It's the misrepresentation of reality id dislike, not the diversity itself or even the highliting of it.

      "Just because it doesn't help you.."

That's very condescending. Also, I'm sure I'm in _some_ minority if I look hard enough :P

<comment><USER37> Minority in any meaningful sense, which is what we're discussing here, is something felt. Seeing reality distorted toward your representation is something you can feel, because it's otherwise been off-kilter and absent throughout the rest of your spacetime, in a million little ways.

If you don't feel it -- or think you have to dig deep and look, as you suggest -- then, I love you, but you don't really understand what is being talked about here. That's not a barb or a take-down, nor anything the you should feel bad about, but it is a fact about the conversation you're trying genuinely to have.

No pressure, but this is a really good read! [https://sindeloke.wordpress.com/2010/01/13/37/](https://sindeloke.wordpress.com/2010/01/13/37/) It was the very first thing I accidentally came across back when I used to moderate a forum, before I realized there was anything to figure out about these conversations. I'm grateful for any consideration or attention you've given to this comment, as I know that we're all stupid-busy and distracted in this world of our. Cheers :)

</comment></comment></comment></comment><comment><USER38> I've been writing for a while (few years, 200+ technical posts) and I have to admit, I don't follow most of the advice in that guide.

I pretty much go with:

Explain the why, show the how, make it as concise as possible, and whenever possible share shorties from real world experiences to make it relatable to a use case.

Also, up until writing this comment I didn't even realize I was doing the above. In other words, I don't set out to do that for every post. It just comes out like that naturally because most of my posts are based on experiences instead of forcing or trying to invent a blog post.

</comment><comment><USER39> When I wrote one blog article a week I tried to write small pieces with actionable content.

Explaining render props in React.

Explaining JavaScript promises.

Explaining Webpack's offline plugin.

Often with code examples.

</comment><comment><USER40> Thanks for posting that, it sums up a lot of points I always have in my head when I'm reading other blog posts but couldn't quite put my finger on it.

I really wish more people would especially take the advice of 11 and 12. Too many articles (Main offender being posts on Medium) are just made unreadable by using memes, gifs and swearing.

</comment><comment><USER41> """It's fine to use a thesaurus to look up an alternative word for "clever" because you already used "clever" a few sentences ago. Just don't come back with "meretricious"."""

Good grief. I don't have a thesaurus, but do they really give those as equivalents?

<comment><USER42> They give many (all?) alternatives. It's up to the writer to pick the word they want and usually inexperienced writers will pick a complicated word that makes them seem clever.

</comment></comment><comment><USER43> The post provides useful set of rules to follow when writing text. I want to add another one which I have found to be beneficial to my work: the write-good linter for English prose ([https://github.com/btford/write- good](https://github.com/btford/write-good)). Using linters for writing text helps to systematically avoid transcribing everyday speech into written text. A habit which is widespread among people who write infrequently and without a peer review.

For me the best workflow is to pass a text document to the linter before the build/deployment procedure (after finishing all writing work!) and modify the highlighted entries. As a result I can see which sentences can be phrased in a way which improves their structure and ultimately the quality of the text.

</comment><comment><USER44> I see a lot of great tips, and I believe that anybody who wants to touch up on their writing skills should bookmark this page, especially for later editing. For the tips about humour, I have to strongly agree. Badly executed humour just comes off as confusing or unprofessional (or both!).

</comment><comment><USER45> My problem is editing. I'll write an article, do a revision, then let it collect dust.

I don't really believe in posting a long form article that hasn't been reviewed by someone who understands the topic. I almost always leave out some not-so implicit knowledge or don't expound enough on the more interesting points. It's hard to address these types of issues without a fresh pair of eyes.

Most of my peers don't know how to effectively get through a 10 page pdf and give only the most useful feedback. I feel like they are scared of being overly critical or think I'm expecting they invest more than a single read through and thoughts.

Maybe I'll go back and give the third draft on some of these articles a try anyways.

<comment><USER46> For editing, one thing that has helped me is learning sales copywriting and direct response.

Copywriting forces you to trim the cruft and makes you take the reader's perspective. Their time is valuable so you need to be entertaining and engaging, AND you need to get to the point fast.

Tested Advertising Methods & Scientific Advertising are just some of the classic books about sales copy.

I don't know what topic you're writing about, but sometimes you really just need to get your work out there, despite it not being perfect.

I spent too much time writing and re-writing this article on procrastination ([https://medium.freecodecamp.org/procrastination-sucks-so- her...](https://medium.freecodecamp.org/procrastination-sucks-so-heres-the- eat-that-frog-way-to-powerful-productivity-543b07ecf360)) till I finally said "f--- it, I'm going to write this last section about finishing and shipping, then hit the publish button"

<comment><USER45> I'll give copying writing a try! Letting an article sit seems like it might be needed for self editing. At least for me specifically.

> I'm going to write this last section about finishing and shipping, then hit > the publish button"

Fitting. Nice article as well!

</comment></comment></comment><comment><USER47> There is some good advice in here, some which I myself stumbled across after trial and error.

But 39 points?!

May be it's just me but whenever I see a list with over 10 items, I just get so tired when thinking about it. Ultimately it just gets filed away, never to be referred again.

I wish the post started out saying "9 things to get your writing style better" instead of "...39 ways to make your blog..."

In fact, even 10 is a long list. These days I try not to make lists more than 5 items long. Even shorter when it comes to list of things to do. Of course, each item can have some sub-items, if needed.

Edit: auto-correct mistakes and rewording

<comment><USER48> I was about to criticize you for not strengthening your attention span, that maybe sometimes you really do need 39 points... but on closer reading, I agree this could have been trimmed down. At the very least, 34 - 36 are variations of the same theme, and I'd simplify the entire section on humor down to just point 25: "It's better to be clear than funny."

But it seems like this was written as 39 points that help the author when they write, and it just happens that many of the points that help them are also useful to others. There's a lot of really good stuff in here & I wouldn't dismiss it just on length.

</comment></comment><comment><USER49> He should have said about the thesaurus: it's only for reminders -- don't use a word from it you would not have used; your readers probably won't know it either.

And, "Elements of Style" is a manual on how to lose confidence in your writing. Read Geoff Pullum's essay on what he calls "the nasty book": "The land of the free and The Elements of Style", [http://ling.ed.ac.uk/~gpullum/LandOfTheFree.pdf](http://ling.ed.ac.uk/~gpullum/LandOfTheFree.pdf)

<comment><USER50> Let me just add my take here. You don't have to agree with it. But it seems unrepresentative for this to be the only remark about the Elements of Style.

I started to read the PDF you link to, "The Land of the Free." I found myself disagreeing with sentence after sentence. It doesn't help that he uses Strunk's first edition, which is very, very different from the famous second and third editions (my favorite). The edition he looks at is just Strunk. There is no White.

\- Strunk and White did not write it together. Strunk was one of White's professors. Strunk had a homemade textbook. Strunk died. Decades later, White's publisher asked White to take Strunk's old handbook and rewrite and add some stuff. White did. The second edition. I can't remember if I have read this edition. I own the third edition and have read it over and over.

\- When I look at the first edition online, it is much less inspiring. It has a lot more tedious tidbits and completely lacks the second half that White added.

\- Even the third edition has stuff that I'm not sure is that important. But for me the overall gist was groundbreaking. Things like shorter is better. Don't try to be fancy and draw attention to yourself. Basically, writing is not some competition for fanciness. Many people think it is, but if you are trying to write for the sake of the reader --- instead of just to make yourself look good --- you will try to write efficiently and clearly.

\- To me this was groundbreaking, because in not a single English class was this book ever mentioned, the overall teaching of all my classes was totally different, and the output by most of the world (blogs, textbooks, emails, whatever) seems to indicate that they have never read Strunk and White at all. "The Land of the Free" seems to say the opposite, that the Elements of Style is oppressing everyone, that most people are following it. Maybe in his neck of the woods, but not anywhere I have been.

<comment><USER49> It is clear that you were not paying attention to what you were reading.

Pullum compared Strunk's edition to White's rewrites, and demonstrated White's disgraceful changes to his teacher's better writing.

<comment><USER50> No, I just stopped reading after a while. At the beginning he says he used the free edition, which is only Strunk. Your verbal abuse only reinforces my opinion that something is amiss with the anti-Elements stance.

</comment></comment></comment></comment><comment><USER51> Great tips on writing, made me want to read more from the author and I found his post on WeSeeYou democratizing de-anonymization hilarious and thought provoking [https://robertheaton.com/2017/10/17/we-see-you- democratizing...](https://robertheaton.com/2017/10/17/we-see-you- democratizing-de-anonymization/)

</comment><comment><USER52> Can someone expand on this?

> There's a three-way tradeoff between establishing credibility, being honest > when you aren't an expert, and sounding like a douche. For example: "No, I > didn't go to writing school. I learned my trade at the University of Life, > the School of Hard Knocks, and the physics department at St Catherine's > College, Oxford University."

Is the example meant to be douchey or not?

<comment><USER53> False humility. "I'm unqualified, except that I'm extraordinarily qualified."

<comment><USER52> To me it comes across as self deprecating e.g. I am very qualified in something but it isn't writing which is the relevant thing in this context.

Goes to show how tone can come across differently than you think.

Anyway aren't Oxford departments separate from colleges?

</comment></comment></comment><comment><USER54> Thanks for the post. I really like point 2: "If you're wondering whether you should write a piece at all, you probably should"

If the topic is something you've just learned, it can be helpful to write about it right then versus a week down the road. The topic will feel more meaningful, and your less likely to downplay your own accomplishments.

</comment><comment><USER55> > 20\. Alternatively you can also alternate between "he" and "she" and toss a > coin to see who goes first.

Please, don't. Pick a single pronoun and stick to it. The alternating between he and she has left me confused for a minute on more than one occasion.

If you must be politically correct, why not use 'they' instead?

</comment><comment><USER56> > _Stay away from memes - they 're just cliches propagated at the speed of > Twitter. Never do anything to "all the things"._

:tada: A standard technical post on Medium is a couple of meme-images with no context throughout :ok_hand:, and emojis absolutely everywhere. :partyparrot:

\- Commented with :heart: by Mats

</comment><comment><USER57> Loved this style guide. As a non-native English speaker, I think it's even more important to be mindful of your style, so you don't continuously use a limited vocabulary or small set of idioms.

I would have liked some good/bad example sentences for some of these.

<comment><USER44> I think number 26 was an example of bad humour.

</comment></comment><comment><USER58> One final item I'd add to this list: It is your own writing for your own reasons. Feel free to ignore any rule that you disagree with or just don't like, in particular if your write as a personal exercise, and not to try to build an audience.

</comment><comment><USER59> I love Robert's humanity shining through in this piece. "It doesn't hurt you in any way, so just do it instead of arguing" is both trivial and rare. Today's low-hanging fruits of moral advice, so to speak.

</comment><comment><USER60> > strengthened property rights appear to have been responsible

Economists do not universally agree on the root cause of 20-21st century growth

<comment><USER61> That sentence really came out of left field.

"Here's how to write a blog post. [..] It's okay to poke fun at my particular ideology but you still have to admit I'm right."

</comment></comment><comment><USER62> >It's entertaining to poke fun at the downsides and pomposities of capitalism without denying the fact that strengthened property rights appear to have been responsible for much of humanity's progress in the last century or two.

What a bizarre ideological point to see in an article like this.</comment>


Hello HN, take a look at my new (beta) app BonMp3? - <AUTHOR>

Hi HN,
First off, it's been great following you since September. I really feel like I've learned some valuable insights into technology, business, science, and so many other topics from you. And attending this recent Startup school was probably the turning point for me, when I resolved to make something that people want to use, that people love.
I've always been really interested in music. I played bass and drums for years growing up, though between you and I, I never managed to develop a good sense of rhythm. My older brother was seemingly infinitely talented in every instrument he touched, and played in local bands for years. Of course I was jealous.
It's been a long time since those days, but I've finally settled on my contribution to the music scene. It's a music distribution service that bands and musicians can sign up for. Nothing too different so far, however, instead of the status quo of a ~70% return on album sales to the musician, we're targeting 90%. We're also going to donate most of that other 10% to the Save the Music Foundation for the first six months, and 1% for each month afterwards, as long as the service is alive and kicking. We like to call it music distribution with a conscience.
I really don't plan to make (a ton of) money off of this site, or quit my day job, which I'm hoping will help differentiate us from the competition. The business infrastructure behind music is showing signs of aging, inefficiency, etc, etc, and the vision here is to show how simple and efficient music distribution can be, and (hopefully) that it pays to put the musician first.
Anyway, I should probably give you the link so you can tell me how beta my beta service is. In case you haven't gathered so far, it's pretty solidly in the beta category. And by beta, I mean it should all work but is still facing some big development efforts:
http://bonmp3.com/
Thanks HN! <comment><USER2> I'm not sure if the idea of giving the full sign up form up front in the home page is a particularly good one. First, it makes the page layout go bad. Second, I miss out reading the section on "How it works" and "Features". No way a user is going to scroll down so low. Third, it scares the users away, imho.

One more small pick: The logo in the home page points to <http://dev.bonmp3.com/Home> (oops, is it the dev version?!)

<comment><AUTHOR> (dev link) Fixed, thanks :)

Originally the sign up form was behind a tab. I moved it out because it seemed like a superfluous click, but you are right about sign up forms being scary on the front page.

</comment></comment><comment><USER3> I immediately glazed over. Here are a few tips.

How it works and features should be more visible parts of the homepage. You haven't sold me at all but you're showing me a signup form. Give me the info first.

Eliminate all but the most important 3 or 4 bullet points. Controlling distribution sounds pretty similar to keeping the rights, simplify your fans' access to music is assumed from your mention of social networking sites, and most won't care about school music programs. Bullet points are like bumper stickers. Too many and they lose their effect.

Your headline being outside the main container looks strange.

More whitespace (blackspace?).

That user agreement textarea doesn't need to be more than three rows.

Increase line-height on the /About page.

The underlying point is that it doesn't look established enough for me to trust you with my music. I know it's beta, but consider allocating resources to design (including the "how it works" and service comparison graphics).

</comment><comment><USER2> Clickable Link: <http://bonmp3.com/>

</comment><comment><USER4> Looks interesting. Great job! I agree though that the signup form on the homepage is a bit intimidating. But if you are deadset on keeping it there may I suggest you move the "How It Works" section to the top of the page and maybe integrate the benefits portion that is currently above the signup form in it. That way the band/musician sees all that at least before be immediately presented with a signup form.

Looks interesting though and good luck. You are right the music industry is ready for a change!

</comment><comment><USER5> The idea seems good. Have you thought about asking someone with experience in web design to make a more streame-lined and less clunky version of the landing page? I think you are on a good way in terms of keeping it simple but in my humble opinion the execution isn't quite there yet. I'm not that competent of a designer myself but I'd bet someone who knows his stuff could improve the page quite a bit.

</comment><comment><USER6> Personally I think that the front page seems a little bit dark. I'm not sure what your intended mood is but I think that you should rethink the layout. Perhaps looks at other music selling sites to see how they lay out the page. Its a good idea to be different, but you can still learn a lot from comparing with other sites.

</comment><comment><USER7> I appreciate your marketing mojo, early limited but heavy donation encourages rapid adoption by caring enthusiasts. Of course giving 5% forever would be incredibly generous but would cut into artist rewards.

Will check out your app, much respect the Jekyll and Hyde founder (day jobs). That's where I come from.

<comment><AUTHOR> Thanks for your interest.

I really have to see how the economics play out, but I'm always open to raising the donation bar.

</comment></comment><comment><USER8> as a musician, i would go to your site... take one look at how little you value giving me info about your service and leave.

compare your first page to <http://www.tunecore.com/>

</comment><comment><USER9> you need a better designer. too chaotic in the front page; too many different fonts, sizes; and the browsing flow is not smooth.

</comment><comment><USER10> gogoyoko.com</comment>


Expert programmers have fine-tuned cortical representations of source code - <AUTHOR> https://www.biorxiv.org/content/10.1101/2020.01.28.923953v1 <comment><USER2> I don't know what 'cortical representations' are exactly, but it seems generally true that experts in a domain build up gradually higher level pattern recognition in their area of expertise. Whether it is driving a car, playing a sport or game, or writing software.

As a beginning programmer I had to consciously think about fundamental concepts all the time, or grapple with my limited knowledge of a programming language, instead of thinking about the problem.

As an experienced programmer I think in higher level concepts and abstractions, and the fine code details happen without me consciously thinking about them particularly.

This actually makes learning a new programming language or IDE more painful now than it was when I was new. It probably takes me less time to get to an equal level of skill in language X than a beginner, but getting to the level of fluency where the low level details don't require conscious thought takes time and practice. Being slowed down so much while getting to that point is deeply frustrating.

<comment><USER3> For me I've noticed that over time I've stopped worrying about the code and now mostly care about the data. How it's stored, how it's transformed etc. The code comes from how the data is managed.

As a new programmer, you certainly spend more time thinking about the details and minutae of the code itself.

Changing languages within the same group tends to come pretty easy, a C-like is mostly similar to other C-likes, flipping from python to ruby isn't all the terrible (or vice versa).

Moving between language groups is harder though, still struggling to wrap my head around lisp and haskell for example. Probably due to my skewed upbringing, BASIC to 6502 to 68k to C to python.

<comment><USER4> > Moving between language groups is harder though, still struggling to wrap my > head around lisp and haskell for example

I played around with CL and Scheme before coming to Clojure. I did not have much success with the first two but with Clojure it finallly clicked because at least on a superficial level Clojure seems to have more syntax than the other lisps (because of vector and hash-map literals). And eventually I understood why "code is data" in lisp. But I think that the visual distinction for the different collection types really helped me understand the concepts behind lisp better.

FYI: I haven't used Racket yet (if that should be relevant).

</comment></comment></comment><comment><USER5> I'm going to go out on a limb and guess that experts in `Y` have fine-tuned cortical representations of `domain(Y)`.

<comment><USER6> Hypothesis -> Study -> Confirmation/rejection.

<comment><USER7> Hypothesis -> Study -> Newspaper article that rephrases it into whatever it thinks is interesting

<comment><USER8> -> HN article that hand waves five levels of meta -> driveby rewrite in five characters of APL

</comment></comment></comment></comment><comment><USER9> "Tell me what you pay attention to and I will tell you who you are." \- Jose Ortega

This is fantastic. I've always had a hunch that experts are "seeing" things differently than novices, and seeing things that people who aren't in the same domain aren't even aware of. As people develop more expertise, I imagine the gap becomes larger, to the point where they're aware of things that "laymen" aren't even cognizant of.

Two examples:

In one of Malcolm Gladwell's books--I forget which one--he writes about a firefighter who, almost unconsciously, ordered his men out of a building right before it collapsed. He didn't even know why. After going through the day's events with a researcher, the researcher realized that the fireman was subconsciously (unconsciously?) attuned to what was happening around him. His brain was operating unbeknownst to him due to his years of expertise.

A friend of mine started a small business late last year. He started it on a lark, after a trip to the local autobody shop. Usually his spouse handled all of the car-related affairs, but for some reason he ended up having to do it himself this time. When he went to the store, he noticed that the software they were using to manage their inventory was dated and quite awful. He took down the manager's information and messaged him a week later with a proposal for revamping their software system. The autobody became his first client. The manager said that hundreds of people come in and out of that store every day, but my friend was the first person to point out that their software wasn't very good. My friend isn't an expert programmer by any stretch, but he was more of an expert than anybody in that office in regards to developing software. His brain basically zeroed in on it without him noticing.

Related to a thread from last week about our brains physically changing depending on what we do and pay attention to: [https://news.ycombinator.com/item?id=22201771](https://news.ycombinator.com/item?id=22201771)

I've become somewhat "obsessed" with this topic recently and would love to know if others know of any resources I can check out. I read "The World Beyond Your Head" by Matthew Crawford recently--he spells out this phenomenon quite well.

EDIT: Jose Ortega's full name is Jose Ortega y Gasset--I forgot to add the last part.

<comment><USER10> Constant chat in our head, keeps us away from reality. Try not think for few seconds and see how you become aware about surroundings. Only intense moments shook us from this chit-chat.

Take a look on yoga too. I am not an expert but core philosophy is being aware/conscious/witness about yourself.

[https://aeon.co/ideas/an-ant-colony-has-memories-that-its- in...](https://aeon.co/ideas/an-ant-colony-has-memories-that-its-individual- members-dont-have)

<comment><USER9> Thanks for the recommendation. I think you're onto something--this idea of being more aware and conscious about the things around you.

I've noticed that when I spend time away from my phone I'm a lot more clear- headed. Initially, I get really antsy--"What's happening on HN? Twitter? Reddit?"\--but after some time I become a lot calmer.

</comment></comment></comment><comment><USER11> The brain is a computation device. Like any computer, it has to represent data in some kind of structure in order to operate on it. But what are the exact data structures that brain uses? Nobody really knows, but there are some fascinating clues.

Related paper: [https://elifesciences.org/articles/21397](https://elifesciences.org/articles/21397) "What the success of brain imaging implies about the neural code"

fMRI is a really crappy imaging technology: it has low spatial and temporal resolution. Yet when we use it to read activity in the brain, we're able to gain real insights into how the brain actually works. This paper goes into what fMRI's success tells us how about the brain represents concepts and what fMRI's success rules out: "the neural code must be somewhat spatially and temporally smooth with respect to neural activity (which is several orders of magnitude smaller than voxels) for fMRI to be successful. Whatever is happening in the roughly one million neurons within a voxel (Huettel et al., 2009) through time is being partially reflected by the BOLD summation, which would not be the case if each neuron was computing something dramatically different for in-depth discussion"

</comment><comment><USER12> Well this explains why, when I first started to learn to program, it took me hours to find one missing semicolon in 15 lines of C code, but after 20 years I can basically glance at a screen full of code and find them almost immediately.

<comment><USER13> Yea, they underlined in red now.

<comment><USER12> Not on my screen

<comment><USER14> I know what you mean. I was called over to a colleague's desk to answer a query he had with a change he was making, (in an old IDE without colour- highlighting). It just looked wrong.

So I rearranged the code slightly and it was immediately obvious he'd mismatched his closing parentheses.

It wasn't conscious. I just knew it was wrong.

</comment></comment></comment></comment><comment><USER15> Programming is somewhat unique in the size and complexity of the structures expert practitioners have to hold and maintain. But only somewhat. It would be certainly be interesting to compare with other professionals with similar years of experience.

<comment><USER16> How might one quantify "size and complexity" for different domains? Physical architecture seems to me like maybe it's somewhat similar to programming, but even that seems hard to me to compare. Fiction author also seems like an interesting comparison, but again, I 'm unsure of how to begin to quantify size/complexity in a way that's apples-to-apples with programming.

</comment></comment><comment><USER17> When I was young kid and teenager I would spend a lot of time playing checkers with my father. My father wasn't master or grandmaster level but he played well. We would sometimes spend entire evening playing dozens of fast paced games.

When friends asked me how it is possible to calculate so many moves in advance in such short time (I would typically have response prepared for whatever move they made) I realized I don't really know. Only occasionally I would spend time really analyzing the future state of the board and I was typically able to imagine how the board would look like in many moves in advanced and was even able to predict which moves would look tempting in half a dozen moves in the future.

It did not feel as if I was playing the game. Retrospectively, it felt more as choosing from menu of options but I did not know or cared to know where the options came from.

I came to conclusion after so many repetitions the brain gets somehow wired and runs all those simulations "behind the scenes" so that the conscious part of the mind is relatively free to make very high level decisions.

<comment><USER18> > grandmaster level

...of checkers?

<comment><USER19> [https://en.wikipedia.org/wiki/Marion_Tinsley](https://en.wikipedia.org/wiki/Marion_Tinsley)

</comment></comment></comment><comment><USER20> I'd love to see work like this done on chess super GMs.

<comment><USER21> and London Cabbies

<comment><USER22> [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC18253/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC18253/)

</comment></comment></comment><comment><USER23> I was pretty excited to see this paper but unfortunately it seems like they have a pretty big multiple comparisons problem. The spatial structure of their brain maps and the really strong correlations scream multiple comparisons. Glancing through their methods briefly to try to figure out why, it looks like they are performing their decoding and leave-one-out cross validation independently for each small group of voxels, which should generate a ton of false positives. This is pretty easy to control for, but they didn't do the key control analysis: scramble the trial identity (category) to create null datasets and then recompute the measures. Unfortunately I bet that these null models would have had similar correlations to what they observed.

</comment><comment><USER24> In other words obsession. When you are writing code in your dream that's when you know you love what you're doing.

</comment><comment><USER25> Coming soon - a service to screen prospective software developer hires via fMRI.

<comment><USER26> followed by 14 books in the vein of "How to Crack the Coding fMRI"

<comment><USER27> [https://en.wikipedia.org/wiki/Goodhart%27s_law](https://en.wikipedia.org/wiki/Goodhart%27s_law)

</comment></comment></comment><comment><USER28> Not surprising but good to see some research. Just off the top of my head I assume working memory capacity may be slightly increased, whatever portions of the brain are used to decode / encode information, and perhaps even spatial intelligence.

</comment><comment><USER29> So do expert carpenters. And expert musicians. Etc.

</comment><comment><USER6> > For the first factor, we adopted programmers' ratings in competitive > programming contests (AtCoder), which are objectively determined by the > relative positions of their actual performances among thousands of > programmers

Ah perfect.

<comment><USER30> This makes me extremely skeptical of the study. At best, it says something about people who are whizzes at programming competitions, and certainly not "Expert programmers" in general.

<comment><USER6> Ever met a normal person... They have no idea what an expert is like. For them, easily ranked = source of expertise.</comment></comment></comment>


What is a milkshake duck? And why isn't it the word of the year? - <AUTHOR> https://www.theguardian.com/culture/2017/dec/18/what-is-a-milkshake-duck-and-why-isnt-it-the-word-of-the-year <comment><USER2> because it's clearly 2 words</comment>


The ban on bucky balls has been lifted - <AUTHOR> http://www.popsci.com/buckyballs-are-back-on-market?src=SOC&dom=fb <comment><AUTHOR> I was actually a bit surprised when these were banned in the first place. They had an age range, warned to not swallow, and there are thousands of other toys out there that are as dangerous if swallowed. Well, maybe not as dangerous but still pretty dangerous if not following rules

The most dangerous thing i experienced with them was my kid sticking them to my PC when one single ball got sucked right through a vent and fried the mobo. Not even sure how that happened because there was so much metal between where it went and where it was being stuck to</comment>


Best Operating Systems Apart From The Windows, MAC - <AUTHOR> http://savedelete.com/15-best-operating-systems-apart-from-the-usual-ones.html <comment><USER2> This looks like a filler blog more than anything else.

No real content- just 15 unqualified vague screenshots with links.

<comment><USER3> They aren't really operating systems, either.</comment></comment>


Facebook Peering - <AUTHOR> https://www.facebook.com/peering <comment><USER2> With the increase in live HD video streaming on Facebook, this is a smart move on Facebook's part. I wonder what the traffic ratios have to be before the peering partners will want to start charging.</comment>


Tools to Transform and Query Data with the Apache Drill and Dplyr in R - <AUTHOR> https://github.com/hrbrmstr/sergeant <comment><AUTHOR> > Drill + sergeant is (IMO) a nice alternative to Spark + sparklyr if you > don't need the ML components of Spark (i.e. just need to query "big data" > sources, need to interface with parquet, need to combine disperate data > source types — json, csv, parquet, rdbms - for aggregation, etc).

I am really surprised Apache Drill is not gaining more attention / traction for reasons like the above.

> I find writing SQL queries to parquet files with Drill on a local 64GB Linux > workstation to be more performant than doing the data ingestion work with R > (for large or disperate data sets). I also work with many tiny JSON files on > a daily basis and Drill makes it much easier to do so. YMMV.

Using drill both on a local machine and a 4 node cluster, I find it very convenient and fast, using an API that many people and tools are already familiar with: ANSI SQL.</comment>


Facebook is down - <AUTHOR> https://www.facebook.com/

<comment><USER2> Let me look in the calendar; is it Wednesday, aka facebook code dump day? Yeah, surprise.

Move fast and break things!

</comment><comment> dawolf- It's not just the main website.

beta.facebook.com graph.facebook.com developers.facebook.com

Mostly dead on port 80/443 or returning error codes.

Not really pointing to a faulty code push. Must be something more sinister going on.

</comment><comment><USER3> From #facebook @ freenode:

<StephenS> ninjahamstah We're working hard to fix all the issues, we're going to be up in a second.

</comment><comment><USER4> Reason for outage?

Internal issues? DOS? Hack?

</comment><comment><USER5> Getting hammered from Portugal

[http://map.ipviking.com/](http://map.ipviking.com/)

<comment><USER6> At the moment it looks like most of the attacks are originating from China.

</comment></comment><comment><USER7> So much for "Move fast with stable infrastructure"

[http://www.wired.com/2014/04/zuckerberg-f8-interview/](http://www.wired.com/2014/04/zuckerberg-f8-interview/)

</comment><comment><USER8> Looks like it's down for everyone: [https://twitter.com/search?f=realtime&q=facebook%20down&src=...](https://twitter.com/search?f=realtime&q=facebook%20down&src=typd)

<comment><USER9> Also this [http://www.downforeveryoneorjustme.com/www.facebook.com](http://www.downforeveryoneorjustme.com/www.facebook.com)

</comment></comment><comment><USER10> They are moving too fast

<comment><USER9> Yeah looks like they broke something

</comment></comment><comment><USER11> I got a something went wrong page right before the outage...

<comment><USER12> You broke it.

</comment></comment><comment><USER13> Let's migrate to decentralized social networks!

[http://newebe.org/](http://newebe.org/)

</comment><comment><USER14> And then you realise that global productivity doesn't go up... it is just replaced by a bunch of people hitting Refresh like crazy.

<comment><USER15> "I use Ctrl+F5 to make a new request Every time." ~In the voice of Ralph Wiggam.

</comment></comment><comment><USER16> What would you do if it was like this forever?

<comment><USER15> Put some pants on, probably.

</comment></comment><comment><USER17> Looks to be a world-wide outage. It's Down in Kiev, New Jersey and London according to my location and various VPSs.

</comment><comment><USER18> This is all last hour's news. I just came to Hacker News from Facebook, where everything was working just fine.

</comment><comment><USER19> Don't post these messages. Not intellectually interesting.

And we have at least 20 of them so far.

</comment><comment><USER20> FB Messenger is down too...

</comment><comment><USER21> Down in the Netherlands.

</comment><comment><USER22> down in India too. tried the full site, mobile and zero.

</comment><comment><AUTHOR> Front page through no effort of my own. Thanks, friends!

</comment><comment><USER23> So, do we not like things anymore?

Can we be friends?

</comment><comment><USER24> Down in India too!

</comment><comment><USER25> Down in Mars too

</comment><comment><USER26> In other news, workforce productivity is up

</comment><comment><USER27> Fix it or people may die from boredom!

</comment><comment><USER28> Down in Sweden

</comment><comment><USER29> Alive in New Zealand and Australia.

</comment><comment><USER30> Yes US, East Coast is down.

</comment><comment><USER31> Down for me, in austria.

</comment><comment><USER32> And productivity soars.

</comment><comment><USER33> Down in Denmark as well

</comment><comment><USER34> Down in Poland as well.

</comment><comment><USER35> Down in the US as well.

</comment><comment><USER36> Down for me, in the UK.

</comment><comment><AUTHOR> It's back up.

</comment><comment><USER37> Good observation!

</comment><comment><USER38> Down in France!

</comment><comment><USER39> down for me as well, messenger included

</comment><comment><USER40> Down in Turkey

</comment><comment><USER41> Down in Mexico

</comment><comment><USER42> still down :D

</comment><comment><USER43> developer site is down also.</comment>


USCIS Raids in SV – can anyone corroborate? - <AUTHOR> https://twitter.com/CanadaKaz/status/848955669252263940 <comment><USER2> I would guess that those are the 'normal' site visits for H1Bs that happen every now and then and somebody didn't understand what those are.

I know several people that had them over the last few years. Standard procedure to make sure you're actually working where they say you are.

As far as the tweet goes: There is literally no first (or possibly even 2nd) hand evidence at all so far.

</comment><comment><USER3> A YC founder is claiming that ICE is raiding SV startups and asking for emails, work product, and pulling people out of meetings. Can we get confirmation please?

</comment><comment><USER4> related: [https://www.axios.com/computer-programmers-may-no-longer- be-...](https://www.axios.com/computer-programmers-may-no-longer-be-eligible- for-h-1b-visas-2342531251.html)</comment>


Plesk botnet taken down - using the same vulnerability it's exploiting… - <AUTHOR> http://seclists.org/fulldisclosure/2013/Jun/36

<comment><USER2> It's technically very amusing but I have really mixed feelings about running code on others' gear even for good.

</comment><comment><AUTHOR> I've no idea if this is true - but if it is, it's a) hilarious, b) ironic, and c) highly illegal.</comment>


Guitar Decomposed: 5. Mutating the Third - <AUTHOR> https://bartoszmilewski.com/2020/05/27/guitar-decomposed-5-mutating-the-third/ <comment><USER2> From the first post in the series:

> We now use the so called equal temperament system...

Unless I'm playing a piano, no, I don't. And since I have an electric piano, I have been known to set it to meantone, but I accept that I'm a freak.

Even on a guitar you have a fair amount of variation in pitch based on pressure and position of the left hand fingers relative to the fret. Not as much as on old instruments with gut frets, but it's there.

<comment><USER3> I still think its fair to say we use the equal temperment system. It is a widely accepted standard. You're right, fret pressure alone can absolutely raise the pitch 5/10 cents, my Gibson SG has some deep frets and can do double that.

I am surprised with all of the technology and VSTs we have now no one really uses self adjusting Just intonation or challenges A 440. Musical / mathematical / technical ability are a rare trinary intersection. It saddens me that no one is really trying to push the envelope of acoustic instruments or even new ways of producting digital sound. It's the same old Square and Saw waves with the same instruments we have had for hundreds of years. Sadly i think musicianship has all but died in Gen Z, quantization / pitch correction / take splicing / overuse of compression are rampant, and every popular artist is basically as fake as Milli Vanilli. Protools has raised a generation of lazy and uncreative musicians with awful rhythm. Get off my lawn! Ok i'm done.

<comment><USER4> Microtonal music really isn't hard to find. It's just not very popular, because it's too niche for mainstream listeners.

And most popular VSTs - Serum, Pigments, Massive, Phaseplant - all use wavetables and not 'the same old square and saw waves.'

Modern pop really isn't any more generic than 30s/40s jazz, 50s rock and roll and bubblegum, and so on. That's why it's called popular music and not experimental music.

<comment><USER5> There's a def "greatest hits" effect with jazz. I mean, how awesome is "Minnie the Moocher", etc.

There's also a "trailblazer" effect which is kind of weird because it doesn't happen in classical music. Namely that we listen a lot more to Miles Davis and Coltrane than the random swing band of their age. Heck, Miles gets more props than the sublime big band swing of Duke Ellington.

<comment><USER6> Honestly, out of all the things I've been paid for over the many years of my career, the one that gives the the most pleasure, thinking back, is being paid as an extra for The Blues Brothers.

Watching Cab Calloway do Minnie the Moocher in the 70s? Live? Paid for it? Priceless.

Working for Apple was awesome, as were the other places I've worked, but for sheer enjoyment per dollar, the Palladium in the 70s wins.

</comment></comment></comment></comment></comment><comment><USER7> > The first such transformation is to lower the third by one step to obtain a > minor triad. For some reason, we perceive minor chords as sad or melancholy, > sometimes a bit whiny.

I'd love to hear more on "some reason." In a way, it's so arbitrary, and maybe it's a cultural bias, but so sad. And the minor iv chord, _so_ sad. [https://www.youtube.com/watch?v=RQFtvAfHndE](https://www.youtube.com/watch?v=RQFtvAfHndE), right when he sings "when September ends," but there's are so many other examples.

<comment><USER3> > I'd love to hear more on "some reason."

Modern science has no idea! I've researched a fair bit. We don't know how the brain intreprets frequency combinations or why different ones sound good or bad together or evoke certain moods. Math can explain harmonics and the circle of fifths and how to assemble keys and modes, sure, but no one knows the Why or How of the internals between the ears. It is just cultural bias and repetition that we intrepret some note and chord combinations a certain way or is there something more fundamental going on with the hardware? Good question! Nobody knows.

All we have is anecdotal evidence and the trial and error of the musicians and composers who make it. Music is still a mystery.

<comment><USER8> I get a little annoyed at this notion of minor vs major. It's not binary. Subtle changes in tonality can shift back and forth between minor and major and diminished and augmented and so on. Most listeners will interpret a passage as "minor", but that doesn't mean it's so. Complex harmony can be reduced to minor or major but it robs it of all of its nuance.

<comment><USER3> I mean if you move down 3 notes from any Major key you have your Minor key with the same exact notes, like C Major and A Minor.

I usually compose with a Major or Minor key in mind, but it's kind of a reference and not a be all end all. I like sharp 4's which work great usually and don't fit in either key. A flat 7 sounds great in a major key too, usually. I agree with you mostly, and i am annoyed by people who are adamant about the rules of a key, but it helps me to have a key in mind to both play and compose, even if i break the rules of it.

I find improvising on piano / guitar is nearly impossible if you don't know the key, even after many years of playing both.

<comment><USER9> If you think in terms of modes, then using a sharp 4 in major you can think of as lydian (the 4th mode of major) or lydian dominant (has a flat 7 too, the 4th mode of melodic minor). In minor, there's lydian minor (the 4th mode of harmonic major).

Major but with a flat 7 is mixolydian (the fifth mode of major). It is everywhere in popular music.

My favourite thing at the moment is major 7 sharp 5 chords (or an augmented triad with also a major 7th). These chords arise in harmonic and melodic minor (in both cases chord 3), and in harmonic major (chord 6). But they also sound great as substitutions for what is 'supposed' to be a major 7 chord.

</comment></comment></comment></comment></comment><comment><USER10> I was expecting a bit more category theory. But I was glad to see that he alludes to the duality of minor chords and major chords.

A simple way to look at it is like this: Pick two notes, i.e., an interval.

Then pick a note in the middle of the two notes. The dual chord is the one where you swap the up and down chromatic distances. Then if you happened to pick a 5th interval, and you happened to pick the major 3rd as middle note, then the minor is dual to it.

But you can go further. Pick the octave and choose the 5th now as your middle note. Then the 4th is dual to this.

You can drop the chromatic condition and work in a key with a scale and things like that. Also, the 12 chromatic notes form a group with inverses as duals. Then the 5th is dual to the 4th, but now the 3rd will be dual to the 6th—equivalent to the interval construction where you take the octave above.

<comment><USER11> I've read your post several times and I don't get how this duality is useful and how to apply it.

The "duality" of major/minor seems very different that "duality" of 4th and 5th. One completely changes music harmony, while other is basically interchangeable. When is it useful to think in these terms?

<comment><USER10> Exactly because they have effects that sound different and are instances of the same general principle.

Edit: The idea is not to stop there. You also have the minor 7th chord being dual to the major 7th chord (with the octave added implicitly). Those two chords are often used together in jazz music. In this case the interval you use to get the upper note is a 4th. And depending on which interval you are focusing on, and what kind of scale you use (if not chromatic) this simple concept can get much more interesting.

I agree that playing for example C E G and then C Eb G sounds like a "change", but I don't think the theory gives you complementary chords _in sequence_. They connect ideas with each other. In that sense it makes sense for a major chord to be dual to a minor chord.

</comment></comment></comment><comment><USER12> I love this series of posts. I've always wondered why guitars have irregular tuning and this explanation makes sense.</comment>


Palantir CEO rips Silicon Valley in letter to investors - <AUTHOR> https://www.cnbc.com/2020/08/25/palantir-ceo-rips-silicon-valley-in-letter-to-investors.html <comment><USER2> Karp, in other words: You can't HANDLE the truth!

I agree with him. Most people who criticize defense/police have no clue what it takes to keep everyone safe.

<comment><USER3> > Most people who criticize defense/police have no clue what it takes to keep > everyone safe.

Yes and somewhat amusingly this is also true of most people who bash critics of defense/police.

</comment></comment><comment><USER4> The timing of this article and the complete lack of any original analysis makes it seem unlikely this isn't a submarine.

[http://www.paulgraham.com/submarine.html](http://www.paulgraham.com/submarine.html)

<comment><USER5> It's an excerpt from Palantir's S-1 that was filed today, not some kind of mastermind PR.

<comment><USER6> >not some kind of mastermind PR

I would believe one would hire one or two of those for a multi-billion dollar exercise tho.

<comment><USER5> Absolutely. But in this case you don't need to call up CNBC and pitch them a story about an S-1; those stories are already their bread and butter.</comment></comment></comment></comment>


Ask HN: actual battery life of 2010 Macbook Pro? - <AUTHOR>

Apple advertises 8-9hrs battery for the 15" MBPs. My hypothosis is that even under ideal conditions, actual battery life is much shorter.
With a 2010 15" 2.66Ghz i7 MBP, under normal development usage (a few ruby processes, a browser, code editor, MySQL) I get about 3 hours.
Under a controlled "light web browsing" environment, I get 5 hours:
* Dim screen brightness to 50%
* Turn bluetooth off, Wifi on
* Set display to never go to sleep & turn screensaver off
* Use http://http://codykrieger.com/gfxCardStatus/ to set
graphics card to intel only
* Use itunes to play local music at a low volume through headphones only
* Use this script: to simulate light web browsing: http://gist.github.com/441222 . It writes a log so you know when the computer goes to sleep.
* Walk away from the the computer and wait for it to exhaust it's battery and go to sleep.
HNers -- I'd love to get your own datapoints. <comment><USER2> I have had my 13" MBP for 12 months, 7hr battery. Generally get 6-8 hours use when doing dev/test work. With VmWare Fusion running I'm lucky to get 2 hours. On days with lots of meetings (note taking & giving presentations) I can get through a 14hr day on a single charge.

I suspect that disk activity has a big impact upon power consumption. But when doing heavy development (and using Fusion) I power from mains.

</comment><comment><USER3> I don't have a 2010 but I do have a 2007 17" 2.33GHz C2D MBP and I get 3-4 hours.

The only problem is the old 17" batteries tend to warp and explode:

<http://imgur.com/wmoTy.jpg></comment>


Finally some insight into CSS after twenty years - <AUTHOR> http://djalbat.com <comment><USER2> It's a page with no discernible styling; minuscule black text on a mid grey background, using default font, layout and link colours.

And it's discussing CSS, which is used to control things like font sizes, layout and colour schemes. Sorry. But I really don't get it. Is it supposed to be satire or something?

<comment><AUTHOR> Nope, no satire.

The seeming lack of any discernible styling on my homepage is intentional (in fact there is a little, but still). I don't want to detract from the content.

The paragraph font size is sixteen pixels, by the way, which is pretty standard and happens to be four pixels more than this site, which I assume you can read just fine.

<comment><USER2> >The paragraph font size is sixteen pixels, by the way, which is pretty standard and happens to be four pixels more than this site, which I assume you can read just fine.

Your font size is smaller than HN's on my laptop. HN's font-size isn't defined in pixels, it's 10pt [9pt in places] which is rendering at 18px on my laptop. Even that's a wee bit smaller than I'd like. And on my 7" tablet I have to zoom the text on HN too, as it's unreadably small.

In these days of mobile devices and so-called 'retina' displays, it's not a good idea to define font sizes in pixels or points. Much better to use EM and REM

</comment></comment></comment><comment><AUTHOR> Hmm, I can't see an active link in the title so here it is in plaintext:

[http://djalbat.com](http://djalbat.com)</comment>


AMD Prepares 32-Core Naples CPUs for 1P and 2P Servers: Coming in Q2 - <AUTHOR> http://www.anandtech.com/show/11183/amd-prepares-32-core-naples-cpus-for-1p-and-2p-servers-coming-in-q2 <comment><USER2> I think Naples is a very exciting development, because:

\- 1S/2S is obviously where the pie is. Few servers are 4S.

\- 8 DDR4 channels per socket is twice the memory bandwidth of 2011, and still more than LGA-36712312whateverthenumberwas

\- First x86 server platform with SHA1/2 acceleration

\- 128 PCIe lanes in a 1S system is unprecedented

All in all Naples seems like a very interesting platform for throughput- intensive applications. Overall it seems that Sun with it's Niagara-approach (massive number of threads, lots of I/O on-chip) was just a few years too early (and likely a few thousands / system to expensive ;)

<comment><USER3> Let's hope this isn't niagra again: it needs to have decent clock speeds as IPC is still worth something today. But yes, I totally agree, this is an exciting chip.

<comment><USER4> It's not, not only did AMD move from CMT (clustered multi-thread) design used in the previous Bulldozer microarchitecture, they now have an SMT (simultaneous multithreading) architecture allowing for 2 threads per core.

By comparison, the performance of sparc substantially improved moving from the T1, T2 to T3+. The T1 used a round-robin policy to issue instructions from the next active thread each cycle, supporting up to 8 fine-grained threads in total. That made it more like a barrel processor.

Starting with the T3, two of the threads could be executed simultaneously. Then, starting with the T4, sparc added dynamic threading and out-of-order execution. Later versions are even faster and clock speeds have also risen considerably.

<comment><USER3> I didn't know about this. Are there benchmarks that aren't canned by Oracle that you know of? I'm intrigued by this round-robin way of threading. I'm not a cpu expert, but how does this compare with the Power arch's way of threading?

<comment><USER5> Think of it this way, the original Niagara (T1) was an in-order CPU. That is, instructions were executed in the order they occur in the program code. This is simple and power efficient but doesn't produce very good single thread performance, since the processor stalls if an instruction takes longer than expected. Say, a load instruction misses L1 cache and has to fetch the data from L2/L3/Lwhatever/memory. Now, one way to drive up the utilization of the CPU core is to add hardware threads. And the simplest way to do that? Well, just run an instruction from another available thread every cycle (that is, if a thread is blocked e.g. waiting for memory, skip it). So now you have a CPU that is still pretty small, simple and power efficient, but can still exploit memory level parallelism (i.e. have multiple outstanding memory ops in flight).

Now, the other approach, is that you have a CPU with out of order (OoO) execution. Meaning that the CPU contains a scheduler that handles a queue of instructions, and any instruction that has all its dependencies satisfied can be submitted for execution. And then later on a bunch of magic happens so that externally to the CPU it still looks like everything was executed in order like the program code specified. This is pretty good for getting good single thread performance, and can exploit some amount of MLP as well, e.g. if a bunch of instructions are waiting for a memory operation to complete, some other instructions can still proceed (perhaps executing a memory op themselves). So in this model the amount of MLP is limited by the inherent serial dependencies in the code, and on the length of the instruction queues that the scheduler maintains. The downside of this is that the OoO logic takes up quite a bit of chip area (making it more expensive), and also tends to be one of the more power-hungry parts of the chip. But, if you want good single- thread performance, that's the price you have to pay.. Anyway, now that you have this OoO CPU, what about adding hardware threads? Well, now that you already have all this scheduling logic, turns out it's relatively easy. Just "tag" each instruction with a thread ID, and let the scheduler sort it all out. So this is what is called Simultaneous Multi-Threading (SMT). So in a way it's a pretty different way of doing threading compared to the Niagara-style in-order processor. Also, since you already have all this OoO logic that is able to exploit some MLP within each thread, you don't need as many threads as the Niagara-style CPU to saturate the memory subsystem. So, this SMT style of threading is what you see in contemporary Intel x86 processors (they call it hyperthreading (HT)), IBM POWER, and now also AMD Zen cores.

As for benchmarks, I'm too lazy to search, but I'm sure you can find e.g. some speccpu results for Niagara.

<comment><USER3> Doing that now. Thanks for the write-up.

So although separated by time but not by clocks (the intel setup has the roughly the same base clocks and the same ram as the t4 setup) the 40 thread Xeon system had roughly double the perf of the 128 thread t4 setup running speccjvm2008 [https://www.spec.org/jvm2008/results/jvm2008.html](https://www.spec.org/jvm2008/results/jvm2008.html)

<comment><USER4> The T7 and S7 are even faster than the T4, and unfortunately I haven't seen newer results published for them.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> This is what I have really been looking forward to. I theorycrafted a more ideal system for the genetics work a former employer was doing, but didn't get to build it until after I had left there. A quad 16 core opteron system for a total of 64 cores (for physics calculations in comsol). I think that there is more potential use for high actual core count servers than many people realize, so I can't wait to build one. (for my purposes these days is as an game server in a colo, one of my projects is a multiplayer UE4 game)

At the previous job where I built the 64-core system, I even emailed the AMD marketing department to see if we could do some PR campaign together, but I think it was too soon before the Naples drop, because I never got a response. Here's to hoping supermicro does a 4 cpu board for this... 124 cores would be amazing. (But I'll take 64 naples cores as long as it gets rid of the bugs and issues I found with the opterons).

<comment><USER7> Out of curiosity, I thought that genetics was the domain of gpus?

<comment><USER8> It's quite rare to find GPUs being used in genetics.

<comment><USER9> Is that because the workloads are fundamentally unsuitable for current GPU architectures or because no one has took a good stab at it yet?

I know very little about computation genetics/biology but it sounds interesting.

<comment><USER10> I don't think it is because no one has tried it as much as the fact that the workloads need the cpu architecture / are not easily parallizable (as far as I understand). Comp bio in genetics is largely sequence alignment & search, which is still largely CPU / memory bound; but I don't understand programming enough to speculate if development in algorithms will allow GPUs to be used because the problem itself is not parallelizable. I think of it as the difference between a super computer & a cluster..

(More than a decade ago, I struggled to / barely succeeded in building a Beowulf cluster; I am just amazed at how far both the hardware & the software tools have come..)

In other areas of comp bio though, GPUs I think are finding use. Protein folding, molecular dynamics. Also, with STORM & such: super resolution microscopy? I think increasingly, gpus will become important.

Also, whole cell simulations?

<comment><USER11> What you wrote about super computer vs cluster is quite right. Recently I attended a HPC meeting where we were the only DevOps of an HPC for a biological institute and most of the other people were from physics & chemistry. They usually don't consider the biology workloads as High Performance Computing but as big resource/data computing. The physics & chemistry guys run simulation using hundred thousands of cores and are mostly CPU bound. They use MPI and their nodes typically have not more than 64 GB and they consider 120 GB memory usage as a lot. Biologist on the other hand hardly use MPI because they can just parallelize the workload on the data level (i.e. sample or chromosome) and run them independently on each node. For that reason also high memory NUMA machines from SGI can relatively often be found.

You are also right that some of the comp bio areas (CryoEM, protein folding, molecular dynamics) are well suited for GPUs

</comment></comment></comment></comment></comment></comment><comment><USER12> I'm looking forward to the benchmarks since the performance per watt of the desktop parts (Ryzen R7) seems to be really good. Quite curious how it will compare against Skylake-EP.

A quote from a anandtech forum post [0] reads promising:

"850 points in Cinebench 15 at 30W is quite telling. Or not telling, but absolutely massive. Zeppelin can reach absolutely monstrous and unseen levels of efficiency, as long as it operates within its ideal frequency range."

A comparison against a Xeon D at 30W would be interesting.

The possibility of this monster maybe coming out sometime in the future is also quite nice: [http://www.computermachines.org/joe/publications/pdfs/hpca20...](http://www.computermachines.org/joe/publications/pdfs/hpca2017_exascale_apu.pdf)

[0] [https://forums.anandtech.com/threads/ryzen-strictly- technica...](https://forums.anandtech.com/threads/ryzen-strictly- technical.2500572/)

</comment><comment><USER13> The important thing here, from my perspective, is how NUMA-ish a single socket configuration will be. According to the article, a single package is actually made up of 4 dies, each with its own memory (and presumably cache hierarchy, etc). While trivially parallelizable workloads (like HPC benchmarks) scale quite well regardless of system topology, not all workloads do so. And teaching kernel schedulers about 2 levels of numa affinity may not be trivial.

With that say, I'm looking forward to these systems.

<comment><USER14> Intel's largest CPUs are already explicitly NUMA on a single socket. They call it Cluster On Die: [http://images.anandtech.com/doci/10401/03%20-%20Architectura...](http://images.anandtech.com/doci/10401/03%20-%20Architectural%20Overview- page-037.jpg)

<comment><USER13> Very true, I should have mentioned that. At least for us, COD doesn't seem to impact our performance at all, while NUMA does. I'm hoping that Naples is the same for us.

However, there is an important difference. AMD seems to be putting multiple _dies_ into the same _package_ , whereas Intel seems to have (as the Cluster on Die name implies) everything on the same die. So my fear is that the interconnect between dies may not be fast enough to paper-over our NUMA weaknesses.

<comment><USER15> Sounds like your application is latency sensitive, and not bandwidth sensitive, take a look at the graphs towards the end of this article:

[https://www.starwindsoftware.com/blog/numa-and-cluster-on- di...](https://www.starwindsoftware.com/blog/numa-and-cluster-on-die)

There's not much difference in memory bandwidth between crossing domains on the same die (COD) vs crossing domains system wide (accessing memory for a different socket). What kind of computation are you running?

<comment><USER13> I'm talking about Netflix CDN servers. The workload is primarily file serving. The twist is that we use a non-NUMA aware OS (FreeBSD).

We're not latency sensitive at all. The problem we run into with NUMA is that we totally saturate QPI due to FreeBSD's lack of NUMA awareness.

The results you link to don't match with what we've seen on our HCC Broadwell CPUs, at least with COD disabled. Though we only really look at aggregate system bandwidth, so potentially the slowness accessing the "far" memory on the same socket is latency driven, and falls away in aggregate.

</comment></comment></comment></comment></comment><comment><USER16> Sorry, my google-fu isn't on point today; what's the difference between 1p and 1u. or 2p and 2u? My nomenclature knowledge is lacking ...

<comment><USER17> P = Processor and S = Socket (they're pretty interchangeable). U = rack Unit [https://en.wikipedia.org/wiki/Rack_unit](https://en.wikipedia.org/wiki/Rack_unit)

</comment></comment><comment><USER18> Nice. This is the more interesting market for AMD rather than the gaming market in my opinion. 128 PCIe lanes and up to 4TB of ram will be awesome.

<comment><USER19> Gaming? More like consumer market, Ryzen 7 is definitely not suited for gamers, advertising it as such was IMO mistake. Nevertheless Naples can be big innovation in server segment.

Also what with ECC? Ryzen can support it or not?

<comment><USER20> _" Ryzen 7 is definitely not suited for gamers"_

The underperformance in gaming was tracked down to software issues according to AMD. Namely:

\- bugs in the Windows process scheduler (scheduling 2 threads on same core, and moving threads across CPU complexes which loses all L3 cache data since each CCX has its own cache)

\- buggy BIOS accidentally disabling Boost or the High Performance mode (feature that lets the processor adjust voltage and clock every 1 ms instead of every 40 ms.)

\- games containing Intel-optimized code

More info: [http://wccftech.com/amd-ryzen-launch-aftermath-gaming- perfor...](http://wccftech.com/amd-ryzen-launch-aftermath-gaming-performance- amd-response/)

Furthermore hardcore gamers usually play at 1440p or higher in which case there is no difference in perf between Intel or AMD, as demonstrated by the many benchmarks (because the GPU is always the bottleneck at such high resolutions.)

<comment><USER21> > bugs in the Windows process scheduler

Blaming windows is just a desperate excuse from AMD to justify its lack of performances. Don't be tricked by that.

It's possible -and rather common- that there are motherboard issues on the first generation of MB, which again, is not a a valid excuse but a bad thing that desperately needs fixing from AMD and a sign that it's still in testing phase.

<comment><USER22> Were you around for when bulldozer came out? There were huge problems with Windows task scheduling that were later fixed with updates.

<comment><USER2> Or when Intel HT first appeared. Or when Intel HT reappeared. Or when the first dual core appeared. Every time Windows needed updates to perform properly; Linux also needed patches to adjust scheduling for Zen and also received patches in many other instances.

This is nothing new or outstanding at all.

</comment></comment></comment></comment></comment></comment><comment><USER23> 1\. Most of the benchmarks are not even compiled or made with Zen Optimization in mind. But the results are already promising, or even Surprising.

2\. Compared to Desktop / Windows Ecosystem, their are much more Open Source Software on the Server side, along with usual Open Source Compiler. Which means any AMD Zen optimization will be far easier to deploy compared to Games and App on Desktop coded and compiled with Intel / ICC.

3\. The sweet spot for Server Memory is still at 16GB DIMMs. A 256GB Memory for your caching needs or In-memory Database will now be much cheaper.

4\. When are we going to get much cheaper 128GB DIMM Memory? Fitting 2TB Memory per Socket, and 4TB per U, along with 128 lanes for NVM-E SSD Storage, the definition of Big Data, just grown a little bigger.

5\. Between now and 2020, the roadmap has Zen+ and 7nm. Along with PCI-E 4.0. I am very excited!

<comment><USER12> > 5\. Between now and 2020, the roadmap has Zen+ and 7nm. Along with PCI-E > 4.0. I am very excited!

Yes, and it's rumored that the top end 7nm chip will be 48 cores (codename starship). Exciting times ahead now that the competition is back.

</comment></comment><comment><USER24> In previous threads there was discussion about Intel processors, specifically Skylake (which is a desktop processor), being superior for server workloads involving vectorization.

How will Naples fare on this front?

<comment><USER25> That front remains to be seen. However, 128 lanes, 8 channel ram; It will make a mess out of Intel in the vm hosting arena.

I'm glad I don't own any Intel stock atm :)

<comment><USER26> The VM hosting arena is exactly where cloud providers play.

A high core count, energy efficient CPU with IO out the wazoo?

I'm happy I bought AMD stock over the summer (:

</comment></comment></comment><comment><USER7> I've long been advocating for a high i/o cpu with several pcie lanes. 128 lanes will support 8 GPUs at max bandwidth. AMD has positioned itself well.

</comment><comment><USER27> How well does, say, Postgres scale on such hardware? Is anything more that 8 cores overkill or can we assume good linear increases in queries per second...

<comment><USER28> This is from 2012: [http://rhaas.blogspot.com/2012/04/did-i-say-32-cores-how- abo...](http://rhaas.blogspot.com/2012/04/did-i-say-32-cores-how- about-64.html)

My guess is the 1 socket options scales great. 2 sockets are are less than ideal, and you will not double the 1 socket performance.

<comment><USER29> I'd like to see this data on Postgres scaling updated, with more info on the write scaling as well. (the chart appears to be for SELECT queries only)

<comment><USER28> The other change is now a single select can use multiple cores, so you could see how that scaled to 32, 64, 128 cores...

<comment><USER30> On highly concurrent PG systems by when using parallel queries you are sacrificing throughput for better latency. You really don't want to use more than a fairly small number of workers per single select.

</comment></comment></comment></comment></comment><comment><USER31> If they have a much better performance/$ than Intel, which they likely will have, it sounds like a good opportunity for AWS to significantly undercut Microsoft and Google (which recently bragged about purchasing expensive Skylake-E chips).

<comment><USER32> There's opportunity cost to consider. Google has Skylake-E _now_ which is not even available at retail yet.

<comment><USER31> Well, it also seems that Intel prioritized its customers. If I were Amazon or Microsoft (the rumors said Google and Facebook were the priority customers), I would get Naples just to _spite_ Intel (it doesn't hurt that AMD's Naples likely offers better perf/$, too, though):

[https://semiaccurate.com/2016/11/17/intel-preferentially- off...](https://semiaccurate.com/2016/11/17/intel-preferentially-offers-two- customers-skylake-xeon-cpus/)

<comment><USER33> Really dumb move by Intel, this what happens when a company becomes too arrogant. They knew about Zen but probably just laughed it off as nothing. At the high level business decisions, things like this matter just as much as technical details like performance/$. Hard to believe they were dumb enough to piss off Amazon AWS, MS Azure, and others.

</comment></comment></comment></comment><comment><USER34> This is the first I'm reading about the 32 cores being 4 dies on a package - Not sure how well that will work out in practice. IBM does something similar with Power servers where 2 dies on a package are used for lower end chips.

Basically, using multiple dies increases latency significantly between the cores on different dies. This will affect performance. I will not judge till I see the benchmark though :-)

</comment><comment><USER35> With how big these chips are getting, I wonder if the next iteration will have an HBM last-level cache on chip.

<comment><USER36> That's the old EHP concept.

[http://wccftech.com/amd-exascale-heterogeneous-processor- ehp...](http://wccftech.com/amd-exascale-heterogeneous-processor-ehp- apu-32-zen-cores-hbm2/)

I'd like to have that in the old project quantum package: [http://wccftech.com/amd-project-quantum-not-dead-zen-cpu- veg...](http://wccftech.com/amd-project-quantum-not-dead-zen-cpu-vega-gpu/)

That would be a TFLOPS level supercomputer on your desk.

</comment></comment><comment><USER37> Just having one of those in a workstation get me all warm and fuzzy.

</comment><comment><USER38> I think Naples will be a very serious threat to Intel in the server market. As Ryzen benchmarks & reviews have shown, Zen really shines in heavy- multithreaded applications. The typical workload of a server.

Though I am kind of worried concerning memory access. Latency penalties when accessing non-local memory are very high on Zen CPUs due to the multi-die architecture design.

Does that mean we will finally see some serious interest in Shared-Nothing design and alike in the future ?

</comment><comment><USER39> Semi-ironically this looks like just the thing to use in a supercomputer controlling a good number of NVidia GPUs.

<comment><USER40> Was thinking the same thing. Like the CPU marked it's good to have competition with GPUs but it would be interesting if Nvidia picked up/ partnered with AMD. Oh well let's see how OpenPOWER pans out.

</comment></comment><comment><USER41> This is a multi-chip-module (MCM). Are the high core-count Xeons now all single die? Will be interesting to see what impact the MCM approach has on benchmarks as I supposed could have a latency impact in certain use cases?

</comment><comment><USER42> In other words, we have a faster server chip coming

</comment><comment><USER43> This is when things will get interesting. Ryzen appears to do better with hot and server workloads than gaming.

<comment><USER43> Should read HPC instead of "hot"

</comment></comment><comment><USER44> can anyone chime in as to why use PCIe over something more core to core direct? As I understand it, the CPU still needs to talk to a PCIe host/bridge controller. Why not have something that is more direct between processors?

<comment><USER45> Hypertransport is an AMD technology that's high bandwidth per line, low latency, and scalable. It's also cache-coherent (well there's a version that is), so it's great for connecting CPUs. But the AMD hardware is flexible and can use the same pins for either.

So the single socket systems can have more pci-e lanes available, but the dual socket has less per socket because some of those lanes are used for hypertransport.

What I can't figure out is why Intel and AMD aren't using similar (Hypertransport for AMD and QPI for intel) to connect directly to GPUs in a cache coherent way. These days the faster interconnects spend a decent fraction of their latency just getting across the PCI-e bus twice.

So 100 Gbit networks, Infiniband, GPUs, etc all could take advantage of a lower latency cache coherent interface, but it's not available.

I suspect mainly because qpi and hypertransport are incompatible and pci-e is good enough for the high volume cases.

<comment><USER5> Well, AMD is one of the founding members of OpenCAPI, [http://opencapi.org/](http://opencapi.org/) , so I guess there's some hope. It seems they haven't talked about it wrt Zen/Naples, maybe some later iteration will have it?

</comment></comment></comment><comment><USER46> Licensing Windows 2016 Datacenter would cost a fortune for the 2P server.

</comment><comment><USER47> I'm wondering how they will stack up against XeonPhi.

</comment><comment><USER48> How feasible will a Naples desktop build be?</comment>


Why Go is a poorly designed language (from a perspective of Go lover) - <AUTHOR> https://medium.com/@tucnak/1cc04e5daf2 <comment><USER2> There has to be a better way of doing this:

      numbers = append(numbers[:2], append([]int{3}, numbers[2:]...)...)

<comment><AUTHOR> I am afraid there isn't. In fact, it's called a "slice trick" and listed in Go wiki: [https://github.com/golang/go/wiki/SliceTricks](https://github.com/golang/go/wiki/SliceTricks)</comment></comment>