October 2010
Mon Tue Wed Thu Fri Sat Sun
« Sep   Nov »
 123
45678910
11121314151617
18192021222324
25262728293031

Month October 2010

Lightning Talk Moderators Needed

In case you haven’t heard, we’re adding Lightning Talks to the PASS Community Summit this year. The idea of Lightning Talks is pretty simple:

  • Every speaker has 5 minutes
  • Slides are optional
  • No demos
  • When the 5 minutes are up, the speaker is done.

So, in order to pull this off, we need three volunteers from the audience. All you have to do is work an egg timer. Whenever a speaker starts talking, you start the egg timer. When they’re done, you cut them off, shoo them off the stage, and then introduce the next speaker. You can think of the job as being like an M.C. because that’s what it is (parachute pants will not be provided by PASS). One bonus is that you’ll get to hobnob with the speakers and/or embarrass when you introduce them. It’s all good fun until someone falls off the stage!

If you’d like to volunteer to moderate one of these sessions, let me know. Send an email to jeremiah.peschka@sqlpass.org. There are only three sessions, supplies are limited. Act now!

Update: I want to thank everyone who got back in touch with me about this, and there were a lot of you. We have our moderators selected – Matt Velic, Lance Harra, and Noel McKinney will be emceeing our Lightning Talks

I’m Going to Hadoop World

Sounds like I’m bragging, right? There is a free book involved. Or maybe you don’t care because it’s all NoSQLs and stuff and you’re a SQL Server DBA. And that’s where we differ.

When I first heard about NoSQL databases, I had the same reaction that a lot of people are having right now: disbelief and mockery. I remember making fun of MySQL when I first ran into it. It was such an odd database: it didn’t have foreign keys, joins didn’t work, it sometimes ate all of your data, and writes put locks on tables. It was no comparison for SQL Server, Oracle, or PostgreSQL. When I hit publish, this blog post is going to get dumped into a MySQL database on my server. I’ll probably hit up slashdot or read some blogs. That’s going to hit MySQL as well. These days, I try to keep a passing familiarity with MySQL because you never know when you’re going to need to use such a cheap, powerful, tool.

I see a filthy commie on the other side of this intertubes

This is what I think about NoSQL databases; especially Hadoop.

So, I’m going to Hadoop World and I’m going to learn as much as I can about Hadoop and the technology that surrounds it. The fun part is that I’m going to take some notes. And I’m going to share those notes.

That’s all well and good. As Senator Joe McCarthy used to say, “sharing is caring and caring is for commies.”

So, instead of just going and learning about what is interesting to me, I want to know what kind of questions DBAs have about this new-fangled Hadoop thing. I want to find the answers to the questions that people have about Hadoop, its place in the enterprise, and how it may or may not change the DBA’s job.

So, sound off in the comments. If you’ve got a question, type in the box and hit send. I’ll give you props when I post my write up of Hadoop World and I’ll do my best to find the answer.

I owe this entire idea to Andy Warren (blog | twitter). He mentioned that he was curious about Hadoop and that sparked this blog post. Here are his questions:

  • How do you install it?
  • What login security model(s) does it have
  • When does it make sense to use Hadoop vs SQL Server?
  • What tools are provided to manage it?

Make It Better, Stupid

Whenever I write code, I churn out garbage. I do it this way so I can get the general idea down and mess around with the problem. I don’t need a good solution to solve my problem while I’m in development, I need a working solution. Once I get a working solution, I go back and I optimize the code and I eventually write something that doesn’t look like a baby panda threw up on my keyboard.

Today I optimized this:

 tags.each do |tag|
   tag.strip!
   tag_object = Tag.find_by_name(tag)

   tag_object = Tag.create!(:name => tag) if tag_object.nil?

   tag_list << tag_object
 end

into this:

tags.each { |tag| tag_list << Tag.first_or_create(:name => tag.strip) }

The actual refactoring I performed isn’t as important to me as the process. I write a lot of junk. I think it’s okay to write a lot of junk as long as you’re getting working ideas out in the wild, messing around, and making them work. Once you get those ideas working, it’s important to go back and clean them up so that you can maintain your ideas, build on them, and grow them into something bigger and better.

Upcoming Training – Columbus Code Camp

Good news, central Ohio residents! I’m going to be speaking at the Columbus Code Camp. I’ll be joining some amazing speakers and I’m really excited to be speaking locally again.

Original photo (http://www.flickr.com/photos/jetalone/121048480/), some rights reserved (http://creativecommons.org/licenses/by/2.0/deed.en)

Proof that you can refactor anything

The best part is, this is a brand new talk. That’s right, Columbus, you get the brand new sexy! I’m going to be talking about Refactoring SQL Applications. Here’s the abstract:

Refactoring SQL is not like refactoring application code. This talk will demonstrate proven SQL refactoring techniques that will help you identify where performance gains can be made, apply quick fixes, improve readability, and help you quickly locate places to make sweeping performance improvements. Jeremiah Peschka has years of hands on experience tuning SQL applications for performance, throughput, and concurrency.

This isn’t going to be an in-depth dissertation. The purpose of the presentation is to lay a solid foundation that developers can use to build their own refactoring tools and techniques. This is the capstone of the last two years of my professional life and I’m really excited that I get to attempt to wad up what I learned, run it through a grinder, and the share it with the world in the form of Delicious SQL Sausage. Jimmy Dean would be so proud of me. So, if you’re in or around Columbus on October 16th, come and check out my talk. You can get more info at http://columbuscodecamp.com

What I’ve Been Reading – 2010-10-01

It’s been a technical week.

Exclusion constraints are generalized SQL UNIQUE One of the cool new features of PostgreSQL 9.0 is exclusion constraints. Exclusion constraints make it possible to create a scheduling grid for a classroom or hotel that prevents double bookings of a room.

Your Software Can Learn A Lot From ATMs ATMs are simple. They work. They work well. When they don’t work, they tell you that something is up, but they don’t do anything sneaky or have side effects or do two things at once. Do you want to take out money? Do you want a receipt? Do you want to deposit money? There aren’t multiple options with strange combinations. You do one things and then move on to the next. Your software should be like this.

Gurus and Bastards What’ll it be? Helpful optimistic guru or grumpy bastard?

Learn Python the Hard Way A fun new way to learn how to program: type the program, run the program, do the extra credit.

txn.commit() are you sure? Think about whether you’re really using those transactions the right way. Think about it.

This site is protected with Urban Giraffe's plugin 'HTML Purified' and Edward Z. Yang's Powered by HTML Purifier. 401 items have been purified.