Why I Left IBM to Work on CockroachDB
cockroachlabs.com
cockroachlabs.com
These two wrote their own music player in VB during high school, called it FireAMP. They used to do things that I couldn't understand. Right now, neither of them is even writing a blog. They're in their silos and I'm praying someone gets them out and helps them share their knowledge with the world.
They're the best programmers I know, and I've been at several conferences and spoken at a few. I wish they'd not sunk into their corporate holes so hard.
We both found something we like more than chasing other peoples dreams, your friends are probably the same.
Anti-competitive would be if they agreed NOT to poach talent in order to keep salaries low.
DB2 BLU: https://researcher.watson.ibm.com/researcher/files/us-ipandi...
Wildfire "v0", the "failed" HTAP project: https://researcher.watson.ibm.com/researcher/files/us-ytian/...
Wildfire "v1", the shared-nothing architecture over cloud storage (EventStore 1.0?): http://cidrdb.org/cidr2017/papers/p123-barber-cidr17.pdf
DB2 EventStore (EventStore 2.0?): http://www.vldb.org/pvldb/vol13/p3299-garcia-arellano.pdf
Stick to the fundamental bro.
It looks like some sort of a "textual CV", where the author tries to push the agenda that he is not only a technical expert (without any real examples, just buzzwords), but also a managerial expert (here even less examples, just sucking own dick).
We can learn that he worked "really hard" on IBM products, so hard that he fell asleep during work (dear recruiters I can work hard at a startup, pleas hire me!!!), yet those products seem to be so irrelevant, that once when he writes about cloud, he does not even have the courtesy to list IBM as a cloud provider.
Also the integrity of this piece: guy writes about others changing their jobs to maximize the salary, but of course at the time when the author switched job, he didnt do it for better money, he did it for the great product and great team :)
IBM is a sinking ship, so for me it looks just like a story of a guy who changed job to earn more money, which for some reason allowed him to put his CV on their own website, so he can be headhunted by someone else (who will pay him even more money?).
However, in case I can share a bit that I may know some small amount about is that the area that the author worked on is quite well-known to IBMs db2 customers. The ability for db2 to self-tune has put it ahead of sql server, oracle and others in some ways, for decades. While the author clearly got hired and found himself in a good niche at IBM and grew there, IBMs database teams have definitely hired and sustained people from various backgrounds because the work can be challenging and rewarding.
I'm saying this because one of my uncles maintained the lock manager in the mainframe db2 codebase for most of a couple of decades including being there at the time the author mentioned, working on sysplex and parallel sysplex, and he entered that gig without a particular interest in databases as he told it. But he really did take to assembly and production code maintenance
I don't know what you're getting at by this statement.
I'm asking how it comes to be that someone fresh out of uni is immediately made a Team Lead. It doesn't tally with my understanding of career ladders.
Also, I've clearly glossed over a bunch of details but I wasn't hired as a team lead. That being said when management saw that I was capable of driving the team (mostly) on my own, they progressively stepped back further and further until I was essentially running the team. This was over the course of a few years, which I've compressed in the writeup.
All that to say that career ladders aren't fixed, and if you find yourself in the right place at the right time, you can bypass a lot of the traditional ladder climbing.
Saying "Maybe his teams were all India based?" sounds dismissive or pejorative, as though you were saying that he must have been somewhere that was not doing premier work, or working as part of a cooperative team in a way that valued the work he and his team did.
However the essay clearly described how innovative his ongoing work and contributions were when they were being done, including linking to research papers. They were progressively pushing forward the state of the art in the database world, and did it in production in wide deployment. What happened was that the culture at IBM identified him as someone who could lead, and as I described, their database organizations at the time helped grow people into these roles.
I've thought about forking it and just running a script to rename it to "ButterflyDb" or something pleasant.
Nobody thinks "cockroach = doesn't die". We think "disease" because we evolved to have a strong rejection response to these creepy crawlies. Roaches cause disease. Does anybody want that with their infra?
They could sell this so hard if they named it "ice cream" or "cheesecake" or "coffee" or anything but slimy cock roach.
The problem with statements like this is that's exactly what I think. I hear that name and immediately think of a database that's very resilient.
If you want to win the argument about changing the name, don't start by claiming that people who think differently than you don't exist.
Likewise, I don't think my argument has anything to do with lost customers whatsoever.
I am merely criticizing the argumentative technique of claiming that one's position is so unassailable that people who disagree simply don't exist.
I have no attachment to the Cockroach name or product. The only horse I have in the race at all is that I hope the project changes the name just so I don't have to read the same debates every single time the database hits the HN front page.
I remember reading the first thread and being confused why so many people were missing the "obvious" meaning behind the name. Clearly it's not as obvious as I had initially thought, but it's the first thing that came to my mind.
I know that's not the answer you want to hear, and I apologize for that.
FWIW I will never proactively advocate for this DB or try it out because I don't want other coworkers to feel squicked. I'll do my job if I find myself on a team using it, of course, but in my many years working on software, I've found that you can't make the computers happy unless the people typing into the computers are happy. Limiting the pool of people who can be happy reading CockroachDB docs when they're paged at 2am for an outage seems not worth the chance that it might page us at 2am slightly less.
I'd be interested to know how many of the people who are upset about the name have heard and remember that theory.
I also used to live somewhere that we’d occasionally see a cockroach, and they’re disgusting. Any time I hear the word cockroach, immediately it reminds me of the times I was going to the bathroom and looked up to see a cockroach, jumping back in surprise. It’s a much stronger emotion attached to the word. Just immediate feeling of disgust.
I wouldn’t mind working on a project that uses cockroachDB if it really is the best tool for the job, but I do feel a little weird about it. And the name has kept me from really looking into it previously...
My previous (imho, thorough) takedown on whether criticizing Cockroach's name is "bikeshedding":
"cockroachDB? Oh is this a joke project...? Why would they leave IBM for a...oh, cockroach like can survive a nuclear explosion. Huh."
Software projects that use databases often have lots of people working on it, reporting to people who don’t work on it. While I personally believe it’s easy enough to bury “CockroachDB” from sight, it may not be so easy everywhere.
Lots of people, techies and not, care about aesthetics and appeal. It’s not rational (in any technological sense), but it is what it is.
I am saying a good technologist can look past aesthetics or appeal, which are superficial characteristics in my opinion, and judge a technology based on its technical merits and the problems it is capable of solving.
When I think about cockroaches the first thing that comes to mind is that they will surely outlive us. I don't want my data storage to be pretty, I want it to survive hardware failures and outlast pretty much everything.
Maybe it's just the changing of the generations, or proliferation of SaaS and AWS etc, but I haven't heard the phrase used in probably 10 or 15 years. That in itself is probably an indication of where they are at more than anything.
Edit: Safe choice for the purchasing manager. The poor sods who had to deal with it, on the other hand...
Whatever hardships life had in store for me, I'm grateful that none of these three came to pass.
I would propose renaming it to "CockBase" or, even better, "CockDB".
Don't @ me lest it is to figure out where to send the naming royalties chex.
That said, I have no problem with the name CockroachDB whatsoever.
But yet this a comment about CRDB's name finds it way to the top of the HN discussion once again.
What does not die is the need to complain about a product name instead of a constructive discussion about what it actually does.
"What is this Postgre thing? I can't pronounce it so it can't be any good."
"MySQL sounds like a toy. We need 'OurSQL'."
"Oracle is the right choice because I'm familiar with the name."
"Nobody ever got fired for buying IBM."
"Eww, bugs! Gross!"
Once you need to pitch it to your boss she might think your joking or not taking it seriously.
I would be reluctant to use this in any work projects
These having been issues for some people. Myself not included.