Hello there fellas, I’m a 35 year old with a wife and two kids, and a full time job, and I workout 3 times a week.
The thing is, I want to be a fullstack developer or at least get a remote job as a developer, recently I’ve been organizing my learning objectives by the things I need to learn to become a developer, and I have been trying to come up with a schedule for my learning just like I organized my training routine.
So far, in my training I have pretty clear goals for my progress in a week, short term goals in the month, and long term goals for the next 3 years at least, but it doesn’t come so easy determining these stuff for my learning path. And I know that it is really important to know where I’m heading with this learning experience to keep me motivated and not give up.
First of all, here’s a list of all the stuff I need to learn to become a Full Stack Java developer:
General Things:
-
Java
- Groovy
- Java EE
- Design Patterns
- Spring Framework
-
GUI
- Java Swing
- Processing
-
DB
- MySQL/Oracle
- NoSQL
- PostgreSQL
- HackerRank
-
Design
- Software Design
- Scrum/Agile/Lean
- Mindshift: Break Through Obstacles to Learning and Discover Your Hidden Potential (Coursera)
- JavaScript or Angular.js
Currently I’m taking various online classes, which cover the following:
-
The Java Masterclass (UDEMY)
- Java and Java key features and more
-
GUI
- JavaFX
- Concurrency
- Lambda Expressions
- Regular Expressions
-
Testing
- Debugging and Unit Testing
- JUnit
-
DB
- SQLite
-
Web Developer Bootcamp (UDEMY)
- HTML/CSS/Bootstrap
-
JavaScript
- JavaScript
- jQuery
- Node.js
- Express Framework
- JSON
- XML
-
DB
- MongoDB
- RESTful
-
Version Control
- Git
- GitHub
-
Deployment
- HTML/CSS/Bootstrap
-
JavaScript
- jQuery
- JavaScript
- React.js
- Express.js
- Node.js
- JSON
- Ajax
- Sass
-
Version Control
- Git
-
DB
- MongoDB
I know that I have to learn all of this, but I also know that I cannot do it all at the same time, or as quickly as I want. I need to take my time with each stuff, and I read somewhere that I’d need to take at least 1 month with just HTML/CSS first, and then take up to 2 months with just JavaScript.
So I’ll need to be taking baby steps with each topic, and that’s not even taking into account that I need to put some practice with everything I’ll be learning. As I see it, I will take ages before I can make something tangible out of all of this. I’ve planned time in my schedule and I intend to watch a new topic once a week, say, on mondays, and take the rest of the week for practice and trying to come up with something tangible, like making an online CV or something, and then when I learn JavaScript, adding some interactivity to it. For example:
Mondays:
9:00 AM to 10:00 AM - Watch new topic in Java (Linked List)
8:00 PM to 9:00 PM - Design simple GUI with JavaFX.
Tuesday:
8:00 AM to 8:20 AM - Read About Iterator Pattern
8:20 AM to 9:00 AM - Refactor some old code in Java
9:00 AM to 10:00 AM - Advance classes on JavaScript on FreeCodeCamp
7:00 PM to 8:00 PM - Design landing page for my TomatoTimer
And so on and so forth; I haven’t come up with organizing everything, but I think that I need to be learning Java, design patterns, Software Design and maybe some MySQL mostly, since I’m a Java programmer, and I’d like to become better at working with GUI, Design Patterns, Software Design and data bases, so maybe I think that I should prioritize that.
But I also want to learn about Web Development and stuff, anyways, the thing that I want to ask is: how should I prioritize what is important or what are some of the basic topics that I should be covering first, and when? With Web Dev I have an idea, HTML first for the first month, JavaScript and jQuery for the second and third months, GitHub on the 4th, and Databases on the fifth and sixth months. But otherwise, I’m at a total lost for the rest of the stuff.
Any help would be really appreciated.