Keeping It Simple

  • 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…

  • EAV FAIL

    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: http://www.slideshare.net/billkarwin 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…

  • Parrot Web Framework?

    Wondering if the following idea could be feasible: Architect a web framework that emphasizes Inversion of Control. Implement core web framework in Parrot (now that this dynamic language platform has released its 1.0). Voila! A web framework that supports any language implemented for Parrot platform. Developers write plugins in any language: Python, Ruby, PHP, Perl6,…

  • How do the Proxy, Decorator, Adaptor, and Bridge Patterns differ?

    A user recently asked: I was looking at the Proxy Pattern, and to me it seems an awful lot like the Decorator, Adaptor, and Bridge Patterns. Am I misunderstanding something? What’s the difference? Why would I use the proxy pattern veses the others? How have you used them in the past in real world projects?…

  • Can I Use Example Code from Internet Q&A Sites?

    A user recently asked: Scenario: A developer is working on a project and encounters a problem. They ask a question on the internet somewhere (ie stackoverflow.com) Someone answers their question and provides a nice code snippet that just about does what they want. Where does one legally stand if the developer includes the code verbatim…

Got any book recommendations?