Over the Hump

Tomorrow, I’ll hit a milestone I’m pretty proud of: 30 days without a cigarette.

I’ve smoked for a long time now. Sure, I’m managed to quit here and there. But addiction is a powerful thing, and I’ve always been lured back in.

Any smoker who tells you they don’t want to quit is lying to you. I don’t know a single person who smokes and doesn’t want to stop. And it certainly isn’t the kind of addiction they’d wish on someone they love.

I’ve tried every traditional method of quitting smoking imaginable. Patches, gum, lozenges, inhalers, cold turkey, and prescription medication. You name it, I’ve tried it.

Each had varying levels of success, but nothing ever really stuck. Until I tried one last thing.

Vaping.

(Insert obligatory VAPE NAYSH Y’ALL joke here.)

Yeah, yeah, I know. It tends to look a bit ridiculous. And long-term studies on its effects are nonexistent. But the research I’ve done — not to mention the difference in my lung capacity — has convinced me it’s better than smoking cigarettes, at least.

When I first wandered into a local shop, more than a year ago, the guy behind the counter was amazing. He walked me through everything I needed to know to get started.

I walked out with a basic battery unit (a “mod”, in vaping parlance), tank, and some liquid. Nothing fancy.

Now, anyone who has tried vaping will tell you; it doesn’t give you the same sensation as smoking a cigarette. But it was just close enough to make me think that maybe — just maybe — it would be enough to help me quit smoking for good.

As time went on, and my interest in vaping grew, I decided I wanted a bit of an upgrade. More flavor, bigger tank capacity, that sort of thing.

That’s when things got a bit confusing.

There’s almost near-universal agreement on what sort of mods and tanks are best for beginners. But, beyond that, I encountered a mess of competing opinions, products, and philosophies.

I had to learn a lot of new terms. Did I want a sub-ohm tank? Was I looking for mouth-to-lung or direct-to-lung? RDA? RDTA? RBA? External batteries, or charging via USB? What kind of batteries? 18650? What’s that?

I was a bit out of my depth, needless to say.

After talking to the staff at the shop, researching online, and watching reviews on YouTube, I settled on a new mod and tank. I was ecstatic, at first. I was blown away by the improvement in flavor — clearly, I’d been missing out.

Two weeks in, I learned the phrase “vapor lock.” Essentially, it would stop working properly. Oh, and it would leak every once in a while.

I went back to the shop, but the best answer they had was, “Oh, weird. That never happens to us.” Not exactly helpful.

I spent a few more weeks feeling frustrated before buying a different tank. Maybe the first was a lemon, I thought.

Nope. The next one was just as problematic, in its own way.

I’ll spare you all the details of my long, annoying, and costly journey. Eventually, I found a setup that works flawlessly. But it was needlessly difficult to get there.

All of the help and guidance I’d had starting out? A distant memory.

It reminds me of the process a lot of developers go through when they’re first starting out. When you’re a beginner, it’s easy to find help. If you’re trying to get into iOS development, I can point you to 100+ tutorials and classes. Moving beyond the basics? That gets a lot harder.

Once you learn fundamentals, the really hard questions kick in. When should I write unit tests? Integration tests? What are UI tests? I’ve heard I should use the MVC pattern, but somebody else recommended VIPER. What about coordinators? What do I do when my app seems to just randomly crash? How do I store data on the device? Should I use Core Data or Realm?

You get the idea.

When you’re learning to program, there’s a definite learning curve. And it’s hard to get over. A lot of people hit this point, get frustrated, and quit.

I often hear from developers who want to start a blog, but don’t know what to write about. My suggestion? Be the person who helps other people get over that hump. Give them the tools, resources, and guidance to help them move from a junior to an intermediate developer.

Not only will you be filling a giant gap in programming education — and saving them a lot of time, frustration, and money — they’ll love you for it.