All articles

  1. 2018 life update

  2. A reading list for new engineering managers

  3. The Moment

  4. My Python Development Environment, 2018 Edition

  5. You have two jobs

  6. Five stories about the California Wildfires you probably missed

  7. Don’t include social engineering in penetration tests

  8. Security Linkspam for March 16, 2017

  9. Security Linkspam for March 8, 2017

  10. Security Linkspam for March 2, 2017

  11. Security Linkspam for February 22, 2017

  12. Security Linkspam for February 1, 2017

  13. Security Linkspam for January 25, 2017

  14. Security Linkspam for December 28, 2016

  15. Security Linkspam for December 21, 2016

  16. Security Linkspam for December 14, 2016

  17. Security Linkspam for December 7, 2016

  18. Getting started with pytest

  19. Django Under the Hood 2016 Highlights

  20. So you want a new admin?

  21. Ratchets & Levers

  22. 2016 DBIR Highlights

  23. A reading list for InfoSec engineers

  24. Psychological safety in the InfoSec industry

  25. How do you run distributed standups?

  26. Shanley and my PyCon talk

  27. Uber and the Fourth Estate

  28. Python Programmers Support the Ada Initiative

  29. Re: What Can Men Do?

  30. The limits of “unlimited” vacation

  31. Retiring as BDFLs

  32. Bagels

  33. To my friends in the Node community

  34. On TRUCEConf

  35. Personal lessons from XOXO

  36. Join me in supporting the Ada Initiative

  37. Getting features into Django

  38. I’ve joined Heroku

  39. Auto-building Sphinx docs

  40. The Django community in 2012

  41. DIY supplies

  42. Why conferences need a code of conduct

  43. P.J. Eby on PyPI

  44. Is there a market for paid Django apps?

  45. A REST wankery question

  46. I refuse to tolerate assholes

  47. Work for me!

  48. Help desk software?

  49. Configuration and architecture

  50. CI is hard!

  51. Office hours

  52. Django classes: deployment, ecosystem

  53. How to roast a chicken

  54. Django gotcha: concrete inheritance

  55. What’s your favorite Django app?

  56. “Web Scale”

  57. Peter Norvig on programming languages

  58. man tar

  59. Mark Shuttleworth on Tribalism

  60. GvR on commit privileges

  61. What to do when PyPI goes down

  62. Backwards compatibility

  63. util

  64. Dynamic form generation

  65. Early registration for my Advanced Django class ends soon

  66. To hell with web standards

  67. Fixing PostgreSQL’s default encoding on Ubuntu 9.10

  68. You need an editor

  69. Technical style

  70. What to write

  71. My travel kit

  72. The Django community in 2009

  73. Thank you, Rails

  74. On commit bits

  75. Lessons from Rackspace’s downtime

  76. The power of “no”

  77. SEO scumbags

  78. QFT

  79. Job opportunity: engineer at Whiskey Media

  80. * is Unix

  81. Python is Unix

  82. Django Master Class, October 16

  83. Contributor License Agreements

  84. Snakes on the Web

  85. Reminder: Django Training

  86. Django Training

  87. Twenty questions about the GPL

  88. Django internals: authentication

  89. Professionalism

  90. SVN usability

  91. Looking for a Django developer?

  92. More buildout notes

  93. Developing Django apps with zc.buildout

  94. Nobody expects Python packaging!

  95. Hooray for standards

  96. Python implementation details

  97. It’s time for a change

  98. FAQ: Untrusted users and HTML

  99. The taste of shame and humiliation

  100. Why I’m excited about Python 3

  101. Descriptivists and Prescriptivists

  102. What is django.contrib?

  103. “Syntactic Sugar”

  104. Typography: Rhythm & Proportion

  105. Minimalism

  106. REST worst practices

  107. PyCon Braindump

  108. Help OSI

  109. Sailing on…

  110. A picture is worth a thousand words

  111. Shameless self-promotion

  112. Django Book Update

  113. Of the Web

  114. CouchDB first impressions

  115. The sorry state of database journalism

  116. My “personal security” plan

  117. Seasoning Templates

  118. Die, Marker Felt, Die!

  119. Dear Adobe

  120. Some guesses about the future

  121. Django projects

  122. Django Internships at the Journal-World

  123. Circles of Django (2007)

  124. You vs. the Real World

  125. Jimbo’s Number

  126. Ripped by Engadget

  127. Five things I hate about Python

  128. Overheard at PyCon

  129. I don’t care whose is bigger

  130. Fried Chicken

  131. How the news breaks

  132. Wanted: kick-ass sysadmin

  133. Pronouncement

  134. Post-OSCONum part 1: try not to suck

  135. “Show-stoppers”

  136. Digg dugg

  137. Bad dog!

  138. Improved text image view

  139. Django OSCON shirts

  140. Django propaganda

  141. A complete waste of time

  142. Django meetup in Palo Alto

  143. Merquery

  144. Quiet Enjoyment

  145. Free server? Probably not

  146. Free servers?

  147. Django stuff at Pycon

  148. WWBD

  149. Template + Cache = Crazy Delicious

  150. Why you should use Django

  151. Strike averted

  152. Done

  153. Dojo gets a manual

  154. Django, meet Dojo

  155. Have more…

  156. Django performance tips

  157. Hiring, part II

  158. We’re hiring!

  159. Lightpd on Ubuntu

  160. What can Django learn from Rails?

  161. allofmp3.com RSS feed

  162. Private Dancer?

  163. A note to web designers

  164. A quick comparison

  165. Sera’s Pancakes

  166. Django and Rails

  167. Reboot