Welcome to my trusty old WordPress website. This is where it all started for me as a WordPress fan (hence the URL). Hello, my name is Andrew. I'm a web developer, and this site, like me, is always a work in progress.
I live in Austin with my amazing Canadian wife (a civil defense attorney). I also happen to be a huge fan of Germany soccer. 🇩🇪⚽️
Besides helping people, I'm passionate about front-end technologies, visual design, health and wellness, and entrepreneurial business. You can also check out my portfolio at andrewbain.io or swimr.io.
More yakking about myself:
So, what caused me to want to take the leap, pivot my career, and learn how to code? I'll share my story with you, so grab your favorite bevy and keep reading. ☕️
Being a longtime WordPress fan, I initially created this site several years ago because I wanted to figure out how to create and deploy a personal website. It also outlines some of my coding "journey."
I enjoy researching and learning new challenges. I recently decided I wanted to make a transition after working many years in the traditional "corporate world" in business development (within the SaaS space). In previous roles, I helped train and educate clients to use various software products and always wanted to nerd out on the deeper technical aspects.
I'm grateful for all the opportunities and experiences I gained (and the awesome people I worked with), but I was just ready for a fresh start.
I finally decided to take action (instead of just dreaming about it). Learning to code takes perseverance. I told myself (as a 50 something-year-old), "you can do this and it's never too late to learn something new."
If you are learning to code, I've listed a few ideas below that may help you as a place to begin.
One thing I have learned to ignore, regardless of how much (or how little) I have learned so far, is that it is easy to think to yourself "I'll never learn this fast enough"…"There's so much to learn and keep up with,"…"What programming language do I begin with?"
I found it helpful to familiarize myself with Git, GitHub, and the CLI (Command Line Interface) especially if you like keyboard shortcuts that don't require a mouse.
Familiarizing yourself with the CLI can save you hoards of time (especially with Git) and 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 frontend of the page.
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 personally like working with the front-end since it appeals to my creative side and allows me to put my ideas in a digital format (as you can see I'm a fan of emoji's, and I probably use them way too often 🎸).
For me, learning visual design is just as important, because not only do I want websites to function properly, I want every pixel to be visually appealing…(as I'm typing this, I laugh as I realize this particular (WordPress) site is not yet an example of that). But hey, it's a start!
So, fast forward to early 2018. I finally decided to get out of my comfort zone and go for it.
I 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").
Learning to code can be really hard. At times you feel like you're on a roller coaster. I know, because I've been "on and off" several times.
Some days it's like you're drinking from a firehose, so try to stay 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. 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.
Although it's not a "popular" language, I started learning about PHP, so I could better understand how it interacts with WordPress. I 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 ordinary WordPress site (and older theme I am still using here), did not look like this four years ago. So far (as of mid-2019), I've made over 1,400 revisions to this page!
I'm planning on updating this (twenty seventeen) theme to a newer one (ya think!). I initially chose this theme many years ago, before "Dark mode" was a common term. It's still fun to learn how to change the overall look of the site and make improvements to it over time.
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." What can I say, I'm old school. I just like to figure out how things work (even if it's an older language like PHP). It's still just as fun to make it work.
Attend a Conference – Invest in yourself!
I took a friends advice and recently attended a developers/designers conference in Seattle (in March 2019). It came highly recommended, and it's called An Event Apart (it was awesome!). I was surrounded by subject matter experts on web design and development, met some great people, and learned a lot.
Below are a few resources that I've found very helpful and I hope they help you.
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!
They have a variety of different "Tracks" to choose from, and for me, the format is really clear and easy to understand.
Their slack channel is a great way to connect with other coding students and instructors, and also get questions answered immediately.
You are encouraged to review other peoples project submissions, which helps to reinforce your own learning.
I highly recommend treehouse. You should definitely check them out. I think they do a great job. ?
(Full disclosure: we both receive some sort of discount if you check out the free trial via the purple link above, at no extra cost to you. I only recommend products or services that I personally use or believe will be helpful).
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 guys 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.
- Build Responsive Real World Websites with HTML5 and CSS3 by Jonas Schmedtmann
Learning Git and GitHub (version control):
As a developer, it's important to learn Git and GitHub so you can post your code ("repositories") and easily collaborate with other developers. GitHub Desktop is currently an indisposable tool for me.
Learning terminal commands are extremely helpful and will save you a lot of time.
Learn to Code with Me (Laurence Bradford)
I started listening to her podcast and found it really helpful as a beginner (which I still am!). I think I'll always feel like a beginner, but in retrospect, I have learned a lot, and still have a lot 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, it powers over 33% of the web (in 2019)!
There are still many WordPress developers out there that stay very busy helping clients with a WordPress site or building themes or plugins. Personally, I'm a big fan of WordPress and the WP community (hence the name of this URL).
Below are a few resources I recommend.
Podcasts and Additional References:
It's amazing how much you can learn from listening to podcasts.
It's always beneficial to get involved in your community with like-minded people (developers & designers). Attend local Meetups a few times a month. You never know who you will meet and can learn from.
Front-end, Back-end, Full-stack Developer, etc. I try not to get too caught up on titles. I think it's beneficial to learn as much as you can (since we all have to eventually don a new "hat" once in a while).
I'm personally striving 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, congratulations. As you learn how to code (which really never ends), I hope just a bit of the information listed above saves you time and helps you find a useful curriculum.
Something to keep in mind after a long day of coding.
As obvious as it may sound, be sure to make time to take a short break and get outside for a walk, run, swim, or ride. It really helps to clear your mind and re-focus. Find something to do to give your mind a break.
For me, it's watching football (soccer, depending on where you live). Are you a soccer fan? One of my favorite things to do (unfortunately, it's only every four years) is watch the World Cup (men's or women's).
I also enjoy learning where people come from (their lineage). My ancestry is German 🇩🇪, Dutch 🇳🇱, and Swiss 🇨🇭(you can check out the respective European travel videos and icon links below).
Life is like riding a bicycle. To keep your balance, you must keep moving. -Albert Einstein
Also, never forget that it really is about progress, not perfection!
Best of luck to you on your coding journey. Thanks for stopping by.
If you're looking for an awesome (and cost-effective) place to host your website(s), consider SiteGround. Full disclosure: I receive a tiny credit (and you still get an awesome deal) just by clicking on one of the links below.
I've been with them for many years and have been really happy with their support, easy tools, and super fast responses to any of my questions. I would not recommend anything I have not personally used.
Here is a great article to support my opinion and answer any questions you have on SiteGround as a valuable, high-speed, reliable, and forward-thinking hosting company.
Thanks in advance!