Thoughts on Lavabit
Analysis of the Lavabit case, focusing on government overreach and Fourth Amendment violations in demanding encryption keys.
Alex Gaynor is a software resilience engineer focused on building reliable, secure systems across government, industry, and open source. He writes about software security, serialization, benchmarks, and the economics of open-source infrastructure.
121 articles from this blog
Analysis of the Lavabit case, focusing on government overreach and Fourth Amendment violations in demanding encryption keys.
A guide to implementing effective code reviews in software teams, covering the benefits, principles, and practical steps for a healthy review culture.
A software developer reflects on the personal and professional tension between being a critical, negative thinker and fostering a welcoming tech community.
A developer compares manual Python package release steps to OpenStack's automated process, advocating for better release automation.
Analyzes a TV clip to explain how open source contributions work, focusing on small fixes and effective contributor practices.
Advice for open source project maintainers: prioritize contributor-friendly tools and workflows over personal preferences to grow your community.
Discusses the need for respectful, professional communication in code reviews, using the Linux kernel mailing list debate as a case study.
Explains why PyPy's JIT compiler makes test suites slower than production code, and why tests are poor benchmarks for performance.
A developer's analysis of OpenStack's architecture, contribution process, and code quality after joining the project.
A developer's weekly update on open source work, including PyPy/JIT discussions, libcloud improvements, and conference keynote preparation.
A technical analysis of migrating from BSON to msgpack by examining serialization formats to ensure data can be unambiguously interpreted.
A rebuttal to claims about PyPy's design philosophy, arguing its core principle is automation, not that 'the compiler knows best'.
A developer argues for personal funding of open source projects to help developers dedicate more time to fixing bugs and adding features.
Discusses the drawbacks of using too many programming languages in a project, arguing for a balanced approach to benefit operations and maintainability.
Explains why deleting a non-existent key from a Python defaultdict should raise a KeyError to prevent silent bugs, aligning with Python's design philosophy.
Explores the distinction between compile-time and run-time languages in programming, comparing Java and Python, and discusses its impact on expressiveness.
A guide exploring the immense challenges and technical steps required to create a high-performance Python implementation from scratch.
Developer shares excitement about a summer internship at Quora, focusing on migrating the site to PyPy and performance tuning.
A PyPy developer details optimizing Python code for the Computer Language Shootout benchmarks, revealing CPython-specific hacks and cross-implementation challenges.
A recap of the PyPy team's San Francisco tour, including sprints at Noisebridge and tech talks at Google and Mozilla, focusing on performance improvements and compiler discussions.