Course Guidance - Wish to Remain Marketable


#1

Hello All,

I am uncertain this is the place to ask this question, but I am trying to determine the best way to manage my future taking computer programming courses to learn, grow, become more marketable and integrate them with my other passion for aviation.

Although I am approaching my 60s, I'd still like to learn and remain marketable in an ever-changing world. I've always had an interest in programming and enjoyed to tangible results of my work years ago when I took BASIC. Since then, I dabbled in database programs and was an ERP developer for a short time. Unfortunately, over the past three years, I was laid off.

I have a project management certification (PMP) and feel this may lend well in blending this with IT knowledge. Recently, I took on a job as a professional pilot (does not pay very well) , but have lots of "down time" to use for other things. I always like creative things and have an interest in Web design.

My questions is this: What is the best way to learn a subject and find a focus using Codeacademy? Should I sample various courses?

At this point, I'd like to eventually do some independent work for extra compensation. It isn't bad having the skills should issues occur that prohibit me from flying.

Any help or suggestions would be appreciated!


#2

tl;dr : If you like design: HTML, CSS, Javascript - If you like analytical stuff: PHP / Java / Python / Ruby

Hi there,

There's definitely no age limit in learning new skills and diversifying. It's great that you now want to take on this new challenge.

I'll base my answer on two things that you said:

  • Interest in programming courses
  • Interest in Web Design since you are a creative person

Alright. Web development nowadays is strongly divided between the creative minds (the ones who like beautiful things, beautiful interfaces, essentially a great UI (user interface) and UX (user experience)), and the analytical minds (the ones doing the actual programming, the engineering and architectural design of the back-end and database of an application).

Creatives minds usually tend to become Front-end Developers or Web Designers. They're in charge of the visual aspect of an application. Everything that you see, the way that the app is designed, looks and feels, and the user interactions and global experience is done by them. They master tools such as HTML, CSS and Javascript (the first two being markup languages, not programming languages, and Javascript being a scripting language, which allows for animations and interactions).

Analytical minds tend to prefer back-end / database work. They're the real engineers and architects behind all the visuals that the creative minds will create. I say analytical minds because programming is first and foremost a problem solving skill. You face a problem, you analyze the problem, define the best tools to resolve said problem and only then do you get to coding it with the language of your choice. They master tools such as, well problem-solving, and programming languages such as PHP, Python, Ruby, Java, Javascript (NodeJS), Go, C, C#, C++, Perl, Erlang, Elixir, Haskell, Rust, Scala, Smalltalk, SQL (database), ASP, .NET and stuff (each having its pros and cons).

Obviously, some are do-it-all. They're called Full-stack developers and can create an app from scratch, going through every aspect of it. Not everyone can achieve this, but the ones that do are globally more rounded developers, and get paid a lot better.

So, which is easier / harder?

Obviously, taking on the Full-stack path is the hardest, as you need to master it all.
Now between Front-end and Back-end. Well, it depends.

I know programmers who are horrified at the thought of having to design just a simple, merely OK-looking user interface. Some even dread a tool such as CSS (to design web pages). However, they'll give you a kick-ass stable and scalable back-end and master relational databases.

A lot of Designers (or Front-end devs) simply cannot go the back-end path. Not everyone's cut out for problem-solving. These guys will prefer to make beautiful things, and give the user a great time by making an unforgettable user experience.

Having said all this, I'd say it's up to you to define which path you'd like to take: Front-end, Back-end, or Full-stack. Based on your comment "I always like creative things and have an interest in Web design" perhaps this is what you should be looking into? Or perhaps you'd be a master programmer doing all sorts of crazy things in that back-end, I don't know, only you can.

If Front-end does sound appealing, start taking courses such as HTML & CSS, Sass, Javascript, jQuery, and then React.

Once you've got this covered, pick a programming language among the ones offered on Codecademy (Java, PHP, Python or Ruby) and see how you like that! As previously said, they all have their pros and cons, but don't dwell too much on which one would be the best to learn. Once you know programming (analysis, problem solving), it's much easier to fully grasp what these languages offer and how to quickly solve problems using them.

Long answer, but I think I covered most of what needed to be said.

All the best and, if you have any questions, feel free to shoot!