Last week I posted a picture on Twitter of the two books I’m reviewing right now: Tom LaRock’s DBA Survivor and Bert Scalzo’s Introduction to Oracle. They’re both 100-level books. People didn’t seem to question the former (perhaps because Tom’s a friend of mine) but I got a lot of comments about the latter. Why on earth would I start picking up Oracle, especially after becoming a Microsoft Certified Master in SQL Server?
Over the last ~20 years, I’ve reinvented myself a few times. My “Managing People Sucks” post talked about the decisions I made along the way. I’ve tried hotel management, network administration, programming, virtualization administration, SAN administration, and database administration. I’ve learned more and more about myself each time, and I like to think I’m building speed.
I like to think of myself as a carpenter, and each skillset I’ve picked up has given me another tool in my mental shop. I’m able to work with more and more complex projects over the years.
Whenever I choose to pick up a new tool, I look at it in relation to the other tools I’ve already got, and in relation to the types of projects I want to accomplish down the road. When I got the chance to pick up virtualization, I grabbed it, because I believe all SQL Servers will be virtual in one way or another down the road. I chose to pursue SAN administration for similar reasons. These two skills enhanced my toolbox well.
So how do I go about picking the next tool?
Should I pick up Business Intelligence? I firmly believe in the power of BI to justify suitcases of cash and armies of resources. The problem is that it’s not a tool that fits well with the rest of the tools in my mental shop. It doesn’t smoothly and directly extend the knowledge I already have. It’s like a woodworker who wants to buy a plasma cutter – the plasma cutter will only come in handy when he decides to work with metal. The rest of his tools don’t work with metal. He might be able to build some projects that have both wood and metal, or switch to metal, but it’s not quite that good of a fit.
Should I pick up Parallel Data Warehouse Edition? This new niche version of SQL Server is BI-focused, but the engine itself is a very close match for my skillset. It combines high-end hardware, storage, and SQL Server to deliver decisionmaking information. I like its future odds, but it’s not really mainstream. I’ve been trying to extend my skills in a way that let me help more people outside of databases – for example, virtualization and storage were above-and-beyond SQL Server, wide-ranging appeal stuff. PDWE plays to a very small audience.
Should I pick up Oracle? Companies that have SQL Server often have Oracle too. Oracle runs on SANs and in virtualization, and it would extend my audience. Almost every skillset I have applies to Oracle, with one big exception – big Oracle shops don’t run it on Windows. I would need to pick up Linux skills to really be effective as an Oracle DBA. Oracle’s a great investment for my career, though – it’s a solid database with a great future. Even if the cloud emerges as a roaring success for private, secure data warehouses, you can bet your bottom dollar that Larry Ellison will figure out a way to take that dollar.
Should I pick up NoSQL? Stop laughing, dammit. It really does have the potential to solve problems, and it makes for a surprisingly natural extension to SQL Server. When someone needs transactional integrity at the cost of some scalability, I can help them with SQL Server. When they’re willing to deal with eventual consistency in order to get crazy fast scalability, I can go the NoSQL route. The challenge is that the tooling sucks – the databases are being compiled as we speak, so forget about nice GUI tools to help you learn. Time to bust out the programming. They don’t live on Windows either, so now we’re talking about picking up multiple skillsets simultaneously. This is one of those cases where I don’t have quite enough other tools to really know how to use this one yet.
So should I revisit coding? I gave it up around 2002-2003 when I realized I would have to keep relearning languages every few years as new ones came into style. C# looks like it’s got staying power, and Windows Azure means I can develop C# apps that scale. Ruby on Rails calls to me for its ease of use, and people I respect are using it to build cool stuff. The drawback is that you wouldn’t normally build a Ruby app to interface with SQL Server, so that loses a little appeal. It might take me quite a while to get good at C#. (No, I’m not learning PowerShell – if I can’t build web apps with it, it’s not as sexy to me.)
Should I dive deeper into social media? I’ve had some success with blogs and Twitter, and I do technically work in the marketing department. Quest is willing to let me jump around into other departments and help them with social media. This might actually be the toughest challenge out of all of ’em, and it doesn’t leverage any of my technical skills. It’s attractive to me because it’s new and shiny and different.
Should I hone my writing and storytelling? I’d like to think I’m okay at these, but not great. I could directly leverage the rest of my skills right away. I think I know a lot of things I haven’t passed on to others yet, and maybe I could do it in a more effective way. I’m not convinced that this is a good long-term investment, though, because frankly writing and storytelling doesn’t pay well. Note that you’re reading this blog for free. Think about your very favorite blog and how good it is – and yep, it’s free too. There’s a reason I don’t run ads here – they don’t pay jack. I make more in an hour of consulting than I do on a month of ads.
So should I focus on training & consulting? I love helping people fix problems and teaching them new tricks. Maybe I should just stop the skill train here for a while and coast. There’s something to be said for making money, and Quest is generous enough to let me consult and train on the side. That’s one heck of an opportunity.
I don’t have the right answer yet, but I’ve resolved to spend the next couple of months dabbling in different areas to find out. I’ll play with Ruby on Rails, Oracle, NoSQL, and a few other things to figure things out. My recent Twitter e-book was a part of that – I wanted to throw something social-media-ish against the wall just to get it out of my system.