{"id":58,"date":"2008-03-10T18:08:00","date_gmt":"2008-03-10T18:08:00","guid":{"rendered":"https:\/\/karwin.com\/blog\/index.php\/2008\/03\/10\/speaking-at-the-mysql-conference\/"},"modified":"2008-03-10T18:08:00","modified_gmt":"2008-03-10T18:08:00","slug":"speaking-at-the-mysql-conference","status":"publish","type":"post","link":"https:\/\/karwin.com\/blog\/index.php\/2008\/03\/10\/speaking-at-the-mysql-conference\/","title":{"rendered":"Speaking at the MySQL Conference"},"content":{"rendered":"<p>It&#8217;s time for the 2008 <a href=\"http:\/\/en.oreilly.com\/mysql2008\/public\/content\/home\">MySQL Conference<\/a>.  This year should be especially interesting.  <\/p>\n<div>Sun announced they would acquire MySQL on Jan. 16 &#8211; fewer than eight weeks ago (I bet it doesn&#8217;t seem that way to the folks involved).  The deal was closed only Feb. 26, and I&#8217;m sure there are still months of work to go, to fully integrate the two companies.  Exciting times!<\/p>\n<div>As always, database server technology and connectivity is the focus of the MySQL Conference.  The sessions are organized into a dizzying 17 tracks, only two of which aren&#8217;t specific to some technology aspect of using MySQL.  I&#8217;m looking forward to seeing many of the sessions.  <\/div>\n<div>One in particular that caught my eye is Beat Vontobel&#8217;s talk, &#8220;The Lost Art of the Self Join&#8221; in which he says he will solve a Sudoku puzzle in SQL.  I gave a talk at <a href=\"http:\/\/conferences.oreillynet.com\/pub\/w\/46\/presentations.html\">OSCON 2006<\/a>, &#8220;SQL Outer Joins for Fun and Profit,&#8221; in which I also used SQL to solve Sudoku puzzles.  It&#8217;ll be interesting to see Beat&#8217;s solution.<\/div>\n<div>This year I&#8217;m giving a tutorial, &#8220;<a href=\"http:\/\/en.oreilly.com\/mysql2008\/public\/schedule\/detail\/1639\">SQL Antipatterns<\/a>.&#8221;  This is my way of describing many best practices of database and query design, by counter-example.  After answering SQL questions on newsgroups for many years, I have seen a lot of counter-examples.<\/div>\n<div>I&#8217;m busy over the next couple of weeks preparing my presentation slides.  Here&#8217;s my complete outline of topics for the MySQL Conference Tutorial:<\/div>\n<div><\/div>\n<div><span style=\"font-weight: bold;\">Logical Database Antipatterns<\/span><\/div>\n<div>\n<ul>\n<li>Jaywalking &#8211; using a comma-separated list of values in a string.<\/li>\n<li>Entity-Attribute-Value.<\/li>\n<li>Multi-column Attributes.<\/li>\n<li>Metadata tribbles.<\/li>\n<\/ul>\n<\/div>\n<div><span style=\"font-weight: bold;\">Physical Database Antipatterns<\/span><\/div>\n<div>\n<ul>\n<li>ID Required.<\/li>\n<li>Phantom Files.<\/li>\n<li>ENUM Antipattern.<\/li>\n<li>Readable Passwords.<\/li>\n<\/ul>\n<\/div>\n<div><span style=\"font-weight: bold;\">Query Antipatterns<\/span><\/div>\n<div>\n<ul>\n<li>Ambiguous GROUP BY ((also discussed in recent blog posts by <a href=\"http:\/\/www.bitbybit.dk\/carsten\/blog\/?p=143\">Carsten<\/a> and <a href=\"http:\/\/rpbouman.blogspot.com\/2007\/05\/debunking-group-by-myths.html\">Roland Bouman)<\/a><\/li>\n<li>Using HAVING instead of WHERE.<\/li>\n<li>Poor Man&#8217;s Search Engine (LIKE and REGEXP).<\/li>\n<li>Implicit Columns in SELECT and INSERT.<\/li>\n<\/ul>\n<\/div>\n<div><span style=\"font-weight: bold;\">Application Development Antipatterns<\/span><\/div>\n<div>\n<ul>\n<li>SQL Injection.<\/li>\n<li>Parameter Fa\u00e7ade.<\/li>\n<li>Pseudokey Neat Freak.<\/li>\n<li>Session Coupling.<\/li>\n<li>Phantom Side Effects.<\/li>\n<\/ul>\n<\/div>\n<div>It&#8217;s not too late to <a href=\"https:\/\/en.oreilly.com\/mysql2008\/public\/register\">register<\/a> for the MySQL Conference!<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s time for the 2008 MySQL Conference. This year should be especially interesting. Sun announced they would acquire MySQL on Jan. 16 &#8211; fewer than eight weeks ago (I bet it doesn&#8217;t seem that way to the folks involved). The deal was closed only Feb. 26, and I&#8217;m sure there are still months of work [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[2],"tags":[],"class_list":["post-58","post","type-post","status-publish","format-standard","hentry","category-mysql"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pawgV7-W","jetpack-related-posts":[],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/58","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=58"}],"version-history":[{"count":0,"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/58\/revisions"}],"wp:attachment":[{"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=58"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=58"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/karwin.com\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=58"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}