- Email Authentication 31 Jan 2024
- 2023 Recap 24 Jan 2024
- Introducing Matter 30 Nov 2023
- Pelé’s Soccer 29 Dec 2022
- Two Years 19 Mar 2022
- Monday in Boulder 23 Mar 2021
- 2019 Highlights 25 Jan 2020
- Black Lives Matter 05 Jun 2020
- Leaders Wanted 06 Sep 2019
- Domain Registrars 19 Aug 2019
- 2018 Highlights 01 Jan 2019
- Sponsoring New Adventures 18 Dec 2018
- Tweet Only Links 01 Oct 2018
- 2017 Highlights 09 Jan 2018
- Faculty 12 Dec 2017
- 2016 Highlights 09 Jan 2017
- 2015 Highlights 10 Jan 2016
- PHP Community 26 May 2015
- Indie Web Movement and IndieAuth 18 May 2015
- Social Sharing Links 15 May 2015
- 2014 Highlights 14 Jan 2015
- Brooklyn Beta Opening Remarks 14 Oct 2014
- The Motherfuton News 14 May 2014
- Breakfast in the Sunshine 18 Mar 2014
- 2013 Highlights 14 Jan 2014
- What Does Block Mean? 13 Dec 2013
- Web Advent 2013 14 Nov 2013
- Dark Patterns 30 Apr 2013
- Ideas of March 15 Mar 2013
- XSS Is Still Tricky 08 Mar 2013
- 2012 Highlights 03 Jan 2013
- PHP Advent Renamed to Web Advent 02 Dec 2012
- Election Coverage 07 Nov 2012
- Goodbye, Sandy 31 Oct 2012
- Lessons from Brooklyn Beta 15 Oct 2012
- Sync No More 15 Sep 2012
- Apple Botches "Save As…" 16 Aug 2012
- Discovering Favicons 17 Jul 2012
- Good People Good Work 26 Jun 2012
- LeakedIn 06 Jun 2012
- Link Blog and Planet Chris 30 May 2012
- JavaScript Study Guide 26 Apr 2012
- Brooklyn Beta 2012 27 Mar 2012
- Svbtle Versus Obtvse 23 Mar 2012
- Ideas of March 15 Mar 2012
- Hacking Rails (and GitHub) 05 Mar 2012
- URL Encoding and Hashbang Hell 04 Mar 2012
- Speaking at Boston PHP 14 Feb 2012
- Learning JavaScript 07 Feb 2012
- 2011 Highlights 23 Jan 2012
- PHP Advent 2011 29 Dec 2011
- Stop SOPA and Save the Internet 16 Nov 2011
- Brooklyn Beta Opening 17 Oct 2011
- Steve 06 Oct 2011
- Renewing My Commitment 30 Sep 2011
- Fake Google SSL Certificate 30 Aug 2011
- Domain Registrars 12 Jul 2011
- Sorting Multi-Dimensional Arrays in PHP 30 Jun 2011
- The Accept Header 31 May 2011
- Brooklyn Beta 20 Apr 2011
- April What? 01 Apr 2011
- PHP Session Debugging 25 Mar 2011
- Ideas of March 15 Mar 2011
- Our First PHPCon 11 Mar 2011
- Using Twitter for Comments 10 Mar 2011
- JavaScript and URLs 28 Feb 2011
- 2010 Highlights 24 Jan 2011
- Merry Xmas! 25 Dec 2010
- Christmas Lights 23 Dec 2010
- Christmas Conundrum 22 Dec 2010
- PHP Advent 30 Nov 2010
- Brooklyn Beta 31 Oct 2010
- Twitter OAuth 16 Sep 2010
- Mozilla Account Manager 17 Aug 2010
- PHP Anthem 05 Aug 2010
- Auto Increment with MongoDB 29 Jul 2010
- Change Blindness and Zooming Out 30 Jun 2010
- URL Sentences 31 May 2010
- CSS Naked Day 08 Apr 2010
- Conferences Galore 30 Mar 2010
- Webstock 12 Feb 2010
- 2009 Highlights 14 Jan 2010
- Hello, Analog 31 Dec 2009
- PHP Advent 2009 01 Dec 2009
- Facebook, MySpace, and crossdomain.xml 06 Nov 2009
- Git on Snow Leopard 02 Nov 2009
- Learning HTML and CSS 26 Oct 2009
- CodeWorks and Beer (Table) 18 Oct 2009
- CodeWorks Tour 28 Sep 2009
- South by Southwest 25 Aug 2009
- PHP Quick Reference 06 Aug 2009
- Goodbye, OmniTI 17 Jul 2009
- A rev="canonical" HTTP Header 11 Apr 2009
- Save the Internet with rev="canonical" 10 Apr 2009
- CSS Naked Day 09 Apr 2009
- Smashing PHP 24 Mar 2009
- Migrating from FeedBurner to Google 20 Feb 2009
- Twitter Don't Click Exploit 12 Feb 2009
- Putting the Bow on OmniTI 18 Jan 2009
- Seven Things 09 Jan 2009
- 2008 Highlights 08 Jan 2009
- PHP Advent 2008 01 Dec 2008
- Facebook Worm 09 Nov 2008
- Web Fonts 31 Oct 2008
- ZendCon 21 Sep 2008
- Inspecting and Hacking HTTP 24 Aug 2008
- Security 2.0 in Cincinnati 20 Aug 2008
- End of Life for PHP 4 08 Aug 2008
- OSCON Wrapup 31 Jul 2008
- Miscellaneous 30 Jun 2008
- Who Created PHP? 18 May 2008
- OpenID with myVidoop 06 May 2008
- CSS Naked Day 09 Apr 2008
- URLs Can Be Beautiful 13 Mar 2008
- Kiwi Foo Camp 17 Feb 2008
- CIO Magazine Trolls for Publicity 07 Feb 2008
- Security and User Experience 29 Jan 2008
- 2007 Highlights 06 Jan 2008
- PHP Advent Calendar 2007 25 Dec 2007
- PHP Advent Calendar Day 24 24 Dec 2007
- PHP Advent Calendar Day 23 23 Dec 2007
- PHP Advent Calendar Day 22 22 Dec 2007
- PHP Advent Calendar Day 21 21 Dec 2007
- PHP Advent Calendar Day 20 20 Dec 2007
- PHP Advent Calendar Day 19 19 Dec 2007
- PHP Advent Calendar Day 18 18 Dec 2007
- PHP Advent Calendar Day 17 17 Dec 2007
- PHP Advent Calendar Day 16 16 Dec 2007
- PHP Advent Calendar Day 15 15 Dec 2007
- PHP Advent Calendar Day 14 14 Dec 2007
- PHP Advent Calendar Day 13 13 Dec 2007
- PHP Advent Calendar Day 12 12 Dec 2007
- PHP Advent Calendar Day 11 11 Dec 2007
- PHP Advent Calendar Day 10 10 Dec 2007
- PHP Advent Calendar Day 9 09 Dec 2007
- PHP Advent Calendar Day 8 08 Dec 2007
- PHP Advent Calendar Day 7 07 Dec 2007
- PHP Advent Calendar Day 6 06 Dec 2007
- PHP Advent Calendar Day 5 05 Dec 2007
- PHP Advent Calendar Day 4 04 Dec 2007
- PHP Advent Calendar Day 3 03 Dec 2007
- PHP Advent Calendar Day 2 02 Dec 2007
- PHP Advent Calendar Day 1 01 Dec 2007
- PayPal Groks Security? 21 Nov 2007
- Remember, Remember 05 Nov 2007
- PHP Comes to DC 28 Oct 2007
- The Internet is the New Unix 22 Oct 2007
- Delicious PHP 18 Oct 2007
- I Almost Get Twitter 14 Oct 2007
- The Unexpected SQL Injection 28 Sep 2007
- Paul Jones Joins OmniTI 28 Sep 2007
- OmniTI Turns 10 26 Sep 2007
- Logic 17 Sep 2007
- php|works Recap 17 Sep 2007
- Catching Up and Keeping Up 05 Sep 2007
- Women in Technology 04 Sep 2007
- Upcoming Conferences 31 Aug 2007
- CSRF Redirector 17 Jul 2007
- iPhone Security Concern 01 Jul 2007
- Planet Web Security 28 Jun 2007
- HTML Purifier 28 Jun 2007
- Character Encoding and XSS 29 May 2007
- Terry Chay on Rails 22 May 2007
- Back from php|tek 21 May 2007
- In Chicago for php|tek 16 May 2007
- Learning from Digg (DeCSS 2.0) 02 May 2007
- Ajax Is Not an Acronym 27 Apr 2007
- Luke Welling Joins OmniTI 13 Apr 2007
- Anurag Agarwal's Reflections 08 Apr 2007
- Upcoming PHP and Open Source Conferences 08 Apr 2007
- JavaScript Hijacking 06 Apr 2007
- My First CSS Naked Day 05 Apr 2007
- Digg's Eli White Speaks at PHP Meetup 18 Mar 2007
- My Amazon Anniversary 15 Mar 2007
- Allowing HTML and Preventing XSS 13 Mar 2007
- A New Beginning 13 Mar 2007
- Paying for Answers 09 Mar 2007
- OWASP Spring of Code 2007 06 Mar 2007
- Columbia PHP Meetup 23 Feb 2007
- Ambient Signifiers 21 Feb 2007
- Consulting Rates 20 Jan 2007
- URL Vanity 13 Jan 2007
- Adobe PDF XSS Vulnerability 10 Jan 2007
- 2006 Highlights 04 Jan 2007
- JavaScript Login Check 22 Dec 2006
- YouTube Fixes Security Vulnerability 21 Dec 2006
- Google Web Accelerator Debate 19 Dec 2006
- Ajax Security 12 Dec 2006
- Web Builder 2.0 Recap 10 Dec 2006
- Security 2.0 at Web Builder 2.0 30 Nov 2006
- Stealing Saved Passwords 23 Nov 2006
- ZendCon Wrapup 23 Nov 2006
- Mashery API Management Service 07 Nov 2006
- Installing LWP on a Mac 04 Nov 2006
- Damien Seguy Catalogues phpinfo() Statistics 03 Nov 2006
- Formatting and Highlighting PHP Code Listings 26 Oct 2006
- PHP Tidbits 24 Oct 2006
- Firefox 2.0 First Impressions 23 Oct 2006
- DC PHP Conference Recap 22 Oct 2006
- Using CSRF for Browser Hijacking 10 Oct 2006
- DC PHP Conference Is Next Week 09 Oct 2006
- Google Code Search for Security Vulnerabilities 05 Oct 2006
- The Best City in America for PHP Developers 02 Oct 2006
- The crossdomain.xml Witch Hunt 01 Oct 2006
- CakePHP Visits New York 27 Sep 2006
- Breach Security Acquires Thinking Stone 26 Sep 2006
- Cal Evans Interviews Theo Schlossnagle 25 Sep 2006
- The Dangers of Cross-Domain Ajax with Flash 24 Sep 2006
- EuroOSCON Recap 24 Sep 2006
- Belated php|works Recap 24 Sep 2006
- A Day of Remembering 11 Sep 2006
- OWASP Autumn of Code 31 Aug 2006
- Zend Gets Another $20 Million 28 Aug 2006
- Web APIs with PHP 28 Aug 2006
- Social Design Patterns 18 Aug 2006
- Interesting Security Blogs 18 Aug 2006
- Blood, Sweat, and Swear: Terry Chay on Pro-PHP Podcast 15 Aug 2006
- PHP Gets HttpOnly Cookies 11 Aug 2006
- Cal Evans Interviews George Schlossnagle 10 Aug 2006
- Rails Security and Nondisclosure 10 Aug 2006
- Cross-Domain Ajax Insecurity 09 Aug 2006
- Kevin Yank Discusses CSRF 08 Aug 2006
- Six Reasons PHP Sucks 03 Aug 2006
- OSCON People and Random Tidbits 03 Aug 2006
- Cal Evans Interviews Laura Thomson 02 Aug 2006
- OSCON 2006 Redux 02 Aug 2006
- OmniTI Seeks Junior Security Analyst 13 Jul 2006
- PHP Security Hoedown at OSCON 10 Jul 2006
- The OWASP PHP Top 5 07 Jul 2006
- PHP Security by Example 06 Jul 2006
- Are Happy People Smarter? 07 Jun 2006
- PHP 5 Statistics 05 Jun 2006
- Mob Mentality and Web 2.0 31 May 2006
- ApacheCon Early Bird Ends Soon 31 May 2006
- Reporting Vulnerabilities 23 May 2006
- OmniTI Acquires Brain Bulb 16 May 2006
- PHP Lightning Talks 10 May 2006
- PHP 5.1.4 Fixes Critical Bug 04 May 2006
- Renkoo Launches Beeta 03 May 2006
- php|tek Recap 03 May 2006
- Boston PHP and the Zend Framework 02 May 2006
- LinuxWorld Recap 30 Apr 2006
- Storing Sessions in a Database 30 Apr 2006
- Zend Framework License 26 Apr 2006
- PHP News Catchup 24 Apr 2006
- PHP Blogs Not on Planet PHP 12 Apr 2006
- PHP and Scalability (Again) 10 Apr 2006
- Looking for a Job? 07 Apr 2006
- PHP Quebec Recap 06 Apr 2006
- Windows on Mac 05 Apr 2006
- Zend_Filter Reviewed on SitePoint 28 Mar 2006
- OSCON 2006 28 Mar 2006
- Who Practices Test-Driven Development (TDD)? 27 Mar 2006
- Easy Cookie Hacking 26 Mar 2006
- del.icio.us RSS Feeds 26 Mar 2006
- Agile PHP Testing at PHP Quebec 21 Mar 2006
- php|architect: March 2006 Edition 20 Mar 2006
- Scalable Internet Architectures 19 Mar 2006
- IBM's PHP Reading List 19 Mar 2006
- SERVER_NAME Versus HTTP_HOST 16 Mar 2006
- ZF Tutorial Update 14 Mar 2006
- Gosling Didn't Get the Memo 13 Mar 2006
- Zend Framework Tutorial 07 Mar 2006
- Zend Framework Preview 04 Mar 2006
- Another Google XSS Vulnerability 01 Mar 2006
- Brain Bulb Webcasts 01 Mar 2006
- php|architect Magazine 28 Feb 2006
- Ask Chris Is Back 26 Feb 2006
- PHP News Roundup 24 Feb 2006
- Mac OS X Annoyances and Resolutions 16 Feb 2006
- Spammer Wins Gold 16 Feb 2006
- Security: Digg Versus Furl 15 Feb 2006
- RSS Feed Enhancements 15 Feb 2006
- Essential PHP Security Slashdotted 14 Feb 2006
- Top X List of Mac OS X Annoyances 12 Feb 2006
- OSCON and NYPHPCon Call for Papers 10 Feb 2006
- Luke Welling to Speak at Waterfall 2006 10 Feb 2006
- Tragedy Strikes One of PHP's Own 06 Feb 2006
- Test::Harness for PHP 05 Feb 2006
- PHP Easter Eggs 04 Feb 2006
- Ruby on Rails Fans 01 Feb 2006
- PHP Security and SABSA 31 Jan 2006
- PHP Security Architecture 27 Jan 2006
- Test::Simple for PHP 26 Jan 2006
- Secure Logins 25 Jan 2006
- PHP Insecurity 23 Jan 2006
- addslashes() Versus mysql_real_escape_string() 21 Jan 2006
- Technical Vocabulary and Grammar 19 Jan 2006
- Pro PHP Podcast 18 Jan 2006
- 2005 Highlights 12 Jan 2006
- Happy Holidays 23 Dec 2005
- Essential PHP Security: Forms and URLs 22 Dec 2005
- Google XSS Example 21 Dec 2005
- Google's XSS Vulnerability 21 Dec 2005
- Power PHP Testing 17 Dec 2005
- JApacheCon Wrapup 15 Dec 2005
- CodeSnipers.com Interview 14 Dec 2005
- JApacheCon 13 Dec 2005
- PHPSecurity.org Launches 06 Dec 2005
- Zend Framework Webcast 02 Dec 2005
- PHP Magazine December Issue 02 Dec 2005
- PHP Testing Tutorial at ApacheCon 16 Nov 2005
- Zend Framework Update 11 Nov 2005
- Computer Associates Steps Up 10 Nov 2005
- Richard Davey Has a Blog 07 Nov 2005
- Convert Smart Quotes with PHP 31 Oct 2005
- Zend Framework Wishlist 22 Oct 2005
- ZendCon Day Four 22 Oct 2005
- ZendCon Day Three 22 Oct 2005
- ZendCon Day Two 20 Oct 2005
- ZendCon Day One 19 Oct 2005
- Essential PHP Security Lives! 14 Oct 2005
- Myspace CSRF and XSS Worm (Samy) 13 Oct 2005
- PHP Quebec Call for Speakers 12 Oct 2005
- Linux IM Clients 12 Oct 2005
- Pro-PHP on iTunes Top 100 12 Oct 2005
- Teach a Man to Fish 10 Oct 2005
- More Free Articles 10 Oct 2005
- Ning Launches 04 Oct 2005
- PHP Stripping Newlines 04 Oct 2005
- PHP 5's Adoption 03 Oct 2005
- eDonkey's Retirement 29 Sep 2005
- Terry Chay on Remote Scripting (Ajax) 28 Sep 2005
- User Group Tour 26 Sep 2005
- My Google? 21 Sep 2005
- Chris Cornutt Has a Blog 19 Sep 2005
- New Design 19 Sep 2005
- PHP Security by Example 16 Sep 2005
- Essential PHP Security Is Finished! 10 Sep 2005
- Zend PHP Conference and Expo 12 Mar 2005
- Quoting PHP Strings 25 Aug 2005
- Google Talk 23 Aug 2005
- PHP Job Market Webcast 21 Aug 2005
- smugMaps 20 Aug 2005
- Ammar Ibrahim in Linux Journal 18 Aug 2005
- PHP 6.0 Excitement 12 Aug 2005
- Terry Chay on PHP Security 10 Aug 2005
- Episode One 09 Aug 2005
- OSCON 2005 Recap 07 Aug 2005
- Ask Chris 30 Jul 2005
- ApacheCon EU 2005 29 Jul 2005
- php|works Schedule Posted 12 Jul 2005
- Stefan Esser Discusses Security Guide 11 Jul 2005
- Ethics and Security 10 Jul 2005
- PHP Security Forum 25 Jun 2005
- PHP Security Makes OSCON Top Ten 25 Jun 2005
- Laura Thomson Has a Blog 17 Jun 2005
- PHP Security Audit HOWTO 13 Jun 2005
- PHP Security in Vancouver 09 Jun 2005
- Happy Birthday, PHP! 08 Jun 2005
- PHP Podcast: Hot or Not? 26 May 2005
- Google Web Accelerator and PHP 24 May 2005
- PHP at OSCON 2005 23 May 2005
- PHP in Cancun 13 May 2005
- PHP Security Briefing at NOAA 05 May 2005
- Zend Certification Self Test 11 Apr 2005
- PHP Quebec Recap 11 Apr 2005
- PHP Quebec 31 Mar 2005
- ApacheCon Europe, Here I Come 26 Mar 2005
- Mastering PHP Security Reloaded 24 Mar 2005
- Where Are Your PHP Includes? 24 Mar 2005
- The [phpsec-news] Mailing List Launches 23 Mar 2005
- Magic Quotes are Worthless 22 Mar 2005
- Community Support for Brain Bulb 22 Mar 2005
- Apache-Test and SimpleTest 20 Mar 2005
- Brain Bulb, The PHP Consultancy 18 Mar 2005
- Writing a Technical Specification 17 Mar 2005
- The Birth of a PHP Consultancy 28 Feb 2005
- Sign Up for Mastering PHP Security 22 Feb 2005
- Phishing 17 Feb 2005
- SHA-1 Broken 15 Feb 2005
- More on Filtering Input and Escaping Output 08 Feb 2005
- Filter Input, Escape Output 06 Feb 2005
- Referer Buys You Nothing 04 Feb 2005
- PHP Security Consortium Redux 03 Feb 2005
- PHP Security Consortium Official Launch 31 Jan 2005
- Zend's Marketing Controversy 27 Jan 2005
- Apache-Test for the PHP CLI 27 Jan 2005
- XSS Cheatsheet 26 Jan 2005
- Session Riding 25 Jan 2005
- OSCON Call for Proposals 21 Jan 2005
- 2004 Highlights 02 Jan 2005
- PHP and Apache 2 Slashdotted 21 Dec 2004
- PHP and Apache 2 20 Dec 2004
- PHP Security Announcements 20 Dec 2004
- Character Type Functions 19 Dec 2004
- Holiday Greeting 17 Dec 2004
- Free Security Corners and a Guru Speak 13 Dec 2004
- PHP Security Consortium 07 Dec 2004
- Testing PHP 01 Dec 2004
- ApacheCon 2004 12 Nov 2004
- Installing PHP and Apache 10 Nov 2004
- Election Reflection 05 Nov 2004
- PHP Security Experiments 01 Nov 2004
- Handling 404 Errors with PHP 30 Oct 2004
- Guru Speak 27 Oct 2004
- Foxylicious - Firefox Finally Groks del.icio.us 24 Oct 2004
- Preparing for the Zend Certification 05 Oct 2004
- The Race Continues 28 Sep 2004
- ApacheCon Early Bird 27 Sep 2004
- Shared Hosting with PHP 26 Sep 2004
- php|works 25 Sep 2004
- PHP Session Security 24 Sep 2004
- In Toronto for php|works 21 Sep 2004
- Zach Braff has a Blog 17 Sep 2004
- DataLibre 16 Sep 2004
- Securing PHP Code with Zend 15 Sep 2004
- Foo Camp and Electronic Voting 12 Sep 2004
- HTTP Developer's Handbook Feedback 08 Sep 2004
- Yahoogle and Flickr 08 Sep 2004
- del.icio.us 07 Sep 2004
- Steve Mallett on "Infoware" 06 Sep 2004
- Fired for Blogging 31 Aug 2004
- PHP at ApacheCon 29 Aug 2004
- The Race Begins 28 Aug 2004
- Security Corner 21 Aug 2004
- Securing PHP Sessions 30 Jul 2004
- OSCON Slides Available 29 Jul 2004
- PHP Security Workbook 28 Jul 2004
- OSCON Bound 24 Jul 2004
- Zend PHP Certification 17 Jul 2004
- Upcoming Conferences 10 Jul 2004
- Planet PHP 09 Jul 2004
- PHP Scales 02 Jul 2004
- PHP Security Seminar 23 Jun 2004
- A PHP Guy at YAPC: Part II 21 Jun 2004
- A PHP Guy at YAPC: Part I 18 Jun 2004
- Adam Trachtenberg's New Blog 06 Jun 2004
- Gmail and Spam 18 May 2004
- CD Baby and George 12 May 2004
- Google Blog 11 May 2004
- PHPCommunity.org Article 26 Apr 2004
- Foiling Cross-Site Attacks 26 Mar 2004
- FOSS Planet 22 Mar 2004
- PHP Community Logo 17 Mar 2004
- MySQL Speaker Guidelines 16 Mar 2004
- PHP Security at OSCON 05 Mar 2004
- PHPCommunity.org Logo Contest Ends 04 Mar 2004
- Atlanta PHP 02 Mar 2004
- Phundamentals 28 Feb 2004
- Advanced PHP Programming 26 Feb 2004
- PHP Blogs 24 Feb 2004
- Microsoft Leak 18 Feb 2004
- PHP Security Articles 17 Feb 2004
- Redesign and Writing 15 Feb 2004
- MySQL Licensing 11 Feb 2004
- PHP Community Logo Contest 26 Jan 2004
- 2003 Highlights 11 Jan 2004
- PHP Magazine and Sessions 13 Dec 2003
- Localfeeds 07 Dec 2003
- PHP Community Site 01 Dec 2003
- On Being Quoted 24 Nov 2003
- ApacheCon Wrapup 20 Nov 2003
- Tuesday at ApacheCon 19 Nov 2003
- Monday at ApacheCon 18 Nov 2003
- Sunday at ApacheCon 17 Nov 2003
- PHP Security Handbook 13 Nov 2003
- mod_perl Sucks 06 Nov 2003
- Virtual Machine War 30 Oct 2003
- What Is Scalability? 19 Oct 2003
- Article Errata 15 Oct 2003
- RAMP Training 01 Oct 2003
- RSS Feed 27 Sep 2003
- Slashdotted 17 Sep 2003
- PHP Panel 15 Sep 2003
- US Open 07 Sep 2003
- ApacheCon 04 Sep 2003
- HTTP Developer's Handbook 03 Sep 2003
- A New Beginning 31 Aug 2003
Blog
I’ve been blogging since 2003 about design, technology, and business. Subscribe to my blog or follow me on Twitter.