Archive for the 'About' Category

I have joined Percona

Effective April 1, I will join Percona full-time as a consultant. I’ll be helping people build high-performance applications with MySQL, but I’ll also be continuing to develop and improve tools such as Maatkit.

This career change has been a long time in progress. I’m really looking forward to it, but at the same time it’s hard to leave my current employer, The Rimm-Kaufman Group (RKG). Working with them has been the best job I’ve ever had. But ultimately, my dream job is to help as many people as I can, and consulting will be a better way to do that.

At a time like this, I like to reflect on the trail that has led here. It’s a good opportunity to realize how fortunate I really am and fill up my gratitude tank. So I’d like to thank everyone who has helped me reach this point. All the people who have encouraged me, sponsored me, suggested new options… all kinds of help. A special thanks to my wife Lynn, to Alan Rimm-Kaufman and all my colleagues at RKG, to the many fine people at MySQL, and to the MySQL community as a whole. My deep gratitude to all of you. I look forward to working with you even more in the future.

Technorati Tags:, , ,

You might also like:

  1. Four companies to sponsor Maatkit development
  2. innotop 1.4.0 released

What I’ve been doing lately

I haven’t been blogging about the things I used to — how-tos and technical hacks — because I’ve been working quite hard on MySQL Toolkit and, believe it or not, innotop. I’ve made it possible to write innotop plugins, which have been very useful to our team at work, and I’m working on documentation. Plugins won’t make it into the upcoming release; it’ll just be bug fixes and documentation. These projects have taken up most of my free time.

I’ve also tentatively joined a group of people working on a very large, exciting, secret project which may consume the rest of my summer and/or much of the rest of the year. (I’ve been turning down consulting gigs and other projects because of this). If this secret project works out, I’ll be writing more about it here, you can count on that.

In the meantime, I’m still planning to finish some of the work I’ve started on MySQL Table Sync, which I continue to need because of a replication bug I haven’t been able to isolate.

Someday, maybe even soon, I might finish some of my 60+ drafts, such as “how to implement event listeners and notification in MySQL.” But I think the other projects I’m working on are much more important and beneficial to many more people, so I have prioritized them.

I had a slight glitch with my Amazon wishlist. I was on vacation and when I came back, I saw about half a dozen things purchased from it, but I haven’t received any of them (thank you, whoever you are!). I didn’t really understand how the wish list worked, so I didn’t know I needed to specify a shipping address. I assumed Amazon would send them to my primary shipping address. Well, apparently that didn’t work, and in the meantime I also realized Amazon was sending mail somewhere I couldn’t receive it, so I’m not sure what is really going on. I’ve specified an address now, and I’m hoping that takes care of it.

Technorati Tags:, ,

You might also like:

  1. A look at innotop’s new features
  2. MySQL Query Profiler 1.0.0 released
  3. innotop version 1.4.3 released

I’m going to the upcoming MySQL Camp

I’ve bought plane tickets to the upcoming MySQL Camp in November. This is looking like a very fun time, with lots of community members, MySQL employees, and Google developers attending. It’s an “un-conference,” which means there is no set schedule, and it’s up to us to make out of the event whatever we wish it to be. If you’ve been reading my articles or using my tools, is there anything you’d like me to present on? I’d be happy to do it.

I don’t have a very good feel for what people use innotop for, for example; I see it’s been downloaded a fair amount, but I don’t know who’s using it or what for. And I don’t have a huge amount of feedback on what features are useful, useless, confusing, and so on. I could put a demo together if you want.

Any other thoughts? Write them into the comments! And as the topic for #mysql says, go or be destroyed! I’m really looking forward to meeting many of you for the first time. I hope to see you there.

Technorati Tags:No Tags

You might also like:

  1. New support options for innotop
  2. Version 0.1.106 of innotop MySQL/InnoDB monitor released
  3. MySQL Sandbox is the best thing since sliced bread

Come work with me!

My current employer needs great coders. If you’re the type of person who reads my articles regularly, I want you on the team! Come work with me! I’ve put up a page describing what we’re looking for. I’ll keep it current as our needs change.

Technorati Tags:No Tags

No related posts.

Announcement: Xaprb scripts are re-licensed

I have re-licensed some of my scripts under the LGPL, which means you can use them as part of other non-GPL software.

The scripts in question are:

Why the change?

I’ve always released my work under the GPL, but now that I’m writing and making available smaller scripts that might be used as part of a larger software system, the GPL isn’t as appropriate, because of the licensing requirements it places on the rest of the systems with which the scripts may be used.

I’m not making the decision casually. I’m a firm believer in free software, as in software freedom. Not only should software be open and un-encumbered by restrictions, but this freedom should be guaranteed even to the extent of prohibiting someone from making a restricted non-free work based on it. Software is encoded knowledge that belongs to humanity as a whole, just as certainly as mathematical formulae. That’s why I oppose non-free software and software patents.

However, for certain small scripts I’ve written, this rigid approach doesn’t make sense. I’m not releasing these scripts as “software.” The scripts mainly serve as working examples of principles and methods I’m trying to illustrate. From that point of view, the knowledge encoded in the scripts is already free — it’s in the articles I write to introduce the scripts, techniques and algorithms. Plus, I’m not breaking any new ground with the articles, either. Nothing I say here is revolutionary.

I read Richard Stallman’s writing carefully. Though he has a reputation for being a hard-liner, I value his opinions and judgement highly. When I’ve had contact with him, he’s come across just as he does in his essays: as a man of principles, which he will not yield. I respect that. One of his essays is about not using the LGPL. For the reasons stated above, I don’t think the points raised in that essay are applicable to the scripts I’ve released on this website. I believe these scripts are best released under a more permissive license.

