Why Learn to Code?
Thanks for visiting my "ancient" WordPress site. As strange as it may sound, this site sometimes reminds me of a classic automobile, like the '64 Porsche 911 below (although the new Tesla Model S is pretty sweet too). Like this old website, they run smoothly if adequately maintained (and yes, I'm also definitely a fan of German engineering).
In the mid to late 90s, I became intrigued by web development and design and began learning more about the web. A few years later WordPress was launched.
Oh, and guten Tag! A little about me – my name is Andrew, and I'm based in Austin. I've lived here with my amazing Canadian wife (a civil defense attorney) for some time now. I'm a devoted fan of German football ⚽️ (and the Bundesliga). I've worked in SaaS business development and leadership roles for most of my software career. I've also spent time and worked as a web developer/entrepreneur/student, (wannabe) digital nomad, and remote worker (I'm still working on becoming a full-time digital "nomad" 🙂). I've been working remotely since 2015. Let's face it, WFH (for most) is pretty freakin' awesome! What's not to like about working with (and learning) new technologies from anywhere! It's quickly becoming the norm (if it wasn't already).
This site (like me), is a perpetual work in progress as I continually focus on becoming more grateful each day for my life and the people in it.
The internet is a powerful tool for learning. It's still astounding to me to see the growing number of educational websites that are available to easily and conveniently learn new skills (your choice of technology). 🤔
I enjoy helping people, marine animals, rescue pups, and continuously learning. In mid-2019, I acquired a (Shopify) company on the curated list of "Staff picks" on Exchange Marketplace. I support (also as an investor) what Shopify represents as an environmentally conscious company (but that's a conscious capitalism story for another time).
So, Why Learn to Code?
There are many reasons (besides the fact that it is hopefully as fun yet challenging for you as it has been for me). Here are a few initial basic "starter" projects I put together to begin my initial portfolio.
Years ago, I wondered when would be the "best" time to deploy this site? Was it ready to be deployed? Well, yes and no. It was simply an initial starting point for me to improve upon. Admittedly, I'm still somewhat conscientious when creating and deploying projects because I can only see it as a reflection of my "quality of work." Proper and efficient design is an endless pursuit. As you can see, this old, quirky (outdated) website is not remotely an example of this, which is why that's the point. 🙂 You have to begin somewhere.
If you're just starting out, the main thing to remember is that it's essential to keep progressing and learning incrementally. You will improve over time. If you are determined to learn, keep persisting, and you will reach a point where you can look back and say, wow, I did that, and I didn't even have a clue about that technology a year ago (or six months ago, etc.).
I have taken a few "breaks" before I picked myself back up and persisted to learn until it "clicked" for me. I'm still going through that same process with another subject, and always will be. That’s the gratification (and challenge) of learning something new.
So, what eventually caused me to dive deeper and learn more about web development, new technologies, and entrepreneurship? I'll share my story with you.
Feel free to grab your favorite beverage/coffee ☕️, so you can hopefully stay awake while you continue reading this incredibly interesting story (sidenote: I like to approach life with a little humor and always try to see the good in everything).
I wasn't "born with a phone in my hand." The truth is, I'm a full-fledged "OK Boomer" (whatever that means). The first time I programmed a small line of code and saw the result, I was super stoked!
For me, this took place back in the early 80s during a BASIC class (an acronym for "Beginner's All-purpose Symbolic Instruction Code") which I elected to take during my senior year in high school…( where I was probably listening to The Psychedelic Furs or The Clash and watching Jeff Spicoli and the term "dude" grow incessantly 🏄♂️).
Fast forward a few decades…I initially deployed this site because I thought WordPress would be a good place to start and I simply wanted to figure out how to create and deploy a website on my own.
One thing that helped me initially was the fact that I enjoy researching. I decided to make a transition after working many years in the "corporate world." I always wanted to nerd out on the deeper underlying technical details to better understand how they functioned.
I'm grateful for all the teams I was fortunate to be part of and for being able to work with some incredibly talented people. I was lucky to be part of it. At the time, I was ready for a change and wanted to dive even deeper into tech. Why not, right? Why not make it the best version of you by starting something new?
I finally decided to take action (instead of just dreaming about it ). Learning to code (or learning any new technology) takes perseverance. I still enjoy working with people that are continuously learning new technologies. It's challenging, engaging, and always fun. If it isn't, find something that is. Life is way too short!
I've listed a few ideas below that may help you find a place to begin.
One thing I've learned to ignore, regardless of how much (or how little) I have learned so far, is that it's easy to think to yourself, "I’ll never learn this fast enough"…"There's so much information to keep up with,"…"What programming language do I begin with?" …"Will my head explode?"
We all strive to have an area of expertise. Initially, if you're interested in web development, you may want to consider learning how web browsers work specifically, the "DOM" (Document Object Model).
I also found it helpful to familiarize myself with Git, GitHub, and the CLI (Command Line Interface), especially if you prefer using keyboard shortcuts that don’t require a mouse.
Familiarizing yourself with the CLI can save you hoards of time (plus, you'll quickly become a keyboard ninja).
What are HTML & CSS?
HTML (Hypertext Markup Language) uses tags to identify different types of content and the purposes they each serve to the webpage. It's a great place to start if you want to get involved with computers, primarily because it's exciting, and you can see the results of your learning almost instantly.
HTML provides the raw tools needed to structure content on a website. CSS, on the other hand, helps to style this content so it appears to the user the way it was intended to be seen. These languages are kept separate to ensure websites are built correctly before they're reformatted.
CSS stands for Cascading Style Sheets. It dictates how the HTML elements of a website should actually appear on the front end of the page (what the user can see).
Put simply, CSS is a list of rules that can assign different properties to HTML tags, either specified to single tags, multiple tags, an entire document, or multiple documents. It exists because, as design elements (like fonts and colors) were developed, web designers had a lot of trouble adapting HTML to these new features.
I prefer working with the front end (otherwise known as the "client-side" or what you see rendering in your browser) since it appeals to my creative side. Transforming ideas into a digital format (as you can see, I'm a crazy fan of unique emojis (artwork), and probably use them way too often). I think it's cool to see colors and representational art vs. b&w text (like this site).
Front-end development is continually evolving, and this keeps it interesting.
For me, visual design is just as important, because not only is it important for websites to function correctly, every pixel should be visually appealing (of course, I'm laughing to myself as I write this because this site is not remotely an example of that). It's all subjective, and this particular website is a never-ending experiment that I eventually return to and update.
In early 2018, I finally decided to get out of my comfort zone and go for it.
I dove in and immersed myself in code (full-time) and made the decision to complete The University of Texas at Austin Full-Stack Web Development Program (a.k.a. "UT Coding Boot Camp").
Some days it's like you're drinking from a firehose, so stay thirsty, focused, and positive. Choose to continue learning (with or without "imposter syndrome").
What I like about this entire process is that it motivates you to constantly keep learning something unfamiliar and challenging you. The learning process is research-intensive. This is a good thing. Stick with it, since it will pay off in the long run. It will eventually click for you, and when it does, it's a pretty awesome feeling.
Although it's not a "popular" language, I initially started learning about PHP, so I could better understand how it interacts with WordPress. I still think it's pretty amazing and rewarding to see how the code you write “becomes alive” on your page and how the user experience can constantly be improved.
This particular WordPress theme (an older theme I am purposefully using), did not look like this years ago. So far (as of late 2021), I've made a "few" revisions to this page.
I initially chose this theme before "Dark mode" was a common term. It's still intriguing to learn how to change the overall look of the site and make improvements to it over time using HTML and CSS.
You can also use PHP to edit the theme's code and (for example) modify some items in the footer (the very bottom of the page) to display your name instead of the generic "Powered by WordPress." I'm old school and like to figure out how things work (even if it's an "older" language or framework). It's just as fun to learn how it works.
Attend a Developers Conference – Invest in yourself!
I took a friend's advice and attended a developers/designers conference in Seattle (in March 2019) – An Event Apart. I learned from complete subject matter experts and a list of a variable who's who in web design and development staff, met other interesting developers, and learned some really useful information about design.
Below are a few resources that I've found very helpful.
A Great Place to Start Coding:
FreeCodeCamp – Totally free online courses
The value here is not that its free…there is a real, vibrant community, and the site is now even more "accessible" (built with text editors for accessibility requirements). Pretty cool.
I've researched a ton of online resources, and one of my favorites (IMHO) is treehouse.
They have a variety of different "Tracks" to choose from, and for me, the format is really clear and easy to understand with videos and thorough step by step instruction.
Their slack channel is an effective way to connect with other coding students and instructors, and it's also a good resource to get quick answers to all your questions.
You are encouraged to review other people's project submissions, which helps to reinforce your own learning.
You should definitely consider checking them out.
There are obviously zillions of other helpful resources online and on YouTube, but I found these particularly helpful.
You can watch these anytime and anywhere on mobile (via the Udemy app).
How awesome is that? You can learn 24/7/365 from almost anywhere.
These instructors do a fantastic job of taking time to explain the process in a way that is very straightforward (and they respond quickly to your questions).
There are many other great courses available. These are just a few I recommend starting out with.
I have no affiliation with the course resources and podcast links below, I simply wanted to list them to help make them easier for you to locate.
As you can probably tell, I really do prefer treehouse as an overall "go-to" resource. Getting started and spending just an hour or two every day, is really what matters most.
- The Complete 2020 Web Development Bootcamp by Angela Yu at the App Brewery
- Build Responsive Real World Websites with HTML5 and CSS3 by Jonas Schmedtmann
Learning Git and GitHub (version control):
Learn to Code with Me (Laurence Bradford)
I started listening to her podcast and found it really helpful initially as a beginner. I think I'll always feel like a beginner, but in retrospect, I have learned a lot, and always have a lot more to learn.
I also found her website to be an excellent entry-level or informational resource. Definitely check it out.
If you're interested in learning one of the most powerful and predominant Content Management Systems (CMS) in the world, you may want to familiarize yourself with WordPress, (since it powered over 35% of the web in 2020)!
There are still many WordPress developers out there that stay very busy helping clients with WordPress sites or building themes or plugins. Personally, I'm a big fan of WordPress and the WP community.
Below are a few resources I found helpful:
Podcasts and Additional References:
It's amazing how much you can learn from listening to podcasts.
Resources for CSS: As you probably already know, Chris Coyier and Rachel Andrew are both super knowledgeable in CSS. They both spoke at the An Event Apart conference I was, fortunately, able to attend.
It’s always beneficial to get involved in your community with like-minded people (developers & designers) by attending local Meetups a few times a quarter or as often as you are able. You never know who you will meet, learn from, or help out.
Web Developer, Front-End, Back-End, Full-stack Developer, etc. I try not to get too caught up on titles.
Personally, I like the term "Front-End Designer" (which I heard recently) since (to me), design and development are equal.
I personally strive to learn the "front" of the front-end along with UI (user interface) design. I find learning back-end (or server-side) technologies interesting too, however, I prefer coding and designing with front-end technologies.
Wow, if you made it this far, without passing out and going into REM sleep congrats! As you continue to learn how to code (which really never ends), I hope some of the information above saves you time and helps you find a useful curriculum.
After a Long Day of Staring at a Screen
This is the part where you get outside and make time to take a break for a brisk walk, run, swim, or ride. It really helps to clear your mind, re-focus, and create new ideas. If you've made it this far, you probably could use some fresh air (or perhaps you feel like jumping through a window).
I also enjoy learning where people come from (their lineage). My ancestry is German, Dutch, and Swiss. Check out a few European travel videos on these countries below 😷 (they may require a few seconds to buffer).
"It really is about progress, not perfection."
~No idea who said that (but you'll probably hear it often)…
Best of luck to you on your coding, web development (or what you really like to do in life) journey…
Here is an informative article on SiteGround. If you click on one of the SiteGround images below and sign up for hosting, then I receive a tiny referral fee and you (besides receiving a discount) would actually be the first, and most likely, the only person to ever actually do this, so far. I'm totally serious.
So, thanks for helping and being first! 🙂
Ocean photo by Amanda Phung