Where do I go from here?
Posted by OutrageousOutside221@reddit | learnprogramming | View on Reddit | 4 comments
Hello!
I’m not sure how to move forward. I only really know the Java language, and that’s pretty much the extent of my coding knowledge. I understand the basic Java syntax, from if statements to while loops, and I know the basics of object-oriented programming. I’m familiar with Sets, Maps, and stacks. I’ve also started learning JavaFX, but I recently realized that JavaFX isn’t very relevant anymore, and most Java developers just use React for the frontend.
I think I want to become a backend developer, but everyone keeps telling me to learn Spring, Spring Boot, and Spring Security. Every time I look for a Spring tutorial on YouTube, the comments are full of negativity, and I can’t tell if the 2-12 hour videos are even worth watching. I also don’t know SQL or how it connects to Spring, so half the time I’m not even sure what I’m seeing or where to begin.
Right now, I basically know simple Java syntax, object-oriented programming, and a bit of JavaFX. I can make something like a basic JavaFX calculator, but that’s about it.
Any help would be amazing, and I will consider every bit of criticism/advice given. Thank you for hearing me out <3
SonahLab@reddit
Idk how you learn best, but for me I can't watch tutorials or sit through lectures. I need to learn material and then actually apply that information in practice to really internalize/process what I just learned.
If you want to learn backend development and learn Spring/SQL I would:
1. Create a basic Spring project (https://start.spring.io/)
2. Learn the basics of SQL queries/commands (https://www.w3schools.com/sql/):
- creating a table
- writing data to the table
- reading data from a table
3. Spin up a local SQL DB and integrate your application to the SQL DB (https://spring.io/guides/gs/accessing-data-mysql)
plastikmissile@reddit
So it looks to me like you're leaning towards a web developer role. That means, for now, learning the basics of both the backend and the frontend. It's way too early for you specialize in one over the other.
So in the frontend side of things you'll need to learn the basics of HTML, CSS and JavaScript. That's essential as those are the languages used by the browser to display websites. It would also be helpful to learn the basics of a frontend framework like React.
On the backend side of things, you need to learn more about databases, and that means learning SQL. Pick a free database like PostgresSQL or MySQL and start learning the basics. You'll also need to learn the basics of a Java backend framework for REST API (the way you're going to connect to your frontend), that's where Spring comes into play.
Note how I keep repeating the word "basics" everywhere. That's because each of these parts has a whole load of advanced subjects and its own ecosystem. Diving too deep into any one of them is just going to frustrate you and keep you from learning. Aim for something simple. A basic CRUD app without security. Just a web application that displays data from a database and allows the user to add, modify or delete from it. Once you're confident with that part, you'll have a better idea of what to learn next.
PangolinWonderful338@reddit
I wonder if throwing OP into the LAMP stack would help them identify their next steps.
weweredone@reddit
Don’t worry, you’re off to a good start! Focus on learning Spring Boot and some SQL, and try building small projects to practice. Ignore negative comments and just keep coding consistently.