Author: Bill Karwin

  • Speaking on SQL Injection at MySQL Conference

    Speaking on SQL Injection at MySQL Conference

    I’m speaking this year at the MySQL Conference & Expo 2010 in Santa Clara. Be sure to get your early registration discount by Feb 22! If you miss that deadline, get 25% off with this discount code: mys10fsp I’m presenting a talk on SQL Injection Myths and Fallacies. This may seem like a topic that’s […]

  • What is QEP?

    In the context of database programming, QEP is an acronym for Query Execution Plan. The database server analyzes every SQL query and plans how to use indexes and order tables to produce the result in the most efficient way. You can get a report of the QEP for a SELECT query using the EXPLAIN command […]

  • Free Software vs. Gratis Software

    A lot of folks are unclear on the subtleties of free software and open source. Mike Hogan writes a blog article”Is Hybrid Licensing of OSS Hypocrisy?” to try to shed some light on this. With respect, I think he has missed part of it. We’re talking about two orthogonal things here. One is open-source versus […]

  • I’m Speaking on SQL at OSCON

    I’m Speaking on SQL at OSCON

    Early Registration has been extended to June 23. Save up to $250! Enter my friends-of-speaker discount code “os09fos” when you register, and save an additional 20%! Just because you read my blog. Practical Object-Oriented Models in SQL Wednesday July 22, 5:20pm. SQL is from Mars, Objects are from Venus. This talk is for software developers […]


    Photo by Mike Gogulski, used in accordance with the Creative Commons BY-SA 3.0 license The photo above illustrates (by counter-example) an important characteristic of a normalized database: each logical “type” of attribute belongs in a separate column. Just because three values happen to be numeric doesn’t mean it makes sense to SUM() them together. But if […]

  • SQL Antipatterns Strike Back! Slides

    I presented my tutorial at the MySQL Conference & Expo today. I have fun preparing it and presenting it, and I got many good questions and comments from the audience. Thanks to everyone for coming and participating! I have uploaded my slides with a Creative Common 3.0 license to my SlideShare account: For those […]

  • Oracle buying Sun

    Stunning news today that Oracle has offered to buy Sun Microsystems. This is sending the MySQL community reeling, as they begin their MySQL Conference & Expo today. Everyone’s talking about whether this change is good for MySQL. My first thought is: it’s not over till it’s over. These deals have a way of falling through […]

  • I hate IBM System i

    In his blog, Vadim reports that a new storage pluggable engine for MySQL has appeared in the source tree, to support IBM DB2 for i as a back-end. This reminds me that I hate the IBM System i platform (aka IBM Power Systems, aka iSeries, aka AS/400). Don’t get me wrong — I’m sure it’s […]

  • Virtually Speaking

    The word virtually is overused. In many cases using the word virtually simply means not. For example: I have finished virtually all of my homework. This new surgical procedure is virtually pain-free. In Modern American Usage, Bryan A. Garner counts virtually as a weasel-word. Weasel-words are so named because of the habit of weasels to […]

  • Hello EclipseCon 2009

    No, I am not attending EclipseCon — but my smiling face apparently was on Tuesday. StackOverflow founder and CodingHorror blogger Jeff Atwood emailed me to let me know he displayed my StackOverflow user profile page during his keynote at EclipseCon. I don’t know what the context was in which he showed my profile. Maybe he […]