Becoming a Better Software Developer: A Handbook on Personal Performance - <AUTHOR> https://www.7pace.com/blog/become-a-better-programmer-skills-development <comment><USER2> Man, I thought this was going to be an article on better code reviews and how to get better feedback from people you work with regarding your performance.

Instead the article is some strange "self-help"/"hustle-hard" blogspam, quoting Malcolm Gladwell and shading a picture of the normal distribution and pretending it's arrived at some brilliant insight.

<comment><USER3> I'm all for having THAT discussion. Things that come to mind -

\- treating PRs as communication and ensuring the person reviewing has the information they need to check for what you coded.

\- Building a culture where discussion around alternate ways of doing things ('this doesn't block merge, but...') is accepted and expected (without becoming hostile/nit-picky or devolving into bikeshedding -- if it's not blocking, the submitter can always just merge)

\- Have brown bags to talk about technology in freer, non-deadline-constrained setting (sparks ideas, gets people building tech communication skills)

Really interested to hear what thoughts others have on this.

<comment><USER4> > treating PRs as communication

I kind of wish that there was a type of thing _like_ a PR, but marked in a way where you couldn't actually merge it. It'd still get built by CI, if such a thing was configured; but the point of the submission of such a "proposal with prototype" object would be to discuss whether the _design_ represented by the prototype implementation is a design worth going with.

The actions applicable to such objects would be "accept and close" or "reject and close." You'd be able to have several of these objects that live under a given issue (i.e. several potential solution-designs to the same _problem_ ), and—as long as the issue has at least one proposal-with-prototype object under it—the issue would be in a "pending" state until one such proposal object was Approved, and Approving one proposal object would Reject the others.

The point of this would be to replicate the thing that people go through with design discussions on mailing lists when they send in code samples to explain their designs—but with those code samples being working, buildable code, such that the properties of the design proposal can be tested against the current implementation and against any alternative proposals.

You could call these objects "RFCs" :)

<comment><USER5> My previous team had a convention of putting a prefix "[DO NOT MERGE]" on the subject line of RFC-style PRs. Worked well enough, though it would have been nice to have the tool enforce that also (even a checkbox like "prohibit merging" would have worked).

<comment><USER6> Gitlab actually enforces this for PRs with [WIP] in the title

<comment><USER7> There's a browser extension that does something similar for github too. At least for Chrome, anyways. I imagine it works for other browsers though.

</comment></comment></comment></comment></comment></comment><comment><USER8> Software is not sports. Stop comparing software to sports. Stop comparing developers to athletes. Stop making analogies to running. Just stop.

In fact, please stop doing that for all serious vocations, life is not a game and that's all sports are: a game. That's why everything in sports is super simple, straightforward, and measurable [except when it isn't, but don't mind me].

Sports are not really a good analogy for most things, because sports are entirely _relative_ and have no fundamental value. No soccer player has any inherent value except for being better than a large amount of other soccer players. So it makes sense that soccer player skill follows a binomial distribution since it's basically that by definition.

This is not the case for developers. Developers do not need to be relatively best to produce a lot of value, and mostly produce value by the nature of, well, producing it. If you create a useful website, you created a useful website, it really doesn't matter if you are the best website creator on the planet. The value of that website has no relationship to your abilities relative to others, and has much more of a relationship to things like whether it's useful for customers.

And since there are a range of domains, you actually end up with balderdash if you measure developers against each other, since some are good at debugging, some at C, some at websites, some at arguing with product owners, and some at writing AIs in Python. There's really no point or benefit from trying to homogenize them all into a group and rank and file them.

What we need is not "great" developers, what we need is higher _standards_ for all developers, so that across all these varied domains we have lots of people who respect quality.

The "fundamental gap" between developers is likely not there and I think this thinking is actively harmful. All we need is to encourage more developers to _care_ , which is already a hard enough problem without getting into the useless weeds of being the developer equivalent of Muhammad Ali, which seems like a great way to discourage literally 99% of developers because that is how sports work in practice and most sane people avoid sports [as a job] for that reason.

Rant over.

<comment><USER9> Yup. I think there's actually some good ideas in here, but then it's surrounded by ridiculous conclusions. For instance, I think deliberate practice is a good thing; you can quibble on the definition of that but fundamentally its true that people often plateau in their skills because they get comfortable and lack a growth mindset.

That's great, but then it says that in order to improve you need to declare a metric so you have something to measure, and then work to improve that. I don't even know where to begin with this; Goodhart's Law is the obvious response. But even more fundamentally than that, the thing that makes programming hard is entirely the qualitative aspects. Every single choice you make in software is a tradeoff with subtle implications, good software engineering is about understanding these tradeoffs in a given context over a period of time, there is absolutely no way you are going to reduce this to any kind of metric without throwing the baby and all its siblings out with the bathwater.

<comment><USER10> > That's great, but then it says that in order to improve you need to declare > a metric so you have something to measure, and then work to improve that.

You don't have to keep the metric same. Metrics are good when they helps you to measure your progress in particular tasks. They are bad if you marry specific ones for life. If you worry about throwing the baby, setup counter- metric.

</comment></comment></comment><comment><USER11> This seems like an article that would not have been on HN's Front Page a few years ago. Are people blindly upvoting articles based on the title? How can HN moderate incredibly low quality articles like this one? This is a checklist of how to become a better anything, how to more effectively work on a team and other work how to's without diving beneath the obvious surface at all.

Am I the only person seeing HN descend into terrible click bait with flame war comment sections? In this case, I really hope my observation is the outlier, and that people continue to find this site helpful and contructive.

<comment><USER12> This type of article has been about 5% of the front page for as long as I've been in the community (~4 years, lurker for ~3).

Yes, maybe it feels obvious. Yes, it's doesn't cite a whole lot of evidence. But it resonates with people, and being reminded of the obvious continues to be useful if not glamorous.

So I'll keep upvoting those that resonate with me!

</comment></comment><comment><USER13> > The well-known 10,000-hour principle, popularized by Malcolm Gladwell, > illustrates an important lesson for developers. ...

It's not often I'll wholesale dismiss an article on HN because of one sentence, but this is one of those times. The fabulist Gladwell is not credible in general, and his 10,000 hour "rule" can no longer be thought to even remotely approach science, or even fact. The author lost all credibility with this sentence.

<comment><USER14> I think it's an interesting look at the spread of bad information. When the concept of "everyone is 10,000 hours from being an expert" first surfaced, it was spread far and wide. As time went on and more evidence came out that this wasn't accurate, the NOT of the concept wasn't as interesting, so it wasn't spread nearly as much.

Basically, I don't blame people for still thinking it's true or a good rule of thumb. It's usually just used to say "if you want to be good at something, you have to practice", which is true.

<comment><USER15> Honestly, this makes it worse for me. Practice makes perfect was not exactly a novel concept before Gladwell. The phrase itself has been popular since before the US Civil War:

