How did I get started with code? Where did I begin? What motivated me to start learning how to code? In this article and the video above, I share with you my 10 plus years journey to becoming a full stack web developer, starting from the very beginning, to where I am today.
Was I a Prodigy Coder as a Teenager?
I wasn’t always a Coder. As a teenager, I didn’t grow up learning how to code in the basement of my house. That wasn’t me. I lived a completely different lifestyle back then. When I was a teenager, I was in a military boarding school (NYMA – New York Military Academy) that was heavily focused on living a disciplined life-style. Learning about computers, code and technology, wasn’t the focus.
10 plus years ago I was doing something different from what I’m doing now.
When I was 22 years old, I was elected to the New York City Council, becoming the youngest ever elected official of a major city in New York State. I served for 12+ years as a Councilmember before term limits forced me to consider my next move in life.
When I was in my last term as a Councilmember and Majority Leader of the New York City Council, I had to start thinking about what was next. What was the next chapter in my life? What would I do going forward? Would I continue in politics? Would I continue in government? Or would I go in a different direction?
Family First
My family was growing and I had to make a decision. Did I want to stay local? Or was I willing to travel to different places like going to Albany or going to Washington? Why would I need to travel? Being an elected official for so long opened up opportunities for me to transition into positions in either state or federal government. I was offered high ranking positions, with a great salary, benefits and would be in a position to add to my resume. It was enticing.
The catch to accepting a position like the one I was offered was I would be required to do a significant amount of traveling. I would be on the road more than at home. That meant I would not be around as a father.
What did I decide?
I ultimately made a decision that I wanted to stay local. I started exploring different opportunities. First, I opened a Liberty Tax Service which did well. I kept the office open for a few years until deciding it wasn’t for me. So I sold the business, cashing out with a nice profit.
Then I got into real estate and became a real estate agent with Remax, and then Keller Williams. I started helping people buy and sell homes. The commission checks were cool. Real Estate is a great business and the commission checks can be large. In my area, the average home sells for about $500,000. A typical commission is 2.5% to 5% which translates to $12,500 to $25,000 commission checks on a $500,000 home sold. It would be less if the home sale was lower, or it could be more if the home was sold for more.
Lead Generation & SEO
One thing I learned from the broker I was working with was, if you wanted to get buyer and seller leads, you needed to be found online. He was skilled at search engine optimization aka SEO. We were generating a lot of leads and the business was good. But those leads were for the office and each agent got their share.
How Could I Generate Leads for Myself?
Then I started thinking about how could I generate my own leads? That’s what made me decide to start exploring the opportunity of owning my website, a local real estate website. Mind you, this was ten-plus years ago. Websites weren’t as easy to build as they are today.
Web Design Quotes – The Price of a Fully Functional Real Estate Website
I started talking to a bunch of different web design agencies and freelance full stack developers. The quotes started coming in. On the low end I was getting quoted somewhere between three to five thousand dollars, but on the high end, for a fully functional real estate website, it was twenty thousand dollars plus. Some web design agencies were charging significantly more. Let me tell you, I was not ready to throw down twenty thousand dollars on a website.
Were there quotes for a few hundred dollars? Yes, but I knew that if I wanted a quality website, it would be an investment, and one I should take seriously.
DIY Web Design
I figured maybe this is something I could learn on my own. Maybe I could learn how to create a website. I didn’t think it would be that difficult. That was naive of me because like anything, it must be respected, the process of learning to code and creating websites must be respected.
Even today with all the different types of tools that you could use to create a website that simplifies the process, with virtually no code, creating a website isn’t as easy as it sounds. But back then, it was a lot different. I decided to take on the challenge, I said to myself, it’s time to start learning how to code.
Where would I begin my Coding Journey?
The saying “Rome Wasn’t Built in a Day” lingered in my mind, so I knew it wouldn’t be a weekend endeavor.
Learning HTML
I purchased a couple of books. First I started learning how to code with HTML. I think the editor I was using back then was Dreamweaver. One thing I noticed is when I was starting to learn HTML, it didn’t take me that long to get the basics. Then I realized it didn’t look like much. I was looking at different real estate websites for inspiration, seeing what they provided, and what type of functionality they had. I couldn’t duplicate that with HTML alone. The styling wasn’t where it needed to be.
Learning CSS
From there I progressed to the next language. I started to learn CSS aka cascading style sheets. CSS is the language that helps you add some style to your HTML to make it look visually appealing. I started applying CSS to my HTML and started to create something that looked better. I was inspired by the different real estate websites and tried to do a lot of research on what other local agencies were doing.
Then I realized that even with the new design and the way the website looked, it still didn’t have the functionality I needed. I knew I needed to learn more. Mind you, I’m still working, I have my family that I enjoy spending time with, and I’m trying to learn to code.
Today you might take for granted that there are so many different resources to learn how to code online. Tons of tutorials, so many different platforms, I mean the hardest part now, is choosing which platform or which tutorial to take. But back then you were limited on your options.
Then I started to try and figure out the path to creating a better website. I had something very basic. It was simple, and now I needed it to be more dynamic.
So I asked myself the question, how do I add dynamic features to a static website? Because that’s what an HTML-based website is, a static site. Then I started diving deeper into the different languages that are part of the entire stack of a website.
Learning JavaScript & PHP
I started to learn a little bit about JavaScript which is a client-side scripting language, but can also be used on the server with NodeJS. Then I learned PHP which is a server-side scripting language. PHP grabbed me at the time because it was, and still is the language used on most websites. There are lots of tutorials online about it, so I started working hard at learning PHP.
I spent a lot of time, a lot of sleepless nights, studying, researching, practicing, and testing on my local development server. Once I had a better grasp of PHP, I started to feel empowered, I began to feel like I was getting somewhere.
Learning IDX – Internet Data Exchange
Then I needed to find a way, again this was a real estate website I was working on, I needed to find a way to get all the local real estate listings in my area, to show up on my website.
That’s when I discovered IDX aka Internet Data Exchange. IDX is a paid service for realtors that enables you to feature all the real estate listings in your local market, on your website. Mind blown! I’m like, okay, this is going to be awesome. I integrated the service with my site and it started displaying real estate listings from my local market. At this time my website was straight-up vanilla HTML, CSS, JavaScript, PHP, and I’m integrating the IDX component into it.
Learning MySQL
Then I’m realizing I needed more. It seemed like as far as I went, there was still further to go. I needed a database to save user data and other dynamic content for my website. I started focusing on MySQL which is a Relational Database Management System.
A database driven website adds a powerful component to a site. It enables you to create, read, update and delete information in a dynamic manner that would be extremely difficult by using s standard file system with a template engine.
I was slowly gaining the skills required for full stack development.
Learning While Busy
Let’s keep track of all this, I was in real estate, I have my family, I was in the final term of my position in elected office, and I was learning how to code, cobbling together a website. I don’t think I got a lot of sleep for a long time. I needed to get so many things done. Then I realized, wait, my website wasn’t showing up on page one of Google.
Learning SEO – Search Engine Optimization
Then I started researching SEO aka Search Engine Optimization. Back in the day, SEO was the best way to get found online. Nowadays SEO is still very important, you still must focus on your Search Engine Optimization game, but we have Social Media Marketing nowadays that can also be utilized to help us market our content. We have tons of different ways to drive traffic to a website.
I spent a few months fine-tuning my SEO strategy. Creating more content for my website, making sure that I checked-off the most important things that you must focus on for SEO.
Learning Google Analytics
Overtime I started to get more leads, my website was being viewed more often. I tracked my website traffic with Google Analytics which is a powerful tool for analyzing your website. It’s free and can track the number of visitors you have, where they come from, how long they stay on your site, what pages they like best and much more!Did you know that Google Analytics has great real-time reporting? You can track the performance of your webpages in terms of time on the page, bounce rate, pages per visit, and more.
Pivoting into Web Design & Development
Then it hit me, I was hooked on code! I inadvertently became a web developer/content marketer. Becoming a web developer wasn’t the plan; the plan was to get a website. I didn’t want to shell out the $20,000 that was needed for the type of website I wanted. I did it myself.
Reality check, the design of the site, was not pretty, it was not a good-looking site. But I started to get leads. Then other realtors in the area started realizing that my website was on page one, not an agency website, not a big-name brokerage website, but a small-time, local agents’ website was ranking on page one for the most important keywords in real estate.
Realtors in my area started asking me, “how did I accomplish ranking so high in Google”. It was then that a lightbulb lit up and I said to myself, wait a minute, there’s a need here. I figured I’m spending so much time coding, and less and less time on real estate.
Becoming a Freelance Web Designer & Developer
That’s when I realized I needed to shift gears. That’s when PixemWeb was born. At that point, I was still using vanilla HTML, CSS, JavaScript, PHP, and MySQL which are the languages used in full stack development. I created my website without using any libraries, frameworks, or CMS.
I started taking on some clients and figuring out how best to run my latest venture. One thing I was often asked about was if I used WordPress. At first, I was like, no, I don’t use WordPress (almost like it was a badge of honor). I just code the website the way I see fit based on what’s needed, and then I just hand over the site.
After some time, I realized that I spent the time to become a full stack developer, most people aren’t interested in doing that. Most people want to conduct their business. Handing over a website that is not based on a Content Management System to someone who’s not a developer or coder, or familiar with managing a complex website, that user experience for them, was not the best way to handle it.
Learning WordPress
That’s when I decided to start getting into WordPress. I started to study it, research it, figure out how it worked in terms of themes and plugins. I started to look at the core of WordPress itself.
Then I said to myself, all right, I’m a full stack, freelance developer, WordPress makes it easy for me to keep my prices down, and hand over a website to a client. They would then be able to self-manage it if they wanted to, or they could retain my services for ongoing website management. WordPress made it a win-win scenario for my clients and myself. Everything seemed to be working the way I wanted it to work.
Never Stop Learning your Craft!
As time passed, I started thinking about something different, I knew HTML, CSS, JavaScript, I picked up jQuery along the way, PHP & MySQL. I learned about IDX, which was important for real estate websites, I started diving into WordPress, but I was still working with shared hosting. I realized that the performance of a website matters.
From Shared Hosting to Virtual Private Server aka VPS
That’s when I decided to start getting into VPS’ which is a Virtual Private Server. That opened another rabbit hole for me because then I realized that there’s got to be ways to fine-tune your server, fine-tune the performance, optimize it. That’s when I started learning Linux.
MacBook Pro & Windows Powered Laptops & Linux
All through this time I’ve been working with a MacBook Pro, and with Windows, but now I needed to learn an entirely new operating system. Then I spent time focusing on learning Linux.
At first, I must admit, Linux wasn’t easy for me to pick up. But as with everything in life, the more you put into it, the more time you spend learning how something operates, the better you’re going to get.
Migrating to a VPS
I eventually migrated my website, and some of my clients’ websites over to a VPS. I started to figure out how to play with the configuration files in Linux, and I started figuring out how to work with Apache for the web server itself.
I discovered the power of the command line, the terminal, the power of being able to SSH into your server, using Rsync to securely move things to and from your server to your local computer, setting up CRON jobs. I learned the basics of bash scripting which is important to streamline your workflow.
Let me tell you, my brain was on information overload. At that point, I was still trying to keep up with learning PHP and other coding languages. The more you learn, the quicker you realize how little you know.
Getting Started with YouTube
I decided to start up my YouTube channel. I figured one of the best ways to get found online besides Search Engine Optimization, is YouTube. I started creating some very basic videos which was something completely new to me.
Some of my videos are an hour-long teaching how to code WordPress themes. One of my videos is over two hours long and is very detailed on how to code a WordPress Theme. Editing that video took me a long time. Then I asked myself, “how can I automate the process, there’s got to be a way to make it easier, I mean that’s the purpose of code, to make life easier”.
Learning Python
With Python, you could automate a lot of the things you need to get done. Now when I create long videos, I use a Python program that edits the video and takes care of about roughly 80 to 90 percent of the video editing process. The benefit of that is, it frees me up to do something different like working on thumbnails, or get back to clients, do some updating of my server, and my code. It makes life so much easier.
The Journey of Learning Never Ends
Over the past 10 years, I went from being an elected official, pivoting into a career in real estate, and along the way, finding what I wanted to do, which was code.
I learned HTML, CSS, JavaScript, jQuery, Node, Gulp, PHP, MySQL, Python, Linux Server Administration, Apache, WordPress, SEO, YouTube, and more. The most important thing that I learned was that you’ll never stop learning. There’s always going to be something new for you to learn, always something new for me to learn.
The Path to Mastering Code
They say it takes about 10 years or 10,000 hours to master something. I don’t know if I’ll ever master code, but I know for sure, I’ll never stop learning, and you shouldn’t either. When you’re just getting started, when you’re just beginning, think long term, and before you know it, you’re going to achieve your goals. Maybe that’s becoming a full stack web developer, front end developer or back end developer.
Now I’m a freelancer, I control my time. I get to spend time with my family, I get to work on projects that I enjoy working on, and I’ve become a researcher of code.
That’s my 10-year journey to becoming a full stack web developer. What’s your journey like? What are your goals? Hopefully, you enjoyed this article and video, if you did, share it with others, and I’ll see you in the next one, happy coding.