Why Code?  < />                        Orca whale logo

MacBook keyboard image

Willkommen!  🇩🇪

Welcome to my trusty old WordPress site. This site is older, and for me, it's like a classic automobile (e.g. '64 Porsche 911), it still runs nicely if properly updated and maintained. This is where it all started for me as a WordPress fan (hence the URL).

My name is Andrew and I'm a web developer, principal, and aspiring digital nomad. This site, like me, is always a work in progress… 

I live in beautiful Austin, Texas with my amazing Canadian wife (a civil defense attorney). I also happen to be a  huge fan of Germany soccer. ⚽️ 🇩🇪

Seriously, what an awesome time to be alive and (if you choose to) be able to work remotely, start a business (or explore that idea) you always wanted, and with hard work, eventually making it a reality. There are so many portals online where you can learn new skills.

I'm passionate (I know, that word is completely overused) about helping people, web technologies, environmental sustainability, and giving back. I recently acquired a (Shopify) company that was on the curated list of "Staff picks" on Exchange marketplace and love everything that Shopify represents (but that's another story)…

You can check out a few "starter" projects I put together for my initial portfolio (also at swimr.io). Do I wish my portfolio was much more elaborate? Actually yes, but it was simply a starting point for me. I used to be super conscientious about creating a website because I saw it as a reflection of myself and my "quality of work." 

If you're just starting out, the main thing to remember is that it is essential to keep progressing and learning (even if its incrementally). You will definitely improve over time.  If you are determined to learn, keep persisting, and you will get to 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.). Pretty cool, right? 


Why code?

So, what caused me to want to dive deeper, pivot, and learn how to code? I'll share my story with you. Feel free to grab your favorite bevy and keep reading. ☕️

I was not born with a phone in my hand. Is anyone too "old" (and I don't see myself as old) to learn something completely new? Never. The first time I programmed a small line of code and saw the end result, I was pretty stoked. This took place in the early 80s during a BASIC class (which stands for "Beginner's All-purpose Symbolic Instruction Code") that I chose to take way back during my senior year in high school – you know…Spicoli days 🏄‍♂️)). 

Fast forward a few decades…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. This site will continue to outline my never-ending coding "journey." 

I enjoy researching and learning and recently decided I wanted to make a transition after working many years in the traditional "corporate world" (within the SaaS space). In some of my previous roles, I helped train and educate clients to use various software products and always wanted to nerd out on the deeper underlying technical aspects.

I'm grateful for all the opportunities and experiences I have gained (and the knowledgeable and talented people) I have worked with over the years. I was just ready for a new challenge and a fresh start. Why not, right?

I finally decided to take action (instead of just dreaming about it). Coding obviously takes perseverance. I told myself (as a young 50 something-year-old), "you can do this and it's never too late to pivot your career and combine your skills into something completely new." After all, I have enjoyed working with people,  computers, and different types of software since the early 80s. It's fun, challenging, and interesting. That's what I focus on.

photo of a MacBook pro desk

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've 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 information to keep up with,"…"What programming language do I begin with?" …"Will my head explode soon?"

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 found it helpful to familiarize myself with Git, GitHub, and the CLI (Command Line Interface), especially if you prefer keyboard shortcuts that don't require a mouse (which is ultimately really good to know).

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.

After learning HTML and CSS, I recommend learning JavaScript next, then it's your choice of what interests you (e.g. React, Sass, Ruby, Vue, UX design, etc.). Take your pick! The main thing is to take one framework or language and focus on learning it.


Orca whale icon

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 crazy fan of emoji's (artwork), 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). It's all subjective and this website is a never-ending experiment.


What is JavaScript?

JavaScript is a more complicated language than HTML or CSS, and it wasn't released in beta form until 1995. Today, JavaScript is supported by all modern web browsers and is used on almost every site on the web for more powerful and complex functionality.

What is it used for? JavaScript is a logic-based programming language that can be used to modify website content and make it behave in different ways in response to a user's actions. Common uses for JavaScript include confirmation boxes, calls-to-action, and adding new identities to existing information. It basically makes your webpage interactive.

JavaScript logo

In short, JavaScript is a programming language that lets web developers design these interactive sites. Most of the dynamic behavior you'll see on a web page can be attributed to JavaScript, since it augments a browser's default controls and behaviors.

One example of JavaScript in action are boxes that "pop up" on your screen. Think about the last time you entered information into an online form and a confirmation box popped up, asking you to press "OK" or "Cancel" to proceed? This is an example made possible through JavaScript — in the code, you would find an "if-else" statement that tells the computer to do one thing if the user clicks "OK," and a different thing if the user clicks "Cancel."

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").

I gained familiarity and experience working with HTML, CSS, JavaScript, and MERN-stack (MongoDB, Express, React and Node) technologies.

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 (and still am!).

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.

WP revisionsI 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 friend's 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 icon

FreeCodeCamp – Totally free online courses!

This is a great way to get started, especially if you want to access free courses. The podcast is very informative and fun to listen to. Oh, and did I mention it's completely free?

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 for learning HTML, CSS, and JavaScript.

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 people's 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. ?

Link to Treehouse website

(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).   


A great book to learn HTML, CSS, and JavaScript:

There are obviously zillions of other helpful resources online and on YouTube, but I found these particularly helpful.

Besides learning online on treehouse, this book (HTML&CSS – design and build websites) is a classic must-read by Jon Duckett (in addition to his JavaScript book):

HTML & CSS Book by Jon Duckett

Here's a cool game to learn CSS or CSS grid!


 

Udemy logo

Udemy: Online HTML/CSS/JavaScript Courses:

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.

GitHub logo

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 icon

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!


WordPress:

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.

You can also attend a local WordPress MeetUp and WordCamp (or travel to one for fun, like I do, by going to the Seattle WordCamp) :


Podcasts and Additional References:

It's amazing how much you can learn from listening to podcasts.

Besides listening to the Techmeme Ride Home podcast every day, I like listening (and learning) from the Syntax and ShopTalk podcasts.  Wes Bos (from Syntax and JavaScript 30) is a great JavaScript and React instructor.

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 referenced above.

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.


Titles…

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). Personally, I still like "web developer." It's simple and doesn't limit your expertise.

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 to watch the World Cup (men's or women's).

When the World Cup is not on, I enjoy rooting for my favorite team in the Bundesliga, Bayern München (Munich, Bavaria). The Germany soccer team…"Die Mannschaft" translates to "The team."

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).


Einstein quote on failure

Life is like riding a bicycle. To keep your balance, you must keep moving. -Albert Einstein

It really is about progress, not perfection!


Best of luck to you on your coding journey. Thanks for stopping by.

~Auf Wiedersehen

 

Photo of Andrew Bain - Web Developer

 

 

 

 

 


                            Deutschland/Germany

 

 

 

Bayern Munich


The Netherlands

Netherlands soccer logo


 Switzerland



Shameless plug:

If you're searching for a new and cost-effective hosting provider consider SiteGround. Full disclosure: I receive a tiny credit on my SiteGround account (and you receive an awesome offering).

I've been with them for many years and have been really happy with their support, performance, simple 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 reliable and forward-thinking hosting company.

Thanks in advance.

Web Hosting
Web Hosting
Web Hosting