It’s been more than three months since I started at Shopify. And one day longer since I revived this blog.
What I want to write about today is the uniqueness of direct personal contact with people, places and things, compared to exposure at a distance.
I’d heard about React Native, Shopify, and Tokyo, but my relationships to those things each did a sort of phase shift when I actually had direct exposure to them. I stopped being able to come up with pre-emptive opinions about them based on received wisdom and personal bias (or an urge to have a unique “take”). I’d heard about the three people who would become the members of my team, but I felt like I had no sense of them until I’d actually spent time with them.
I realize this is just an after-school-special insight about why prejudice is BAD, but I guess it’s one of those sort of recursive lessons you can keep learning and re-learning at different granularities. And that it really isn’t an after-school special idea. It’s not just a matter of what’s right, it’s also that it’s what’s true. At least for me. It’s true that I can’t learn about the nature of things second hand. Not very well anyway.
It reminds me of a blog post that I might not even have read but at least heard about (so, accoring to somebody on the Internet, probably). The notion was, you can never really tell how good a developer is until you’ve worked with them personally, which means there’s no way to globally rank the quality of software developers. All you can do is assess the ones around you.
So in my life right now, it’s like one big process of withholding judgement. Or actually, meting out judgement in itsy-bitsy portions, reserving the bulk of it for tomorrow, as I absorb today’s little bit of first-person contact.
What do I think about Shopify? It’s like a bag of little, half-valid opinions, all disconnected from each other. Eventually, I’ll have that moment like when you’ve explored a new city enough and your mental map suddenly snaps together, and I’ll have an overall sense of how Shopify is. (And it will be wrong in parts, but still useful)
Same for Ruby, Rails, TypeScript, and GraphQL. Everything except Redux, which I already, unreasonably, hate.
What’s my point? I don’t know. I guess I’m recognizing why it’s weird and difficult to start something new. Because there’s just a lot you know you don’t know. Shopify’s as big a company as I’ve ever worked at, and I’ve never been more aware of how bad the ratio has been between stuff I’m aware of and stuff I’ve actually been in contact with. I’ve met my boss, my boss’s boss and my boss’s boss’s boss, but that still leaves the head of my Product Line, JML, and Tobi who I’ve had no contact with. I’ve met dozens of developers, but there’s over a thousand of us. And over a six thousand “Shopifolk”. And as for the code, I’ve got my one and half PRs merged, but haha, that’s a rounding error. There’s so much code it’s actually impossible to know it all. Even if you ever got there, it would change again faster than you could follow. It’s all like that. Too big to know all of, and too dynamic to pin down.
So what’s left is: get to know the stuff around me, trying to draw bigger and bigger circles. And beyond that, embrace ambiguity and thrive on change.