[https://books.google.com/ngrams/graph?content=practice+makes...](https://books.google.com/ngrams/graph?content=practice+makes+perfect&year_start=1800&year_end=2000&corpus=15&smoothing=3&share=&direct_url=t1%3B%2Cpractice%20makes%20perfect%3B%2Cc0)

I mainly blame Gladwell for this, of course, but people repeating this are definitely getting side-eye from me.

<comment><USER14> > Practice makes perfect...

"Hmm, sounds too cliche"

> The well-known 10,000-hour principle, popularized by Malcolm Gladwell, > illustrates an important lesson..

"Much better, I've used more words"

</comment></comment></comment></comment><comment><USER16> Here's the key thing that I think has made me a better developer - focus on being a better communicator. At some stage in your career you're going to work on something that would be impossible for a lone dev to write. At that point being someone who is happy to have a meeting, write a clear document, or answer the phone is going to make you a key person on your team. You'll be in the center of everything, hearing the facts and making the decisions. That's what senior devs do. They communicate.

<comment><USER17> I firmly believe that every developer should take a technical writing course, even if they are self taught. Only my high school typing class surpasses my university technical writing course with regard to the skills that I consciously apply to my job.

<comment><USER18> It never ceases to amaze me how many engineers I work with struggle to write a competent email. This is a vitally important skill when you're trying to communicate specifications for a project or bugs and changes to code and hardware designs.

I'm not perfect by any means. I've had my share of confusing interactions (particularly when explaining technical things to peers in meetings), but at least I can proofread with a critical eye and fix confusing grammar and explanations.

</comment></comment></comment><comment><USER19> I have been collecting similar guides to improve on software engineering, as I am a recent graduate looking to excel in my career. Here are some other blogs I found useful:

[https://recurse.henrystanley.com/post/better/](https://recurse.henrystanley.com/post/better/)

"Ask HN: What topics/subjects are worth learning for a new software engineer?": [https://news.ycombinator.com/item?id=18000410](https://news.ycombinator.com/item?id=18000410)

</comment><comment><USER20> My favorite takeaway from this is that I'm an ANGELIC TROUBLEMAKER (because much/most code is demonstrably terrible but I do have a fair amount of experience in greatly simplifying it), but other than that I find several points in the article to only be relevant in these times.

I've been through several boom/bust cycles and right now we're living in a boom period where:

* Programming demands a high hourly rate

* There are many programmers on the market, tending towards making them interchangeable cogs

* Income inequality is high, leading to a wide discrepancy between wealth and technical literacy

After the coming web2.0/mobile bust in a few years, these will likely no longer be true. I think what will make a good programmer then is the ability to map use cases (design) to abstractions and then to business logic in as little code as possible (preferably none at all). We're going to go back to a time more like the 1980s, when nontechnical people were able to get Real Work done with spreadsheets and DBMSs like Microsoft Access.

I looked at Airtable a bit and it has some interesting ideas but is no panacea. There are other interesting attempts in that space but almost everyone seems to be moving in the opposite direction towards large volumes of highly imperative, object oriented code which is prone to technical debt that requires a longterm support staff of technicians to maintain it. In other words maintaining is currently more lucrative than architecting, but that wasn't always true, and will likely not be true again in a few years.

<comment><USER21> I don't think this ever stopped. I still migrate company's access and excel sheets to the cloud, and many of these 'apps' were built in the last decade. But eventually corporations outgrow these technologies when they bump up against the technologies' limits. It's just a lot cheaper to migrate to and maintain a web app than it was in the 80's so they migrate earlier now than they used to.

</comment></comment><comment> shady-lady may as well lead in with truthful sentence: "For this article, we reached out to every kind of role except actual software developers"

</comment><comment><USER22> I have three rules for better coding performance, for me.

\- Ask Questions

\- Do not Multitask. One problem at a time.

\- Test control answers i.e. You want result to be 10 then test for 9 and 11. Wrong results create a more stable solution.

Speed has never been my strong suit, but when I deliver code to QA, you can bet that you will be testing a well thought out solution.

</comment><comment><USER23> Highlights of this article:

\- 10,000 hours mastery: Another power-of-10 based bullshit stolen from Rocky I.

\- Stacked ranking: Bullshit belief that gives you 100% probability of ruining a company. Costed Microsoft 10 years to fix the damage caused by it.

\- Personality types: Horoscope-grade pseudoscientific bullshit used to justify bad management. See also: MBTI

\- Hyperbolic decay: Often applied to impress people easily impressed with math, i.e.: bullshit

\- Self-promotion

My thoughts and prayers to the 278+ people that upvoted this article.

</comment><comment><USER24> The most valuable skills I've learned are empathy and a servant attitude. I cringe at some of the things I've said in the past with an inflated ego and poor attitude. I try to put relationships first and listen before problem solving.

</comment><comment><USER25> Despite the weird formatting and general buzzwordiness I actually enjoyed this quite a bit.

Chapter 2 resonated the most, finding a meaningful metric and then measuring against that is something every engineer should do, not just in SW, but sadly it's very common that teams just bumble along hoping for the best.

</comment><comment><USER26> Was hoping for more concrete insights. Things only developers with decades of experience would know.

<comment><USER27> Here's an insight from a developer with 15+ years of experience: be very, very careful who you take advice from. The so called "best and brightest" in our industry have led us down the path we're at today. I have a supercomputer in my pocket compared to computing speeds in 2000, but it can't even smoothly scroll down a webpage. Object Oriented programming alone has derailed progress in computing by at least 20 years.

<comment><USER26> Thank you for this - Can you clarify why OO derailed us? But if that explanation might be a long story haha so what was before OO, so I can do my own research

<comment><USER27> This video does a great job of explaining why modern programming in general has failed: [https://www.youtube.com/watch?v=uZgbKrDEzAs](https://www.youtube.com/watch?v=uZgbKrDEzAs)

I think OOP specifically derailed programming because of how big it was, how fast it took over and how long it was considered to be the one true programming paradigm. When OOP hit, it hit hard and fast. It wasn't long before colleges were teaching OOP as The One True Way To Program. Every employer required knowledge of OOP before they would interview you. And I mean every employer, from startups to corporate enterprise. And once it took hold, it took people (and me!) 10-20 years to realize the OOP emperor had no clothes on.

I still don't understand why or how it got so big so quickly. All I can figure is that the software industry as a whole pays attention to the wrong people.

</comment></comment></comment></comment><comment> d--b God, what a badly formatted article. Fonts, line spacing, paragraphs. Everything is wrong. It's unreadable...

</comment><comment><USER28> Be warned! There is no correlation between being a great software engineer and having a rewarding career in the workplace. You need other skills to survive the politics in hiring and promoting as well[0].

0 - [https://cis.org/North/Oracle-Sued-White-Males-Indians- Receiv...](https://cis.org/North/Oracle-Sued-White-Males-Indians-Receive- Different-Kinds-Favoritism)

<comment><USER29> Oracle isn't a good example. Newer companies pair career development with individual developer impact.

</comment></comment><comment><USER30> Unfortunately you need half of this. Just listen and understand what other say don't go over it. Don't think you have it all right. Work hard keep your head down, but look for the options.

There is a lot of stuff to say to go kill it, but not. To kill it you have to be exceptional and usually people are not exceptional. Unfortunate is most people will think the6 are exceptional and fail.

</comment><comment><USER31> This is an excellent general framework for upping your game in software development within the context of a decent sized software engineering organization. I've stumbled my way into much of this advice over the past 2-3 years.

One caveat is that much of the advice is predicated on having a supportive environment.

For Example, > Application development is a team sport. Period. Full stop.

What if you work in an environment where people primarily work on their own? I have done a lot of that in the past.

> For many, the best way to learn is to teach.

What if there aren't feasible opportunities to teach or your management pushes a pace that makes it not plausible?

> Create side projects

There are managers that support the idea of doing side project but not the execution.

I'm sure you can find more examples of suggestions that aren't plausible in your environment.

Here is my answer to these examples, I wasn't just complaining. If you don't have opportunities to fulfill sections of this framework that you feel you are lacking in, do it anyway. If your manager tells you not to spend time learning and improving ignore them. Do it anyway.

You might say, "that's fine for you Mr. internet commenter, but I'm the one that has to take the risk". Well, that's true but I've already done it. Here were my results.

Did exactly what my management asked me to do for two straight years. All reviews for two years were "Meets expectations" with a long list of things I should improve.

One year ago, I read a book with an abhorrent title but good information "stealing the corner office"

I stopped listening to what my manager told me to do and instead I picked up random side projects with little to no perceived business value for my team, spent 10x more time reading code and made commits in projects I shouldn't be working on, and started spending a lot more time understanding basic fundamentals of software engineering.

Have had "exceeds expectations" on every review since and glowing praise.

It's counter-intuitive but, don't give the people what they ask for, give them what they want!

Note: I got a bit carried away on this comment, I should have mentioned that in reality I spend 10 - 20 % of my time working rogue, and the rest of my time doing what my boss tells me.

<comment><USER32> I'm pretty sure ignoring what my manager told me to do would have gotten me fired relatively quickly at every job I've ever had.

<comment><USER31> haha ya, my comment isn't full fleshed out. I think I got too excited. I should have added that I spend about 10% of my time working rogue which is much different than what I wrote.

<comment><USER32> That is a little different. ;) Is that 10% in addition to the 100% you were spending before, or are you spending 90% of your time doing what you're told and 10% on other things? I'm thinking here of stuff like Googlers referring to 20% time as 120% time, and such.

<comment><USER31> I know many people that take the %120 approach, but I take the 80/20 approach. I have a lot of kids and volunteer a lot outside of work so I don't want to make time for 120.

</comment></comment></comment></comment></comment><comment><USER33> Orthogonal content that inspired me to finally get serious about learning functional programming, and led me to Erlang: [http://sijinjoseph.com/programmer-competency- matrix/](http://sijinjoseph.com/programmer-competency-matrix/)

Sure, it's flawed, but isn't everything?

</comment><comment><USER34> In my experience the main determinants of programmer productivity are innate thinking ability and motivation.</comment>


When I can make post here as I am new here? - <AUTHOR> <comment><USER2> It look that you did it.</comment>


Ask HN: Is there a service like Heroku for hosting .NET core applications / dbs? - <AUTHOR> I love the idea of a Heroku style site for a single-founder startup but don't like the idea of third party buildpacks that lack EF migration support once deployed etc. <comment><USER2> Azure App Service, maybe? Deploying from the CLI is quick and easy. Or you can do it right from Visual Studio or VS Code.

Setting up a database of your choice (Postgres, MySQL, SQL Server) is nice and easy too.

<comment><USER3> Visual Studio can also help automate running EF Migrations scripts, you just provide a Connection String under EF Migrations settings in the Publish settings.

What it does under the hood is also relatively easy to script or automate in other places. It builds a script artifact using:

        dotnet ef migrations script --idempotent

That gives you a "run anywhere" SQL Server T-SQL Script (I don't think it supports other databases) that will run any migrations that don't exist in the target database (and is safe if the target database is already up to date).

Then it's just a matter of running that script on the right database.

</comment></comment><comment><USER4> Azure Functions supports .NET core. [https://docs.microsoft.com/en- ca/azure/azure-functions/suppo...](https://docs.microsoft.com/en- ca/azure/azure-functions/supported-languages)

</comment><comment><USER5> Yes. There is [https://appharbor.com](https://appharbor.com) It also supports many free tier third party add-ons and prior to docker being as popular as it is I found it a great site to quickly deploy prototypes [https://appharbor.com/addons](https://appharbor.com/addons) There is also an opportunity to request free hosting if you are building something for the developer community. [https://appharbor.com/page/community-application- program](https://appharbor.com/page/community-application-program)

<comment><USER5> Also you might be interested in looking at FluentMigrator for database migrations. It's a tad more work but they have a really well thought out fluent interface for writing migrations. I find it much nicer to work with than ef migrations

</comment></comment><comment><USER6> App Engine Flexible for .NET Core is fairly low effort to go from code to deployed

[https://cloud.google.com/appengine/docs/flexible/dotnet/an-o...](https://cloud.google.com/appengine/docs/flexible/dotnet/an- overview-of-app-engine)

</comment><comment><USER7> You can simply dockerize your app and deploy it to Heroku: [https://medium.com/faun/how-to-dockerize-a-net-core- applicat...](https://medium.com/faun/how-to-dockerize-a-net-core-application- and-deploy-it-to-heroku-893978bc444b)

</comment><comment><USER8> Maybe [https://appharbor.com/](https://appharbor.com/)

</comment><comment><USER9> [https://azure.microsoft.com/](https://azure.microsoft.com/)

</comment><comment><USER10> With the inception of Docker and containerized applications, what are the upsides of a Heroku-type service?

<comment><USER11> Speed. I'm working on a new personal project. The last project I was on, I took time to write Terraform to deploy to AWS Elastic Beanstalk where I ran Docker containers. It took me two days to get all of that setup, and I consider that time to have been poorly utilized.

Yes, I can use Docker and deploy to my own server, but I really want to focus on the product/service being built, not infrastructure. I'm using Heroku now because it is free (for the moment), and setup is relatively quick. I just added Redis and Celery last night. That was mostly a matter of clicking to add the add-on, and updating some Django settings.

If the project takes off, and makes some money, maybe I'll move to a different provider. At this stage, however, the costs outweigh the benefits.

<comment><USER10> > The last project I was on, I took time to write Terraform to deploy to AWS > Elastic Beanstalk where I ran Docker containers. It took me two days to get > all of that setup, and I consider that time to have been poorly utilized.

To be fair, you don't need that whole stack to run containers, and most of the work you had to do was to operate a particular choice of infrastructure services and tooling that are not necessary to run containers.

All you need to run containers in a single-node setup is Docker, and that's it.

<comment><USER11> That's true. I wanted to maintain good continuous delivery practices while minimizing the need to worry about individual resources (e.g. web server, database server, DNS), which is why I opted for Elastic Beanstalk. Then I fell down the Terraform rabbit hole.

Docker definitely gets the job done, but I would still have to worry about dealing with data backups, DNS, and deploying to the server. Heroku worries about all of that for me now.</comment></comment></comment></comment>


Yanosuke Hirai - <AUTHOR> https://en.wikipedia.org/wiki/Yanosuke_Hirai <comment><AUTHOR> "Hirai was a man with a strict sense of responsibility. He was strongly convinced that an engineer must take responsibility for the whole chain of consequences of his decisions.

And that mere compliance with the letter of the law or regulations would not provide him a reasonable excuse."</comment>


The letter that started AMD's Open-Source Strategy - <AUTHOR> http://www.phoronix.com/scan.php?page=article&item=amd_radeonhd_four&num=1

<comment><USER2> I find the ATi/AMD FOSS driver story bit sad, considering the state of the drivers today. I feel that the community kinda betrayed AMD there by not managing to create high quality drivers even when given the docs they had craved for so long. I remember the discussions on /. and elsewhere before this; "Just give us the docs, and we'll write the drivers".

<comment><USER3> Hi, I was one of the amateur community members that created drivers after the AMD documentation drops started. Could you explain exactly what you feel is not high-quality about the drivers we've written?

<comment><USER4> Aren't the Linux drivers much later and much slower than AMD's Windows drivers?

<comment><USER3> The kernel part of the Linux drivers is written as soon as the developers get hardware from AMD. There are currently a half-dozen AMD employees working on this, as well as a few non-AMD people, and generally, hardware support has been pretty concomitant with general releases of the hardware.

"Slower" really depends on what you're doing. If you're doing lots of 2D stuff, then no, not by a long shot; the open drivers are generally very speedy for 2D stuff. If you're doing 3D stuff, then the raw framerates might be slower for games, but as a general rule, nobody's paid to make open drivers as fast as possible, only fast enough to run well.

There's also a bit of disconnect between blessed AMD drivers and OEM drivers for Windows; there's known hardware which has _never_ been supported by the AMD Windows drivers but works fine in Linux under the open driver stack. "Later" is kind of a loaded term; if you buy an AGP HD 2400 with a PCIe-to-AGP bridge, it has immediate Windows support, from the OEM, but with no updates and no upgrade path. Linux support lagged for that chipset by about four-six months but continues today, with updates and fixes.

So, tl;dr: It varies so much that this question ends up being loaded.

</comment></comment></comment></comment><comment><USER5> In other words: four years and they still suck.</comment>


Safari now blocks Google Analytics on sites, new Privacy Report feature shows - <AUTHOR> https://appleinsider.com/articles/20/06/22/safari-now-blocks-google-analytics-on-sites-new-privacy-report-feature-shows <comment><USER2> _This article is incorrect._

There does not appear to be a change between Safari 13.1 and Safari 14 for how it handles GA. I have tested it myself.

With Safari 13.1 Apple made a change [1] to their Intelligent Tracking Prevention that blocks all 3rd party cookies for cross site resources.

The only change in Safari 14 appears to be that it reports which domains have had cookies blocked. _The Google Analytics beacon is still sent by the browser._

Benedict Evans (cited in article) since deleted his tweet, but this article seems not yet to have been updated.

[1] [https://webkit.org/blog/10218/full-third-party-cookie- blocki...](https://webkit.org/blog/10218/full-third-party-cookie-blocking-and- more/)

<comment><USER3> Could someone translate this statement to something a layman might understand? (I'm not a web dev nor am I following SEO news closely enought)

Do you imply that Apple is putting up a misleading interface in the new version of Safari where GA appear blocked while it actually isn't?

That's a pretty bold assertion and the provided link is irrelevant on that.

Again only looking for more information maybe I didn't get your point at all because I'm not in the SEO field.

<comment><USER4> No, it's that Safari is blocking third-parties under the same policies that it laid out earlier.

<comment><USER3> Original commenter stated that

> _The Google Analytics beacon is still sent by the browser_

This is what I'd like some clarification about.

Wether policy changed or if it is just a UI change is another subject. Do they actually block GA or not? And if not does the UI mislead users to think otherwise?

<comment><USER2> Original commenter here. They are not blocking GA.

Apple's ITP affects both 3rd party HTTP cookies and 1st party JS cookies. There does not appear to be anything but a UI change between Safari 13.1 and 14, from my initial analysis.

GA primarily utilises 1st party JS cookies. If you have GA on example.com then the cookie will be stored against example.com. On of these cookies stores a unique ID for you as a user.

GA will then send 'beacons' (GET requests to Google endpoint, with data passed in URL parameters) for pageviews and other events. Your unique ID is included in these URL parameters, which allows the various events from you to be joined up into a 'session'. _That has not changed_.

What ITP did previously (just over a year ago, I think) is limit the age of these cookies to auto delete after 7 days, meaning that if you leave a site for more than 7 days your new session won't be able to be joined up with your previous session. That is still the case.

If it is of interest I have a deck [1] that discusses this (link goes to the relevant section - skip to slide 71 if you just want to understand the ITP impact on GA).

I'll caveat this a bit - I've not done an in-depth analysis. The person I strongly recommend following for expert updates on this topic is (my friend) Simo Ahava [2] - he is an authority of GA and the impact of ITP.

[1] [https://www.slideshare.net/TomAnthony/browser-changes- that-w...](https://www.slideshare.net/TomAnthony/browser-changes-that-will- impact-seo-from-20192020/59)

[2] [https://twitter.com/SimoAhava](https://twitter.com/SimoAhava)

<comment><USER5> Simo also has this[1] handy site, for tracking the impact of ITP and other browser cookie restriction schemes.

[1] [https://www.cookiestatus.com/](https://www.cookiestatus.com/)

</comment></comment></comment></comment></comment></comment><comment><USER6> Suggestion: the access logs your web server collects are enough for basic analytics, and if you are curious for more, you can manually instrument your site a little. You don't need to give Google the power to spy on your users.

<comment><USER7> Server logs can't do this job well.

If the system is designed well, in a lot of cases the users won't be receiving the resource from your server, they will be receiving it from a) their browser cache, b) their local network cache, c) their ISP's cache, or d) a CDN. Your server logs might be showing several thousand hits while the number of times a page is actually shown to somebody might be tens of thousands of hits.

Server logs are great for logging what is happening on your server, but awful for understanding your user base.

<comment><USER8> Is it possible to add a basic ping that pings your server whenever a page loads (cached or not) to get around this?

<comment><USER9> Yes, with Cache-Control, and then if you turn that product into a SaaS so that not every website has to run a copy, you get Google Analytics.

<comment><USER10> I think some startups are now trying to offer this as a self hosted service. That sidesteps the concerns around using a half baked, DIY solution as well as issues with privacy and data ownership.

</comment></comment></comment></comment></comment><comment><USER11> I am running the new betas iOS 14, iPadOS 14, and macOS Big Sur.

I love this feature in Safari. You open a new tab or browser window and there is a message area letting you know what is being blocked.

I am sick and tired of large tech companies like Facebook, Google, Amazon, etc. making money off of my data with scant benefit to me.

Not to pick on Facebook and Google, but I only use them now (well, almost) for paid services. I happily pay Facebook for Oculus Quest hardware and entertainment. I happily pay Google for music, books, movies, and Google Cloud Platform (which I personally like much better than AWS).

</comment><comment><USER12> I've done a bit more reading. This is not as dramatic as it seems. First party GA is not blocked. Access to 3rd party storage may be blocked, but this would not prevent web interactions from being visible to GA.

<comment><USER13> What is the difference between First party and third party GA?

<comment><USER12> Strictly speaking, GA is always 3rd party (it would only be 1st party if/when its used to measure google-analytics.com which is not a user-facing domain). For measuring any other website, its 3rd party.

I believe that this would limit GA's ability to store data in cookies on my system (user or session-based attributes). GA could still create unique identifiers based on my user or session-based attributes and store those IDs on their own servers, then call them back up when I revisit the site.

I'm still coming up to speed on this, maybe someone with more experience could correct or clarify my statements.

<comment><USER14> In the context of web analytics, first-party vs third-party usually refers to _how the user is identified_ , not to where the analytics status is hosted. Google Analytics uses first-party data for its tracking. Third-party tracking builds a universal profile of the user across the internet, first-party tracking builds user profiles that are silo'd to the website.

Google Analytics stores a _first-party cookie_ with a unique ID for each user. This is used to de-duplicate traffic from the same user to the same domain. This cookie not shared across websites. If you go to example.com and website.com, those are two different first-party cookies without views into each other.

Optionally, Google Analytics can be configured correlated this with a _third- party cookie_ from google.com for advertising purposes. This allows the website owner for example.com to connect a user converting on example.com to that same user having seen or clicked an ad on google.com. It also allows the website owner to target ads on google.com towards users based on their activity on example.com

Previous iterations of Safari's ITP have outright blocked the third-party cookie, and have limited first-party cookies based on whether they're HTTP cookies or JavaScript cookies.

</comment></comment></comment></comment><comment><USER15> It's time. GA does seem like a privacy destroying data grab and it's so hard to argue with marketing because it's free (for us).

I like the fact that open source and managed analytics which is privacy- sensitive is becoming a thing.

When looking for a privacy-sensitive analytics service I stumbled on [https://plausible.io/](https://plausible.io/) which checked my boxes at the time. I imagine that there are more out there.

</comment><comment><USER16> I have no love for Google Analytics, but as a small-scale publisher, I have serious questions about what tools can replace it:

1) Which analytics can a website employ that is not geared toward enriching the analytics platform developer by violating site visitor privacy?

2) Do those analytics mechanisms have any kind of aftermarket, such that third-party developers integrate it into publishing platforms that publishers use.

3) What do those analytics mechanisms and the associated tooling cost?

<comment><USER17> I think collecting analytics from the server logs is going to get more popular again, though a problem for SPAs? We could call it Edge Analytics this time around and run it on cloudflare.

For publishing systems, couldn't wordpress report back analytics data to itself, on its own domain? Something like that existed but i'm not sure if it was using Jetpack servers or not. If this isn't already possible, it seems like an obvious thing for someone privacy concious to build.

<comment><USER18> This exists over here: [https://github.com/ibericode/koko- analytics](https://github.com/ibericode/koko-analytics) \- never used it myself though.

</comment></comment></comment><comment><USER19> The webkit engineer behind "Safari's Intelligent Tracking Prevention" on Twitter confirmed when asked there have been no changes to how it blocks GA in the new version, it just is now visible in the report. And details, ITP doesn't block loads, it blocks cookie access, deletes cookies and website data for sites you don't interact with, downgrades referrers, and more. Its cookie blocking applies to _all_ third parties." I responded that it seems all the new sites are reporting that GA is now being blocked/prevented in the new version are incorrect then. And these headlines appearing on Hacker News it looks like will only further unintentionally spread that misinformation.

</comment><comment><USER20> That little rumour about Apple buying DuckDuckGo seem to make more and more sense by the day.

<comment><USER21> DDG is also front and center in the Big Sur new features for safari page.

[https://www.apple.com/macos/big-sur- preview/](https://www.apple.com/macos/big-sur-preview/)

<comment><USER22> If you lookup street addresses within DDG it now returns a result with AppleMaps.

I don't mind this but I hope they've partnered with Apple and not sold out.

<comment><USER23> I've had that for what I though was 2 years, so I looked it up and it appears they partnered with Apple back in Jan 2019.

[https://www.theverge.com/2019/1/15/18183653/duckduckgo- apple...](https://www.theverge.com/2019/1/15/18183653/duckduckgo-apple-maps- local-search-mapkit-js-web)

</comment></comment></comment></comment><comment><USER24> How about the 500 other tracking/analytics companies?

Even Adobe is now in analytics business.

<comment><USER4> Adobe is on my list, affiliated with the domain "demdex.net".

<comment><USER25> Every time I see that domain name, I think of skin mites ( _Demodex folliculorum_ ).

</comment></comment></comment><comment><USER26> Google Analytics is the default attribution tool for many (most?) small and medium sized digital marketing agencies. Most businesses have some kind of GA account set up with a few years of history and it's quick to leverage the data.

With ad and taking blocking becoming more popular all the time, there will reach a tipping point where the data is unreliable enough that ROI can no longer be proved with it. It will be interesting to see what happens then in this space.

Alternative attribution models, more insidious fingerprinting?

</comment><comment><USER27> What's a good tool for doing server side analytics?

Like for a small site I've made for fun. The only way I can easily know how many users visit is via Google analytics.

Well easily that is.

<comment><USER9> When I was a child, I used AWStats. It's still around. Sorry this isn't of much help! Honestly I just wanted to reminisce :)

</comment></comment><comment><USER28> Won't this be the norm with pushing to get rid of third party cookies? Or are we backpedaling on that now?

</comment><comment><USER29> We run Matomo (formerly Piwik), and I recommend it. It's actually better than Google Analytics in some ways, and you get your own data. This makes deeper analytics easier and also helps protect user privacy since the data is held only by the operators of the site being visited.

<comment><USER30> Are you happy with how fast the data loads in Matomo? I tried their online demo and everything load very slowly and content kept jumping around, it felt pretty bad in terms of UX.

<comment><USER31> Agreed on this – everything in Matomo is slow and I find the UI clunky.

<comment><USER30> I am actually working on an alternative ( [https://usertrack.net/](https://usertrack.net/) ), even though I never used Matomo. I did try their demo a few days ago and, being so popular, I expected it to be really good, but it felt like an outdated platform that couldn't care less about UX.

</comment></comment></comment></comment><comment><USER32> Good. Currently I have to modify my hosts file or use something like NextDNS to block Google and others from gathering data from me even when I'm not explicitly using their services.

</comment><comment><USER33> Is there any chance that this is about reducing Google's competitive advantage and not really about users' privacy?

</comment><comment><USER34> I wish Apple would enable this at the OS level, though in the long run it won't matter. People will proxy requests and find all sorts of ways around it. It's an arms race with billions of dollars on one side and a vague sense of "privacy would be nice" on the other.

</comment><comment><USER35> I used simpleanalytics for a bit and it was nice. Less granular data but that is by design.

</comment><comment><USER36> This is not new. Safari has been blocking third-party cookies for a while. Even Chrome offers this setting now. With that setting turned on, Chrome will also block Google Analytics when you are not on a google.com page.

</comment><comment><USER37> Federated analytics soon? - Google gives you a docker container and an API key to run that collects metrics on your public/own cloud, that gets slurped up to Google and you still get your demographic info.

<comment><USER38> Clever, but could just send them logs

</comment></comment><comment><USER39> If that's really the case, 3rd party analytic service can still work by taking over the traffic from the service domain, then proxy back the traffic to the web server, somehow like cloudflare.

</comment><comment><USER19> While it certainly blocks it by default in the new Safari beta, can anyone confirm if the existing Safari which already blocked third party trackers explicitly blocked google analytics?

</comment><comment><USER40> This is pretty awesome. All browsers should do this with malware.

I get that people like statistics, but if you share it with a third party, it can safely be condemned.

</comment><comment><USER41> Shots fired - Apple will take Google's money to be the default search engine but won't let them track "their" users.

</comment><comment> Pete-Codes I've been using Simple Analytics since day one so I can kick back and relax I guess

</comment><comment><USER33> Personally I am not at all concerned when my data is used for marketing. Instead, I like learning about products tailor-made for me.

By privacy I understand not sharing data with the public or with the oppressive regimes when it may lead to harassment, firing or arrests of people.

But using my data to sell me some watches or bike parts? I'm in.

<comment><USER42> The internet is used for more than shopping. Your searches should not be public domain. Your health records. Your location. The time you go to bed at night. Where your house is. How many children you have. When you'll next be away from home on vacation. That you looked around on a dating website while married. That you're gay in a country where it carries the death penalty.

<comment><USER33> Is this currently public?

I advertise on Facebook but I can't see anyone's searches or current location. Although I can target people who are interested in LGBT or people who have been to SFO recently. If they like my post, I can also see their name and photo.

That seems reasonable to me.

</comment></comment></comment><comment><USER43> I really thinks it's a weird move. Safari user will disapear from our understanding of the web. We might not design and code for Safari because these users will become virtually innexistent.

I am a small publisher, Safari users are demonetized , untracable, i might just say to them gtfo.

<comment><USER44> Aren't safari users more rich on average, and more willing to spend money on your website?

If you need to track your visitors without thinking about their privacy, perhaps your business model isn't great.

<comment><USER45> Haha because surveillance capitalism isn't making hundreds of billions with data!

</comment></comment></comment><comment><USER46> I'm wondering how self-hosted solutions like Matomo will be treated?

<comment><USER30> How do you think they should be treated?

</comment></comment><comment><USER47> Tag manager too?

<comment><USER4> I see Google Tag Manager in my list.</comment></comment>


How We Saved $132k a Year With an IT Infrastructure Audit - <AUTHOR> https://overflow.buffer.com/2016/03/31/how-we-saved-132k-a-year-by-spring-cleaning-our-back-end/ <comment><USER2> I will add another suggestion, if you use S3 at all... one of your largest costs is likely the bandwidth. Have you considered just placing caches in front?

I took a $100 per month S3 bill down to $5 per month by simply having existing Nginx servers enable a file cache.

It does help that I never need to cache purge (versions are saved in S3 and become URLs), but it was super trivial to just wipe out $95 per month of cost for zero extra spend.

My current setup is:

S3 contains user photos, web app (not on AWS) handles POST/GET for S3 (and storing local knowledge), Nginx at my edge has a cache that is currently around 28GB of files, and then CloudFlare in front of all of this saves me around 2TB of bandwidth per month.

The real gotcha for me is that I was relying on CDNs for my cache, but when CDNs reach 50+ PoPs I was starting to see multiple requests for the same thing as a result of people in different cities requesting a file. So the Nginx cache I've added mostly deals with this scenario and prevents additional S3 cost being incurred.

<comment><USER3> > The real gotcha for me is that I was relying on CDNs for my cache, but when > CDNs reach 50+ PoPs I was starting to see multiple requests for the same > thing as a result of people in different cities requesting a file.

Having never used a CDN, this sounds weird. This means that the caches are not synchronized between PoPs, even though they're supposed to be at the same level in an HTTP request. Is this normal behaviour for a CDN ? I'd expect one PoP to check with other PoPs before hitting upstream.

<comment><USER2> It's normal for most smaller CDNs to not have their PoPs communicate, yes.

With larger CDNs you start to get hierarchical caches: [https://trafficserver.readthedocs.org/en/5.3.x/admin/hierach...](https://trafficserver.readthedocs.org/en/5.3.x/admin/hierachical- caching.en.html)

The theory being that the PoP closest to the origin is the one responsible for going to the origin and thus that other PoPs will fetch cached items for the closest PoP to origin.

Nearly all of the very large CDNs support some degree of hierarchical caching, and the ones becoming large are gaining the capability.

At CloudFlare (where I work) the need for a hierarchical cache was low priority until we started to rapidly increase our global capacity... once you reach a certain scale then the need for some way to have PoPs not visit the origin more than once for an item becomes very important. You can be sure we're working on that (if you are an Enterprise customer you could contact sales to enquire about beta testing for it).

But right now, for us and many other providers, just enabling an nginx cache in front of any expensive resource will help. By "expensive", I generally mean anything that will trigger extra expenditure or processing when it could be cached.

Edit: Additionally, nearly every CDN is operating an LRU cache. You haven't bought storage and not everything you've ever stored is being held in cache. You only need a few bots (GoogleBot, Yandex, Baidu, etc) constantly spidering to be pulling the long tail of files from your backend S3 if you haven't got your own cache in front of it. Hierarchical caching isn't a silver bullet that takes care of all potential costs incurred, but having your own cache is.

<comment><USER4> What size is the Cloudflare cache on the Free and Pro plans?

<comment><USER2> It's a question without an exact answer.

It depends where your origin is, where your users are (near 1 PoP? 2 PoPs? spread evenly globally?), how frequently files that can be cached are requested, the capacity of each PoP, the contention of each PoP, etc.

A few years ago when the customer and traffic growth rate exceeded the network expansion rate the answer was probably "not big enough", but we've since upgraded almost every PoP and added a huge number of new ones: [https://www.cloudflare.com/network-map/](https://www.cloudflare.com/network- map/)

The answer now is "more than big enough".

We cache as much as possible, for as long as possible. The more requested a file, the more likely it is to be in the cache even if you're on the Free plan. Lots of logic is applied to this, more than could fit in this reply.

But importantly; there's no difference in how much you can cache between the plans. Wherever it is possible, we make the Free plan have as much capability as the other plans.

</comment></comment></comment></comment></comment><comment><USER5> A few people in the comments are saying 'isn't better to just setup your own SQL server instead of RDS?' and similar. I don't want to post a reply to each, so I will say it here.

While I can totally sympathize from a programmer point of view (setting up, tweaking stuff and all is a great fun), but you need to ask yourself whether it is in the interests of business to do so. Especially if you're working in a small team with no dedicated infrastructure staff or a startup with a short runway and a lot of urgent user facing changes.

Doing something on your own (e.g. setting up your own alternative to S3, or configuring your own SQL servers), comes with a cost and it's not only the programming/initial setup time. It's also opportunity cost (instead of setting up a server, I could, for example, analyze some user data); maintenance (more things to worry about which you can outsource); skills set required to run the infrastructure (running your own SQL cluster requires more knowledge, more training than running one on RDS), etc.

So is it in the interest of the business to run your own infrastructure?

If you have thousands of servers and spending millions on it - probably, but then probably you can make an attractive deal with GCE or AWS :)

If your application needs some complex performance related stuff which is harder to do in the cloud (e.g. some custom hardware or whatever), then again, running your own infrastructure might be better.

But if you are like the majority of the companies/products (you just need infrastructure to run reliably and performance should be just good enough), using AWS and friends might make a big difference.

<comment><USER6> If you come to the conclusion that the opportunity cost is too high for your team/company, fine...I can believe it....as long as you're also weighing the benefit of learning. All learning has an opportunity cost.

I do believe that someone who can setup and configure nginx to do load balancing, caching, rate limiting and build middlewares in LUA is potentially going to be a more productive full stack developer than someone who can't. As a programmer, having managed postgresql, has made me a more effective programmer. I have a good understanding of how it vacuum and collects statistics, the relationship between connections and sorts and work_mem, so I'm better equipped at writing queries and troubleshooting issues.

The gain to me personally and to my employer (and future employers) is not trivial.

<comment><USER7> This reminds me of recent discussions about how countries that outsource their manufacturing quickly lose knowledge of manufacturing technology and fall behind in innovation and self-reliance. I don't think we are there yet, but it is conceivable that in the future system administration could become a lost art to many. Something to consider as more of our infrastructure needs are met by the cloud. I'm sure I'm overstating this, but I figured I'd share anyway

</comment></comment></comment><comment><USER6> If saving money and giving your users a better experience are priorities then, _in general_ , moving off AWS is worth considering. When it comes to EC2, spot instances or maybe you're doing it wrong.

Conservatively speaking, without bandwidth, you're looking EC2 costing 2-4x more than dedicated while being 2-4x slower. This does depend on specific workload, and the gap _has_ been closing (conversely, I've seen specific workloads be worse than 4x slower).

I know RDS is convenient. But learning how to setup and manage your own database is actually a fundamental skill that will serve you well. All learning can be seen as an opportunity cost, but this is one that will let you save money every month, and give your users a better experience.

<comment><USER8> Do you have any place you can point for that?

Anecdotally, I have found that when we account for...

\- Human resources costs (payroll, taxes, benefits) [1]

\- Time to market for new features / products

\- Utilizing reserved instances where it makes sense

\- Appropriately sizing machines

We get with AWS...

\- Faster time to market (accelerated revenue)

\- Relatively the same cost per month (cheaper in some areas more expensive in others)

\- Significantly lower initial investment

\- Increased redundancy (via many small servers vs. a few large servers) / decreased disaster recovery times (and in many cases automated recovery)

I'm not saying you're wrong, that's just what I've seen when we run the numbers internally. You may have seen differently which is why I ask.

[1] A devops person to manage servers dedicated or not can cost $80-$125k+ a year after benefits and taxes. That is a lot of AWS instances. And we have found we need an IT staff about half the size to manage AWS vs a dedicated data center.

<comment><USER9> Being on AWS does not necessarily mean that you don't need a devops person - especially at the scale where not being on AWS actually makes a difference to your margins.

I have seen quite a few people move off AWS successfully onto bare-metal leased hardware. S3 is just about the only service that's difficult to find an alternative for. Personally, I find using something like DynamoDB no different than using an Oracle DB - it's a vendor lock-in. Unless you had enterprise- level support on AWS (which costs a lot) - if you run into issues with Amazon's proprietary services, then good luck to you.

AWS is great to get started, but once you know that you're going to need scale (and lots of infra), it's best to move.

I say all of this as someone who has extensive operating experience on AWS. YMMV.

<comment> UK-AL Oh, with cloud services you defiantly need devops.

Without AWS you also need dedicated infrastructure, networking and hardware people as well as devops.

You need people who know how to configure cisco networking gear, who understand SAN's, iSCSI, Fibrechannel, Racks, blades lots of stuff even devops people don't think about.

<comment><USER10> What exactly is "DevOps" to you? I ask, because almost everyone has a different answer. I've been doing "DevOps" for more than ten years, and all of the items you listed as required skill-sets are within my capabilities and have been used at many of the places I've worked. I'd be hard pressed to call someone an ops person if they don't understand the basics of server hardware, networking, and storage. These are essential components which the system relies on, the same system you are responsible for the uptime of.

I often hear things like your statements and can't help but wonder if the general quality of ops people is so bad in our industry and I just haven't encountered it, or if the reason ops people are treated so poorly in most organizations is just that developers automatically assume we don't know anything rather than asking.

<comment> UK-AL Devops for me would be things like puppet, networking(subnets, load balancing, firewalls etc) deployments, Cloud Formation templates, ARM Templates rather than directly setting up hardware.

Where a dedicated networking would know specifics of certain vender. You can make career out of just knowing how to set up CISCO hardware and CISCO's embedded os. Devop's people tend to be broader than that.

<comment><USER10> All of the items you listed fall under my definition of "DevOps" as well. I loosely define it in two ways:

1) "DevOps is a philosophy, not a title" (this is mostly because of managers thinking otherwise)

2) "DevOps is about focusing on automation of systems infrastructure to improve reliability, flexibility, and security."

Regarding #2, though, since my past experience includes building public clouds, my perspective does not limit "DevOps" to only utilizing public clouds. You can automate the build-out of physical hardware too. It's not really possible to automate rack n stack, but you can abstract that away through external logistics vendors that pre-rack/cable gear for you at a certain scalability point.

Things like OpenStack Ironic, Dell Crowbar, Cobbler, Foreman, etc. are definitely DevOps tools, yet they are specifically focused on handling automation of physical hardware deployments.

As a further example, many networking vendors now provide APIs, but even when they didn't they had SSH interfaces. It was very possible to automate the deployment of large quantities of networking gear using remote-execution tools like Ansible or even just Ruby or BASH scripts. There's no need necessarily to have a dedicated networking person.

Of course, as you scale up to a certain point in physical gear, it pays to have specialization. But that's true even in the cloud, where you may need to hire a specialist to deal with your databases, a specialist to deal with complexities of geographical scale/distributed systems, a specialist to deal with complex cloud networking (VPC et al). Just because something is abstracted away into a virtual space doesn't necessarily reduce its complexity or the base skillsets required to operate that infrastructure.

</comment></comment></comment></comment></comment></comment></comment><comment><AUTHOR> One thing I found surprising on reading this is that they essentially spent $10k and two months ($5k listed as saved * 2 months) to figure out they weren't using their logging infrastructure any more. Wish I could be that gung-ho with resources!

</comment><comment><USER11> The title should really be "How we stopped wasting $132k a Year With an IT Infrastructure Audit." The article certainly leaves the impression that a lack of processes, procedures and basic change management left you in a position where you were wasting 132k a year. As I read it the article shows some recognition of that fact but a false dichotomy between innovation, time to market and change control is used to justify not properly addressing the issue. Thus it will most likely strike again but in a more painful manner.

<comment><USER12> [https://buffer.baremetrics.com/](https://buffer.baremetrics.com/) Specifically [https://buffer.baremetrics.com/stats/mrr#start_date=2015-10-...](https://buffer.baremetrics.com/stats/mrr#start_date=2015-10-01&end_date=2016-03-31)

Buffer has grown from $509K 12 months ago, to $663K a month 6 months ago, to $782K a month now. If being able to quickly iterate helped at all, that $132K is more than covered by the MRR growth from 12 months ago to today.

<comment><USER13> You're justifying wasting money because the company is making money? While I think the tone of the comment above is pretty inflammatory, the person is totally right. It was the first thing I thought of when I read the title.

If you're spending $132k/mo on hosting to make only $782k/mo, you're doing it wrong.

<comment><USER14> Where did $132K/mo figure come from? The only place I see that quoted is in an annual savings number.

<comment><USER13> You're right... they spend even more than $132k/month. They just trimmed the total amount. So they are even worse off. =(

<comment><USER14> Is there evidence for that in the article, or supposition?

</comment></comment></comment></comment></comment></comment><comment><USER15> I wonder where the tipping is at which it's more economical to own/lease your infrastructure instead of AWS/Azure/etc.?

The company is certainly large enough to have their own infrastructure team.

But granted, migrating an entire system that makes extensive use of the AWS ecosystem is anything but trivial.

<comment><USER6> In terms of scale, for EC2 and all services that run on it, it's more economical at ALL points to rent (dedicated) or buy (colocate). S3 is more competitive, so that question becomes more interesting.

There might be specific use-cases/apps/business with high burstiness where the general case isn't true. There might also be teams that can't manage it.

<comment><USER16> Careful about ALL. What about something that fits in the free tier? OR $1 a month Lambda tier?

<comment><USER17> That's a minor exception not worth adding a footnote for.

<comment><USER16> So it's cool to just blindly say ALL when you mean "Many" ?

<comment><USER6> I could cop-out and say "but if it costs you 10x more after the free-tier is expired, is it really free?"

But I can admit that I forgot abut the free-tier. It's a good deal and a smart business move by amazon. Sorry.

</comment></comment></comment></comment></comment></comment><comment><USER18> The money saved isn't nearly as important as the reduced complexity and exposure gained from a regular spring cleaning.

</comment><comment><USER19> Am I the only one who initially read this as "How We Saved $132k a Year With an IT Infrastructure Adult"? Having an IT Infrastructure Adult is essential, after all.

<comment><USER20> The first thing the adult does is order an audit, so it amounts to the same thing.

</comment></comment><comment><USER21> >For the longest while we've used fluent.d[sic] to log events in our systems.

As a maintainer, glad to see Fluentd there =) If folks have questions on Fluentd, I'd be happy to answer them here.

</comment><comment><USER22> Will add my personal experience regarding RDS .

If you are using RDS with provisioned IOPS , you can reduce your bill dramatically by downgrading to General purpose SSD, I know certain applications might really need the dedicated IOPS, but its better if you monitor your read / write rates and decide accordingly.

</comment><comment><USER23> So they put a team of engineers on a problem and managed to save an amount roughly equivalent to the salary of one of those engineers? Also, don't AWS resources generally get cheaper with time?

<comment><USER24> nstart already pointed out that it didn't take long to do it, but... i've seen this attitude over and over again - "expenses are cheap, engineers are expensive, money will just keep flowing", etc.

We don't all live in worlds of unlimited budgets. For them to have taken 2 weeks ( _maybe_ $5k of effort) to save $130k plus is phenomenal (and yet, also just mundane). This means more money can be spent on hiring someone else, or higher profit sharing for all, vs just continually and marginally increasing someone else's bottom line.

As buffer grows, their needs will grow and expenses will grow. I hate to push out predictions too far in the future, but this $5k of effort is probably going to save them $500k over the next 3-5 years.

What's a bit irritating in all this is that the folks behind it probably won't be rewarded correspondingly (although buffer seems a bit more open and egalitarian about these sorts of things).

<comment><USER25> I'm glad you called out the cumulative savings benefit.

I'll add that they also gain a benefit multiplier in the form of the knowledge they gained from the exercise. Something that will hopefully be carried through into their future infrastructure decision making processes.

<comment><USER24> I was going to mention that too - the benefit to future projects, budgets and employers is potentially quite large.

</comment></comment></comment></comment><comment><USER26> The amount saved affords an extra C-level hire. What intrigues me though, is what required them jumping from 25 to 80 people.

</comment><comment><USER27> One thing that really stands out is they aren't running reserved instances. That must be incredibly expensive.

</comment><comment><USER28> Any way this could be done with Microsoft Azure as well?

<comment><USER29> Well, obviously. The key point is to review what you have, get rid of what you don't need and negotiate better pricing for what you do need. If you aren't doing this at least annually anyway, you are leaving money on the table. The platform doesn't matter.

</comment></comment><comment><USER30> I was able to save a small, niche web hosting company with it's own proprietary CRM around $112k annually. I also greatly improved security in their shared hosting setup and automated code deployments and new customer onboarding.

I was able to do this by using Edgecast CDN as a caching proxy for all anonymous traffic. This reduced the load on their servers greatly and we were able to decimate the number of servers required. Rackspace servers are incredibly expensive and this represented a big savings.

We could have cached the pages in other ways, but this had the added benefit of serving anonymous requests from edge nodes and this reduced page load time by a great bit.

It was a big migration with sometimes maddening constraints imposed by business necessities and technical debt, but in the end we were able to eliminate a good bit of that debt.

The most frustrating part of the process was having to deal with sales reps that kept trying to push "cloud" solutions as panacea to all scaling challenges.

The bandwidth and storage costs from using something like S3 would have been atrocious. The rackspace "cloud" solutions all would have had unacceptable latency problems.

And it would have required impossible code rewrites. One of the requirements for the project that was incredibly frustrating was that we could not force updates of the PHP CRM to any particular client. We offered an upgrade path, but we had dozens of different versions of the software running on the servers, along with Wordpress and other PHP/MySQL apps installed at customer request.

Shared PHP web hosting is one of the most difficult environments to work in. Each account was a petri dish of whatever customers uploaded via their docroot FTP access.

I pushed through a lot of changes to eliminate that practice and lock users down to FTP access for directories that would not execute PHP.

I also had the company move all Wordpress installs to Flywheel, to eliminate all the maintenance and security implications for Wordpress to a company that focused on just that. This allowed the company to focus on it's own CRM and nothing else.

All of it came at a really key time because competitive pressure from squarespace forced the company to drastically reduce prices.

When I pitched the original idea for the project, the entire internal team didn't tell me about the security issues, the multitude of versions running, the full FTP docroot access or even the existence of Wordpress on the servers.

When I discovered how FUBAR the entire setup was, as a contractor it would have been easy for me to bail, and probably personally healthier for my stress levels (I took off three months after it was all over to relax), but I stuck with them and brought them through the entire process to a successful conclusion.

I'm pretty proud of that project. I pulled it all off under some of the most difficult and irrational conditions one could imagine.

And the ROI for the company was insanely great.</comment>


Microsoft submits Linux kernel patches to enable complete Hyper-V on Linux - <AUTHOR> https://www.theregister.com/2020/09/15/microsoft_submits_linux_kernel_patches/ <comment><USER2> If this reaches production status (e.g. with a new Hyper-V Hardware Qualification List and HHQL logo program like WHQL), it could be the biggest news for Linux since Dell started shipping a laptop with pre-installed Linux.

Such a logo program could provide OEMs with a test suite for Hyper-V with Linux hardware drivers, which means Microsoft could start contributing test cases to upstream Linux projects like CKI.

Most importantly, a Hyper-V for Linux logo qualification program could require that OEM/ODMs pass HHQL _before_ shipping supported hardware, when they still have engineering resources allocated for system and device firmware fixes.

In short, Hyper-V for Linux has the potential for positive ripple effects throughout the supply chain for Linux "secured core" hardware. When combined with WSL2, Direct X paravirtualized graphics for Linux, and Azure Sphere (based on OpenEmbedded/Yocto), it's a major endorsement for Linux and the flexibility of Type-1, CPU-assisted virtualization pioneered by open-source Xen.

The Microsoft Linux license for IoT/embedded devices includes support for 10+ years of security updates, which will hopefully extend OEM firmware support timelines for edge hardware, [https://www.platformsecuritysummit.com/2019/speaker/seay/](https://www.platformsecuritysummit.com/2019/speaker/seay/)

 _> This talk will cover ... device security from the chip to the Linux kernel, user application isolation, network communication, cloud interaction, and what it takes to keep a system secure for 13 years._

<comment><USER3> Ok, sure.

Given Xen is battle tested at scale and k8s/etc for microservices, why bother to learn to manage this?

<comment><USER2> _> why bother to learn to manage this?_

Even if primarily adopted by existing Microsoft customers familiar with Hyper-V, this would benefit Xen, KVM and any Linux distro running on the same hardware targets.

If a theoretical HHQL motivates OEMs to prove that Linux drivers work in a Hyper-V root partition on new hardware, with driver fixes upstreamed to the Linux mainline kernel, then everyone wins.

There is also ongoing work for nested virtualization, to enable KVM, Xen or Hyper-V to be a bare-metal (L0) or a nested (L1) hypervisor, e.g. in a cloud environment where the bare-metal hypervisor cannot be changed by customers.

These interoperability improvements increase hardware support for hypervisors, which can then compete at multiple architectural layers. Users can choose based on optimization of the HL0-HL1-VM-App stack which works best for their specific workload.

</comment></comment></comment><comment><USER4> >Windows 10 is on a path to becoming a hybrid Windows/Linux system

This sounds promising, something closer to OSX would give apple competition for devs like myself that want a linux based system and a fluffy "it-just- works" gui

<comment><USER5> So what's wrong with Linux if you want a Linux based system? I don't remember the last time I got a Linux desktop which didn't "just work"; of course I try to avoid exotic hardware components, but the truth is that you can run into driver problems and issues too when running operating systems you pay money for, like Windows.

<comment><USER6> Lack of support for GUI apps such as MS Office, Adobe Creative Suite, etc. It was actually workable with wine a few years back, but that was before everything went to an auto-updating subscription model.

<comment><USER7> > Lack of support for GUI apps such as MS Office,

not the same but you have Office 365 that does a reasonable job for most documents out there.

On the other hand, not having Office is kind of a feature, it makes you learn better tools :)

<comment><USER8> > On the other hand, not having Office is kind of a feature, it makes you > learn better tools :)

I think this kind of attitude is why Linux on the desktop will probably never be mainstream.

<comment><USER9> I don't think this attitude is the reason why Microsoft won't port the Office suite to linux.

</comment></comment></comment></comment></comment></comment><comment><USER10> Sorry for the ignorance, but what does this mean? I understand from the article that the patch allows the full Hyper-V stack to run on a linux-based machine (as opposed to previously needing windows to run the root partition). But what does _that_ mean to have the ability to run Hyper-V entirely on linux? Is it just a "good to have options" thing?

<comment><USER11> It allows them to run a bare metal (type 1) hypervisor instead of a VM on top of Windows.

<comment><USER12> Hyper-V already is a bare metal (type 1) hypervisor. Admittedly it does use one (or more) of the guests, called the "parent partition", to handle some of the work for it. This change allows that parent partition to be Linux instead of Windows, but it does not make it any more of a bare metal hypervisor than it was before, unless you know something in addition to what the article says.

</comment></comment></comment><comment><USER13> Perhaps Microsoft is finally tired of trying to get Azure working on the Windows kernel.

Or possibly they need this for ARM VM instances?

<comment><USER14> Perhaps Hyper-V team is already tired dealing with Windows. I mean look at this quote: "...it takes approximately 16 hours to compile Windows on a 64 cores super fast server-class machine optimized for the job, and with hundreds of GB of memory, and that time does not include running tests." [0]

[0] [https://www.quora.com/What-do-you-think-about-open- sourcing-...](https://www.quora.com/What-do-you-think-about-open-sourcing- Windows-and-getting-rid-of-the-licensing-code/answer/Axel-Rietschin?share=1)

<comment><USER15> Azure team should use Windows Server Core or similar equivalent for Hypervisor OS that don't need Desktop features. Minimum Windows is not so much huge.

</comment></comment></comment><comment><USER16> This is awesome. Although hyperv itself has been great for me, there have been certain things which have been a royal pain (copying/unzipping a compressed image, integrating into our monitoring system come to mind) which don't work with the stripped down windows version they have. I do wonder though, will the Linux version be backwards compatible with the Microsoft hyper-v console? Or will there be something similar? It's very nice to be able to fire up a GUI over a vpn and right click add/configure a new machine.

Similarly with installing new images. If anyone has any insight into any of this id be really interested to know!

<comment><USER14> Probably they will port necessary library and console apps to Linux version of PowerShell.

</comment></comment><comment><USER17> I know next to nothing about virtualization, are these patches Microsoft specific, or do they benefit others as well?

<comment><USER18> HyperV host only runs on Windows.

<comment><USER14> This patch makes it possible to make Linux as HyperV host, or in Xen terminology, "Dom0"

</comment></comment></comment><comment><USER19> For me, the show stopper is lack of device forwarding with WSL and WSL2 (HyperV in general) on non-Server versions. Even the Workstation edition does not support it.

It will be less of a problem once DXGI support lands since it's mostly required for AI, DSP and video processing work for me, as they require rather direct access to the GPU.

</comment><comment><USER20> I don't see what this will do that kvm can't already do? Seems like a wasted effort.

<comment><USER21> it enables hyper-v on linux. the whole point is that it does something different.

<comment><USER22> So what does it do then?

<comment><USER23> I believe the biggest difference is that, unlike KVM, Hyper V causes money to change hands.

</comment></comment></comment></comment><comment><USER24> Interesting. Windows is slowly becoming WorkplaceOS.

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

</comment><comment><USER25> The only reason I am still using windows is MS office. I might give it a try myself... My home machine is running Arch linux and works flawlessly for more then two years already. Just my work is still stucked with a lot of documentations sharing between some other people and I need MS office programs which have no alternative in open-source word. well, the office.com looks promising these days and I hope to switch completely ASAP.

<comment><USER13> This reads like a Slashdot post from 1998.

<comment><USER26> Just needs a "even my grandmother is using KDE seamlessly with her online banking site"

</comment></comment></comment><comment><USER27> My reading is this allows HyperV Server (standalone, free) to be Linux based.

But I could me misunderstanding this as the ability to run HyperV on Linux baremetal much like Windows 10 with HyperV installed or Windows Server with HyperV role.

As a Windows guy, I can appreciate this. HyperV Server is already free, though requires some care and feeding if set up off a domain.

</comment><comment><USER28> What was the status of it so far in Linux?

<comment><USER29> Well, according to TFA, the patches were submitted as an RFC.

Short version: it's not _in_ Linux, this is basically the very first step in getting it into Linux, it's still gonna be probably several months at least before it makes it into the mainline kernel, and then however long after that for it to make it into your distro's kernel.

FWIW, I think it was a little over 3 years from the first "RFC" for Wireguard until it was merged into mainline (part of that, though, is because some existing things in the kernel had to be "re-worked" first).

<comment><USER30> unrelated: what does TFA mean? someone else used it in another comment

<comment><USER31> [https://www.urbandictionary.com/define.php?term=TFA](https://www.urbandictionary.com/define.php?term=TFA)

</comment></comment></comment></comment><comment><USER32> >Windows 10 is on a path to becoming a hybrid Windows/Linux system

Sounds like Lindows to me :)

M$, #Make2020GreatAgain. Give us "[https://www.lindows.rocks](https://www.lindows.rocks)" complete with the catchy song and Windows 2000 GUI.

</comment><comment><USER33> If we assume this is technically sound and so on, is there a political dimension that will be considered before merging this? Such as "this will decrease Linux marketplace penetration in this-and-this niche"? I know that Linux is not a company etc so a direct comparison is awkward, but there can still be such considerations weighing in, perhaps...?

<comment><USER23> Anyone who's hosting Hyper-V VMs on Windows can now move to Linux and host those VMs under the same Hyper-V environment they were before. I'm not sure how many do this and, frankly, I'm quite surprised Microsoft does it on Azure.

Of course, you can run those same VMs under KVM under a Linux OS, so it's not some new capability.

</comment></comment><comment><USER34> Just ditch Windows and use Linux directly. That's the fastest way to get Linux to a higher level, not to use crutches.</comment>


A High-Level Understanding of Life as a Software Developer - <AUTHOR> http://www.theglobalfilipino.com/what-its-like-as-a-software-developer/ <comment><USER2> Software Engineers make a lot of money because their contributions have the potential to affect a lot of people.

Comparably, a nurse may have a positive impact on a dozen lives over the course of a week. A programmer's contributions may affect thousands or millions and the positive effects compound over time. Even if it takes longer (comparable to other jobs) to accomplish anything meaningful.

Many developers don't overcome the communication barriers with users to realize the impact their work has.

A task that could take somebody 5 hours a month can be automated to take 5 minutes with a program. Package and sell that program to thousands of users and, in terms of reducing operating costs, the software is a cash cow for any business in that domain.

Devs love to get caught up on theoretical minutae, CS fundamentals, testing coverage, methodologies, axe grinding over subjective preferences for frameworks/styling, etc.

None of that matters. Your value is literally measured in your ability to enable others to earn money or save money.</comment>


Neonicotinoids disrupt aquatic food webs and decrease fishery yields - <AUTHOR> https://science.sciencemag.org/content/366/6465/620 <comment> red-indian Neonicotinoids are one of the best and safest pesticide treatments for termites. You dig a narrow ditch around the building's foundation, you mix in the neonicotinoid with the dirt, and you refill the ditch. Used this way there is absolutely no risk to bees or aquaculture.

Neonicotinoids are one of the best and safest pesticide treatments for flea and ticks on cats and dogs. You apply it to the back of their neck and it lasts 30 days. Used this way there is absolutely no risk to bees or aquaculture.

Neonicotinoids, although effective, are not suitable for use in fruit orchards or golf courses, or where they can enter water systems, yet are used in these contexts.

When you buy a neonicotinoid for termite control the instructions explain that it is illegal to use it for those other things. Yet you can instead buy the exact same neonicotinoid for fruit trees where the instructions explain that it is legal for that use. This makes little sense.

Losing neonicotinoids for termite, tick and flea control would be a grave mistake and loss and give no advantage.

Modifying neonicotinoid instructions to ban usages that are obviously causing problems is reasonable.

<comment><USER2> _you mix in the neonicotinoid with the dirt, and you refill the ditch. Used this way there is absolutely no risk to bees or aquaculture_

Does this mean it's not possible that e.g. it starts raining, the neonicotinoid mixes with the water which then eventually makes it into a nearby stream? I.e. just like your thrid paragraph describes?

<comment> red-indian The trench is about 4 inches wide. It's under the eaves. You can also do it on the inside of the building if you have a crawl space. Dig 10 ft of trench. Pour 5 gallons water in trench mixed with something like 1 oz neonicotinoid. Then backfill the trench. The neonicotinoid bonds with the soil and remains active for about a decade, stopping termites from entering the building. Any house meeting building codes is going to have a roof and eaves that prevent large amounts of rain from entering this area. The area has non-neonicotonoid soil on top of it so there's no casual run off. You'd have to have leeching through the soil to whatever watershed you have. This is impossible because the neonicotonoids bond with the soil and do not move once set.

With fruit trees it also has long lasting action, bonding with the very bark of the tree and remaining for many years. This is a problem since honey bees come to the tree and get microdoses which appear to mess with their navigation. But the interesting part is other pollinators don't show these effects. Which is perhaps because honey bees have the food they store (honey) harvested by their "keepers" and are then given commercial corn syrup mix (grown with pesticides and including residue) as their only food. The simplistic nutrition of this substance compared to real honey weakens these fellows, compounding the disorienting effects of the neonicotonoids.

In OP's Japanese study they are mass applying neonicotonoids directly to the surface of a watershed, which resulted in huge problems to the down stream aquaculture. This use of neonicotonoids is a terrible idea and the adverse effects were not surprising. I'm quite surprised that mass application of neonicotonoids to a watershed isn't considered a criminal act.

<comment><USER3> > stopping termites from entering the building.

Do the termites in your location not fly? In Fiji we have termite swarms once a year. Millions of them will show up at every light they can get to in the evenings. Everyone is advised to turn off their lights for a few hours and light a fire outside so as to get the termites to kamikazi. These are the Asian Subterranean Termites that arrived here via Australia.

Pesticide in a ditch around a house isn't going to stop these buggers.

<comment><USER4> Termites only fly when a colony has reached a limit on number, and pairs fly off to start new colonies.

unless they start a new colony inside the barrier, the barrier is still effective.

<comment><USER3> The barrier is only affective against burrowing, but termites don't start new colonies by burrowing. They swarm (usually once annually)... fly off and build new colonies. If only the method described here actually worked, we'd save billions of dollars a year in damage.

</comment></comment></comment></comment></comment></comment><comment><USER5> There's a big enviromental problem with the notion that things are either approved/acceptable or not; binary.

Neonicotinoids are probably good compared to a lot of alternatives. But by being one of few approved choices, they are used to such a huge extent that minor problems become major.

Another example is gasoline. It's very clean, especially with a catalytic converter. It's so clean that one of the worst things you can say about it is: if billions of people use gasoline, it upsets the balance of CO2.

If we use a little more variety, even if average "badness" seems worse, we will be better off. But our policies push us toward homogeneity.

<comment><USER6> As a beekeeper I can tell you that Neonics are a very bad and serious problem. I'm surprised that people are not much more outraged by poisoning themselves and their children.

<comment><USER7> Again, the whole point of neonicotinoids is that they're less toxic to mammals than their predecessors (primarily organophosphates) and can be used in smaller amounts. The pollination industry does not appear to be collapsing despite the widespread, longstanding use of neonicotinoids. Who exactly is being poisoned?

<comment><USER8> > The pollination industry does not appear to be collapsing despite the > widespread, longstanding use of neonicotinoids

Uhhhh, what? It won't happen overnight, just like smoking won't cause you to die after a few pulls. But regardless, there are reported declines from neonicotinoids.

[https://www.nature.com/articles/ncomms12459](https://www.nature.com/articles/ncomms12459)

[https://www.pbs.org/newshour/science/neonicotinoid- pesticide...](https://www.pbs.org/newshour/science/neonicotinoid-pesticides- slowly-killing-bees)

[https://www.nationalgeographic.com/environment/2019/09/widel...](https://www.nationalgeographic.com/environment/2019/09/widely- used-pesticide-makes-birds-lose-weight/)

<comment><USER7> You are responding to a different argument than I made. Your claim is that neonicotinoids are harmful to colony-forming bees. My argument is that the harm does not appear to be reflected in the pollination industry, which, in the US, is the essential purpose of those bees. Honey bees are livestock, not wildlife.

<comment><USER9> It's actually the pollination industry that's the root of the problem as I see it, and there's a lot of evidence to support it. There has been a major shift in the past couple of decades and now pollination services account for as much income for keepers as the honey itself. So just out of wintering, when they're at their weakest, they get all the hives together to pollinate the almond crops, and of course to trade the latest parasites and diseases. Once they've got all caught up to date on those, they load them back on the trucks and do a nice tour around the country, spreading the joy.

My parents kept up to 100 hives for almost two decades in northern Manitoba, where it gets down to -40C, and we rarely ever had overwintering losses. Farmers and keepers should treat their livestock well, feed them over the winter, give them a bit of shelter, and they'll do fine. Bees can survive almost any cold if they've got the fuel to burn to keep the hive warm.

<comment><USER7> That's super interesting, and glad to get a sanity check from someone with direct experience; I'm just an interested bystander.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> Saw a documentary banned in France for certain use as bee population decreases massively e.g. used for corn. Problem goes into the ground kill every life in the ground and get into every plant around the crop and also bird population decreases. Documentary showed that Bayer tried to sabotage the investigation. I think the risks massively exceeds the benefits.

<comment><USER11> I'm not sure I understand this comment. Perhaps someone could rephrase it?

</comment></comment><comment><USER12> Why is there no rush to phase out the use of these chemicals? My understanding is that they are a relatively recent invention and that we used different, less toxic, pesticides before. It should be a simple task to outlaw the neonicotinoids and return to the old pesticides. Sure, yields might drop a little, but that's better than an existential threat to our whole food chain, no?

<comment><USER13> Where did you get the idea that the pesticides commonly used before the common use of neonicotinoids were less toxic?

(They might be less toxic to bees and the zooplankton mentioned in the OP, but they were more toxic to, e.g., human agricultural workers.)

<comment><USER14> Because the fish were alive.

<comment><USER7> No, organophosphates were killing the fish, even at very low exposures.

<comment><USER14> source? I can't see that in the article. The article states that when neonicotiniods were used, fish stocks collapsed.

From this, there are only two valid conclusions;

Pesticides was not previously being used, or the previous pesticide was less dangerous.

<comment><USER7> I'm sorry, let me make sure I understand what you're asking. Are you seriously asking for a source to back up the claim that organophosphate pesticides can be toxic to fish?

<comment><USER14> I cannot see in the article that organophosphates were used around Lake Shinji before the introduction of neonicotinoids.

I certainly can't see in the article that more fish died before the introduction of neonicotinoids.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> "It is now well known that neonicotinoids negatively affect pollinators"

Do they?: [https://geneticliteracyproject.org/2019/11/01/global- consens...](https://geneticliteracyproject.org/2019/11/01/global-consensus- finds-neonicotinoids-not-driving-honeybee-health-problems-why-is-europe-so- determined-to-ban-them/?fbclid=IwAR0AmQuzlKAtTNwAJ40BW- LTpW-m4A5lUUVAv2Y2HHe1mFKF9ajdsPm1JYI)

"Using data on zooplankton, water quality, and annual fishery yields of eel and smelt, we show that neonicotinoid application to watersheds since 1993 coincided with an 83% decrease in average zooplankton biomass in spring, causing the smelt harvest to collapse from 240 to 22 tons in Lake Shinji, Shimane Prefecture, Japan"

Isn't this mistaking correlation with causation? I find this assertion dubious mainly because the mode by which neonicotinoids are applied is by seed coating rather than spraying so how are they getting into water? I don't have access to the full study - did they actually measure water levels of the pesticides and how did they rule out other factors?

<comment><USER16> [https://en.wikipedia.org/wiki/Jon_Entine#Genetics](https://en.wikipedia.org/wiki/Jon_Entine#Genetics)

> Entine is the founding director of the Genetic Literacy Project (GLP), > operating as the Science Literacy Project, which is the umbrella > organization for the GLP, Genetic Expert News Service (GENeS) and the > Epigenetics Literacy Project. GLP focuses on the intersection of media, > policy and genetics, both human and agricultural.

> Entine has written three books on genetics and two on chemicals. Let Them > Eat Precaution: How Politics is Undermining the Genetic Revolution examines > the controversy over genetic modification in agriculture.[20]

> In 2007, Entine published Abraham's Children: Race, Identity and the DNA of > the Chosen People which examined the shared ancestry of Jews, Christians and > Muslims, and addressed the question "Who is a Jew?" as seen through the > prism of DNA.[21]

> Entine's first book, Taboo: Why Black Athletes Dominate Sports and Why We're > Afraid to Talk About It was inspired by the documentary on black athletes > written with Brokaw in 1989.[22] It was favorably reviewed by The New York > Times[23] but criticized by others[who?] who said that the subject could > encourage a racist view of human relations.[24]

> Entine supports the production of GMO foods, and has criticized writer > Caitlin Shetterly after she wrote an article in Elle magazine saying that > GMO corn had made her ill.[25][26][27]

<comment><USER15> Does any of this contradict the facts stated in the article? Is there something specifically false that you can point to?

</comment></comment></comment><comment><USER17> this is the silent killer. climate change gets all the attention but pesticides can kill everything

<comment><USER18> So if we stopped using pesticides tomorrow things would recover very quickly. Pesticides are destroyed by exposure to UV radiation and weathering very quickly, that is why farmers have to keep applying them over and over. They don't generally persist in the environment or in living things for more than a few days or weeks, with the exception of biological reservoirs where the few types that can accumulate in living things might last for months (and these types are not common, this is why DDT was banned in the first place). If we stop dumping massive amounts of CO2 into the air tomorrow the Earth will continue to warm for hundreds of years.

It's clearly much, much more important to deal with CO2.

<comment><USER19> Every day, hundreds of living species are disappearing forever, mostly due to human direct actions on the environment and particularly industrial farming. I personally find this much more important (and sad) than climate change.

<comment><USER18> "Every day {bad thing} happens due to {list of things that aren't pesticide use} therefore pesticides should be banned."

This is embarrassing. It's like arguing against wind power because wind turbines are held down by cement, and making cement releases CO2.

If people didn't use pesticides, yields would go way, way, way down, and more land would have to be used for intensive farming to produce the same amount of food. So you are basically arguing for pesticide use in your argument against pesticides.

</comment></comment></comment></comment><comment><USER20> Are neonics known/suspected as a cause as to why mosquito and insect populations are down so much in the US?

</comment><comment><USER21> We need to move to vertical industrial farming.

</comment><comment><USER22> Sigh. Why doesn't EPA hold auctions like FCC on dangerous pesticide use? Market will apply them where they are most needed, govt gets revenue, environment is saved.</comment>


Simplifying Is Painful - <AUTHOR> http://zenhabits.net/pain/ <comment><USER2> Wouldn't it be simpler for an individual to just settle in a low cost of living area (close to nature perhaps) and quit blogging and live simply?

I have no problems with what the OP is doing, it is essential to focus on just a few things but I don't think simplifying is painful.

Perhaps letting go (of attachment)is painful.</comment>