The future

This is also a forward-looking change. I’m not trying to be grandiose about these little scripts I’ve written. They’re small snippets and they won’t change the world. But I’ve been working on some other things that are more significant, and I want everything I release to be licensed consistently with my beliefs. When I release these other projects, I’ll be careful to license them in accordance with what they are, what they do, and how others might find them useful.

I hope you, or the projects you’re working on, will find my work useful. Please feel free to contact me if you have any questions, comments, or improvements.

Technorati Tags:No Tags

You might also like:

  1. How to read the clipboard from JavaScript
  2. MySQL Community Member of the Year
  3. The truth about MySQL Community and Enterprise
  4. Why I write Free Software

Xaprb is featured on 9rules

The 9rules network, a trusted filter that chooses the best content on the web, has named Xaprb as a featured blog. This means a lot to me. 9rules is a great place to go and find quality content on an Internet that’s drowning in garbage, so being featured there is no small matter.

This is a good time for to make a plug for 9rules, too. One great way to stay up-to-date on the best of the web is browse the communities and find one that has interesting content, then subscribe to the aggregated feed.

If you’re not yet subscribed to Xaprb’s content via feeds or email, give that a try too :-)

Finally, thanks for the very kind words, Kyle!

Technorati Tags:No Tags

You might also like:

  1. Xaprb joins 9rules
  2. Simple and complex types in XML Schema

Xaprb joins 9rules

Xaprb is now part of the 9rules network. It’s an honor and a pleasure. The best part is what Mr. Scrivens said about me:

…the type of guy I would set next to in Calc class and watch him hacking the hell out of his TI calculator…

My friends got quite a kick out of that. So did I, actually. Even being accepted to the network is a nice compliment, but this made me grin a big grin.

And for the record, I’ve always been a fan of the HP48GX, for two reasons: a) nobody uses TI in real life, only in the classroom (but if you’re an engineer, surveyor, etc you will use the HP) and b) Reverse Polish Notation is so much fun. Maybe it’s only my brain that thinks in stack operations, but seriously, 1 enter 1 plus is so much more logical than 1 plus 1.

Onward and upward!

Technorati Tags:No Tags

You might also like:

  1. Xaprb is featured on 9rules
  2. Windows XP’s built-in unzipping functionality is not trustworthy
  3. Why you need to read this blog

Why you need to read this blog

You need to read this blog because it can help you become a better software engineer.

It’s your chance to learn by watching a professional software engineer work. Subscribe and read about the challenges I encounter every day in my work, and how I find creative solutions.

This is a conversation between equals. You’re a software engineer, database administrator, web designer, or JavaScript guru. You can peek over my shoulder, or you can pair program with me at your convenience, on your schedule. You watch how I do things. I read and reply to your comments.

I’m a curious guy. I am constantly pushing myself to learn new things, ask why things are the way they are and how can they be improved, and broaden my perspectives. Even if you just read and don’t comment, it’s worth it to me to publish this blog. It’s one of the ways I continue to improve my own skills.

Real work, real challenges, real solutions

I earn my living as a professional software engineer, doing real work: e-commerce, catalog sales, Internet marketing and advertising, web design and development, and so on. I’m not in it for the glory. I’m not presenting at Web 2.0 conferences. I’m not a professor, an academic, not even an expert. But the challenges I overcome are real, and they’re relevant to you, because you’re doing real work too.

Your time is scarce. When you find my articles by searching for a solution to a problem, you need to read the solution and apply it. When you have a spare minute over lunch break, you need to read the article, understand the point, and still have time left to rinse out your coffee cup. I write clear, structured articles that explain solutions quickly, and demonstrate techniques and practices in a way that anyone can get and — importantly — remember.

My goals for this blog

This blog is original, quality content. I try not to duplicate other people’s content or answer questions answered elsewhere. Sometimes it may look like I do, but I consider every topic carefully, and I don’t write unless there’s a reason. On average, I revise each article for many weeks before posting, and I currently have 47 drafts in various stages of completion — and I delete more drafts than I publish. That’s how much time and thought I put into my writing.

This blog is regular. I currently have 15 articles finished, and I publish several times a week. I plan ahead for vacations and busy times.

This blog is focused. You won’t read about my vacations, my wedding plans, or which football team I’m rooting for. It’s about software engineering, not my personal life.

And finally, I listen and respond. If you have challenges of your own, I’ll try to help you solve them too.

Subscribe!

You’ve read this far, now take the next step. Subscribe and keep up with new articles! You’ll get great technical writing, delivered conveniently via email or feeds.

Technorati Tags:No Tags

You might also like:

  1. Permit Cookies: a Firefox extension that makes cookie whitelisting easy

Copyright statement, privacy policy and terms of use

Copyright Statement

All material contained at xaprb.com and its subdomains is copyright © the site owner. Comments submitted, if accepted for publication, become the property of the site owner and are subject to the same license.

Terms of Use

By accessing this website, you are agreeing to these Terms of Use. You access this site entirely at your own risk. The material provided here is made available on an as-is basis. The site owner explicitly disclaims any warranty, express or implied, about the information provided on this site or any site which links to this site. Under no circumstances shall the site owner be liable in any manner for any harm arising from accessing or using in any manner any material on this site or sites which link to this site. The site owner may at any time revise these Terms of Use by updating this posting. By using this site, you agree to be bound by the most current text of this posting.

Privacy Policy

The site owner does not make any personally identifiable information available to any other entity, except as required by law.

Technorati Tags:No Tags

You might also like:

  1. L. L. Bean’s privacy policy
  2. How to guard your privacy with blacklists and whitelists
  3. Permit Cookies: a Firefox extension that makes cookie whitelisting easy