- Teaching Programming Languages by Experimental and Adversarial Thinking -- We present a new approach to teaching programming language courses. Its essence is to view programming language learning as a natural science activity, where students probe languages experimentally to understand both the normal and extreme behaviors of their features. This has natural parallels to the "security mindset" of computer security, with languages taking the place of servers and other systems.
- PagerDuty Security Training -- We run two internal employee security training courses at PagerDuty; one for everyone covering a variety of general security topics relevant to all employees, and one for engineers covering more technical security concepts relevant to those in our engineering department. This site provides all of the public material for both of these courses.
- Example Manager READMEs -- from managers at Slack, Spotify, HubSpot, and more.
- Four Principles for Digital Expression (You Won’t Believe #3!) -- We need clear principles to guide and secure meaningful digital free expression. This article charts a path to provide just that. Part I exposes crucial myths surrounding digital speech and privacy in our networked age. Part II offers a conception of free speech based on a distrust of power, both public and private. Even if doctrinal analysis does not account for private barriers to free expression, the project of free expression should. Part III lays out four essential preconditions for a theory and a system of free expression in the digital age.
Article image: Four short links