diff --git a/blog/content/conduct-2018.article b/blog/content/conduct-2018.article
new file mode 100644
index 0000000..64edcf2
--- /dev/null
+++ b/blog/content/conduct-2018.article
@@ -0,0 +1,95 @@
+Updating the Go Code of Conduct
+23 May 2018
+Tags: conduct
+
+Steve Francia
+
+* Introduction
+
+In November 2015, we introduced the Go Code of Conduct.
+It was developed in a collaboration between
+the Go team members at Google and the Go community.
+I was fortunate to be one of the community members
+invited to participate in both drafting and then enforcing
+the Go Code of Conduct.
+Since then, we have learned two lessons about 
+limitations in our code of conduct that restricted us from 
+being able to cultivate the safe culture
+essential to Go’s success. 
+
+The first lesson we learned is that toxic behaviors by
+project participants in non-project spaces can have a 
+negative impact on the project affecting the security and safety of
+community members. There were a few reported
+incidents where actions took place outside of project spaces
+but the impact was felt inside our community. The specific 
+language in our code of conduct restricted our ability to 
+respond only to actions happening “in the official 
+forums operated by the Go project”. We needed a way 
+to protect our community members wherever they are. 
+
+The second lesson we learned is that the demands required 
+to enforce the code
+of conduct place too heavy of a burden on volunteers. 
+The initial version of the code of conduct presented the 
+working group as disciplinarians. It was soon clear 
+that this was too much, so in early 2017 [[https://golang.org/cl/37014][we changed the group’s role]]
+to that of advisors and mediators.
+Still, working group community members
+reported feeling overwhelmed, untrained, and vulnerable.
+This well-intentioned shift left us without an enforcement mechanism
+without solving the issue with overburdened volunteers.
+
+In mid-2017, I represented the Go project in a meeting with 
+Google’s Open Source Programs Office and Open Source Strategy Team 
+to address the shortcomings in our respective
+codes of conduct, particularly in their enforcement.
+It quickly became clear that our problems had a lot in common,
+and that working together on a single code of conduct for all
+of Google’s open source projects made sense. 
+We started with the text from the  
+Contributor Covenant Code of Conduct v1.4
+and then made changes, influenced by
+our experiences in Go community and our collective experiences in open source.
+This resulted in the Google [[https://opensource.google.com/docs/releasing/template/CODE_OF_CONDUCT/][code of conduct template]].
+
+Today the Go project is adopting this new code of conduct,
+and we’ve updated [[https://golang.org/conduct][golang.org/conduct]].
+This revised code of conduct retains much of the intent, structure and 
+language of the original Go code of conduct while making two critical 
+changes that address the shortcomings identified above. 
+
+First, [[https://golang.org/conduct/#scope][the new code of conduct makes clear]] that people who
+participate in any kind of harassment or inappropriate behavior,
+even outside our project spaces, are not welcome in our project spaces. 
+This means that the Code of Conduct applies outside 
+the project spaces when there is a reasonable belief that 
+an individual’s behavior may have a negative
+impact on the project or its community.
+
+Second, in the place of the working group,
+[[https://golang.org/conduct/#reporting][the new code of conduct introduces a single Project Steward]] 
+who will have explicit training and support for this role.
+The Project Steward will receive reported violations
+and then work with a committee,
+consisting of representatives from the Open Source Programs Office
+and the Google Open Source Strategy team,
+to find a resolution. 
+
+Our first Project Steward will be [[https://twitter.com/cassandraoid][Cassandra Salisbury]].
+She is well known to the Go community as a member of Go Bridge,
+an organizer of many Go meetups and conferences,
+and as a lead of the Go community outreach working group.
+Cassandra now works on the Go team at Google
+with a focus on advocating for and supporting the Go community.
+
+We are grateful to everyone who served on the original Code of 
+Conduct Working Group. Your efforts were essential in creating an 
+inclusive and safe community.
+
+We believe the code of conduct has contributed to the
+Go project becoming more welcoming now than it was in 2015,
+and we should all be proud of that.
+
+We hope that the new code of conduct will help protect our community
+members even more effectively.
