In The Shit
When I was a kid my dad was always doing home improvements. Redecorating, moving a wall, replacing the doors, installing radiators, re-laying a driveway.
I remember this phrase he used. He'd have the water off, re-plumb a bunch of radiators, turn the water back on and there were leaks everywhere.. and then my mom would nag him that dinner was ready - and then he'd shout "I'M IN THE SHIT HERE!".
To me, what it means is you've tried something, it's backfired and you're in over your head, you're drowning, and you've got to fight your way back to the surface.
I remember this phrase he used. He'd have the water off, re-plumb a bunch of radiators, turn the water back on and there were leaks everywhere.. and then my mom would nag him that dinner was ready - and then he'd shout "I'M IN THE SHIT HERE!".
To me, what it means is you've tried something, it's backfired and you're in over your head, you're drowning, and you've got to fight your way back to the surface.
Garry's Mod
I remember multiple times I've got myself in the shit. When I first made Garry's Mod I knew c++, but not well enough. I got myself into a position where it was crashing and I couldn't figure out why. I didn't use source control - so I couldn't just roll back to a version that wasn't crashing and figure out the delta.
So I deleted the whole thing, downloaded a fresh copy of the SDK and made it again from scratch. I did this at least twice in the very early versions before I started using source control.
I ended up adding Lua support as a shield from these crashes. I didn't understand the C++ code enough to stop it from crashing, but I could be really careful in my Lua implementation to protect against it.
So I deleted the whole thing, downloaded a fresh copy of the SDK and made it again from scratch. I did this at least twice in the very early versions before I started using source control.
I ended up adding Lua support as a shield from these crashes. I didn't understand the C++ code enough to stop it from crashing, but I could be really careful in my Lua implementation to protect against it.
Rust
When we released Rust and it got mega popular, we were immediately launched into the shit. The code was all janky and impossible to iterate on. It was basically a proof of concept that we ended up releasing. I didn't even know C# at that point, so I couldn't get involved beyond simple UI stuff. The community was HUGE and was desperate for bug fixes and new features.
So we were right in the shit.
We debated what to do. Is the code fucked or are we just idiots that don't understand it. Eventually we decided that the code was fucked.
I started rewriting the engine from scratch. I had to learn c# on the job. The community fucking hated the idea. They wanted legacy, but we knew that we had to suffer for a bit right now so we could flourish more later on.
I didn't fully know what I was doing, but it was coherent and modular. Eventually it got feasible enough that other people could work on it. And then eventually it got feasible to enough to play.
People still ask for legacy, but there's no doubt in my mind that we made the right decision back then.
So we were right in the shit.
We debated what to do. Is the code fucked or are we just idiots that don't understand it. Eventually we decided that the code was fucked.
I started rewriting the engine from scratch. I had to learn c# on the job. The community fucking hated the idea. They wanted legacy, but we knew that we had to suffer for a bit right now so we could flourish more later on.
I didn't fully know what I was doing, but it was coherent and modular. Eventually it got feasible enough that other people could work on it. And then eventually it got feasible to enough to play.
People still ask for legacy, but there's no doubt in my mind that we made the right decision back then.
The Message
To grow, to improve and to achieve anything - you have to enjoy getting yourself out of the shit. You can't avoid getting in the shit. You have to see a pile of shit and jump in it.
This is a really nice message. I often feel like I'm in these sort of situations, but no matter the circumstance I'll always try to find a way out of it.
I'm new to this world of coding, but since now, "getting in the shit" seems the most efficient and funniest way to get better, discover and improve errors and being creative...
Add a Comment