Following up on my career pivot story - writing that first article helped me remember so many details I'd forgotten. Since it seemed to connect with folks, I figured I'd share what happened next - maybe it'll help someone avoid the same mistakes I made, or at least make them smile.
The One or Two Things I Got Right
While learning Python, I had one clear goal: build desktop applications. Why? Well, the 90s were only 2 decades ago - practically yesterday, right?
This naturally led me to combine tutorials with building actual projects - and I can personally vouch for how valuable this approach is. Every morning, I'd sit at my computer like I was going to work - 8 AM to 6 PM, treating Python learning as my full-time job while simultaneously developing my first real application. I didn't have a choice - baby on the way, unemployment benefits that were less than minimum wage.
No roadmap, no guidance from the community, just me constantly Googling everything which inevitably led to discovering Stack Overflow. Udemy course for Python basics, countless YouTube tutorials for Tkinter, and figuring out SQL through trial and error. I mean, everything. I remember seeing a joke somewhere that went like: "Doctors tell people not to mistake their Google searches for medical degrees. Developers tell people not to mistake their Google searches for our Google searches."
As for Stack Overflow - well, let's just say my few attempts at asking questions didn't go well. Even now, while writing this, I still feel that slight intimidation factor that Stack Overflow somehow instills in developers. You know the feeling.
Looking back, those were incredibly valuable experiences. Having to truly understand why something worked (or didn't) instead of copy-pasting solutions built a different kind of problem-solving muscle.
This is where the real education happened - not in the courses, but in the problems I had to solve myself.
When One Item Became Too Many
I was so close to finishing my first real application - just one last feature remained. After a couple of months (and thankfully after my baby was born!), I remember spending days trying to figure out how to increment item quantities in my POS system instead of creating duplicate rows. When I finally cracked it - boom!
Months of intense learning had finally paid off. I had built something real, something that worked. For the first time since leaving my factory job, I felt like I could actually call myself a developer. My stock management application with POS functionality was complete.
Was it?
That's when reality hit me with the question that haunts every beginner: "How do I actually give this to someone?"
I had a working application on my machine - PyCharm's little green play button was my best friend. But how do you turn Python scripts into something a normal person can run?
This took days of research. I tried PyInstaller and cx_Freeze, wrestling with configuration files, missing dependencies, and cryptic error messages. One tool would work but the database wouldn't connect properly. Another would package everything perfectly but my logo wouldn't show up.
Looking back, I'm pretty sure I was the one with quirks and limitations.
Eventually, after countless attempts, I managed to create executable files. Finally! I had real .exe files that could run on other computers. Victory!
Or so I thought...
But It Works on My Machine
Riding high on my success, I quickly adapted my stock management system into a bookstore inventory application. Why not? The logic was similar - items, quantities, sales tracking. I was expanding my target market - retail stores, bookshops, maybe even small supermarkets. My customer base was growing!
Around this time, a friend had just taken over a small bookstore and was struggling with inventory management. Perfect timing! When I offered my brand new bookstore application, he was interested. We agreed on a reasonable price - though I ended up getting paid mostly in books, which felt very literary and entrepreneurial at the time.
But when I went to install it on his computer, I hit the classic developer nightmare: "But it works on my machine!"
The .exe file I was so proud of simply wouldn't run on his system. After hours of troubleshooting, I ended up literally carrying his computer to my house.
Picture this: two computers side by side on my desk. Install on mine - works perfectly. Install on his - some cryptic error message I couldn't make sense of.
The plot twist? Python needed to be installed on his machine too. My "standalone" executable wasn't so standalone after all. (I would eventually learn how to properly embed Python into the executable, but that's a lesson for another day!)
The Midnight Marketing Strategy
At this point, I had working applications but no customers. My friend (a graphic designer) had created beautiful brochures showcasing these applications.
My distribution approach? Sliding them under shop doors after closing time.
Yes, you read that right. I was too embarrassed to approach business owners in person, so I became a midnight brochure ninja, hoping someone would find my flyer and think "This is exactly what my business needs!"
I'd drive around industrial areas at night, slipping colorful brochures under doors, convinced that business owners would arrive the next morning and immediately call me.
Spoiler alert: It didn't work.
The Django Advice That Could Have Changed Everything
During this period, I had coffee with someone my designer friend insisted I meet. I immediately pegged this guy as just another IT support person - the classic mistake of underestimating someone based on assumptions.
When he heard about my Python applications, he gave me the most valuable advice I completely ignored: "You should look into Django."
My response? "I'll look into it!" And I did try, honestly. But getting to Django meant diving deeper into Python fundamentals first. I kept going down rabbit holes, re-learning Python basics from different angles multiple times.
Unfortunately, I got so caught up in these foundational detours that I never actually made it to Django itself.
Instead, I doubled down on desktop applications. I even partnered with some sales-experienced folks from my old factory days who saw potential in what I was building. We decided to develop a complete ERP system together - yes, still with Python and Tkinter. This meant another year of desktop development while continuing my midnight brochure campaigns on the side.
Little did I know that after spending that whole additional year on the ERP project, this same coffee meeting guy would eventually become my ticket into the industry.
Looking Back, What Actually Mattered
I learned the hard way that building projects while learning is invaluable - even though my apps were far from perfect, the problem-solving experience was real. Deployment turned out to be harder than development, and marketing mattered more than code quality. My spaghetti code could have made money if I'd known how to reach the right people.
Most importantly, I should have listened to that senior developer's Django advice. It could have saved me months of desktop app delusion.
But all these "mistakes" were actually preparing me for what came next. Sometimes you have to build the wrong thing in the wrong way to really understand what the right approach looks like.
Coming up: how I finally discovered web development, the brutal learning curve that nearly broke me, and how that coffee meeting guy ended up being my ticket into the industry.
If you've made similar mistakes with your early projects (or even weirder marketing strategies), I'd love to hear about them! Drop a comment - I need to know I wasn't the only midnight ninja out there! 😄
Top comments (1)
👍