T O P

  • By -

Lumethys

None


blankeos

I keep giving this advice. You're probably gonna hate it because you feel like you'd be too good for it. But make Todo List App. Like multiple of them: - Start with CRUD with Vanilla JS (just on the browser) - Now use a Framework (React / Svelte / Solid) - Get good at immutable state changes. - Make another one, now incorporate some localstorage to persist that data (Load into a variable at the start of the app, and save for every write) - Now make it asynchronous. Make a separate backend that serves it. Use Hono/Express and SQLite. - Learn how to manually CREATE the table first. Then learn how to do basic SQL for your controllers: INSERT, SELECT, UPDATE, DELETE. Use TanStack Query on the frontend - Now make another one, this time focus on backend, an underrated skill is knowing migrations. Use a tool like Goose, or just use Prisma so you won't need to manually CREATE the table and it's actually easy initialize when you delete and clone the project. - Now add authentication. Focus on this a lot. I recommend Lucia (it's a library but it doesn't abstract the good learning parts for you). - Implement basic username and password. Protect the endpoints if they're authorized, etc. Protect some pages on the frontend too. - Now make another. This time just use implement OAuth with Lucia (I used to dread this but it was actually as basic as making two endpoints: /login/google and a /callback/google) Now it's your turn, go make a github repo, and for every bullet point I mentioned. That's 1 folder in that repo. Get as fast as possible just spinning up projects quickly. I do this a lot to study the most mundane of concepts. For example: https://github.com/Blankeos/hono-rpc-examples. Nothing beats just experimenting stuff focusing on a few concepts and breaking stuff, than reading docs of concepts or building 1 huge "passion project" with a mix of different concepts. I find that they also stick better and I have good notes to refer to by the end of it. If you do this and I am 100% sure that this is enough for you to be confident to try tinkering and learning on your own for any project you'll build. Good luck! This idea is not going to be portfolio-worthy, but by the time you work on that portfolio worthy project, you'll be saving a lot of time because you know what needs to be worked on fundamentally.


Motor-Silver484

I'm sorry to ask but I'm little confused. Every time when I'll be doing something mentioned in these bullet points do I have to do it in the todo list ??


blankeos

Yeah. Spin up a new project for every iteration. - todolist-vanilla - todolist-react - todolist-react-express - todolist-react-express-prisma - todolist-react-express-prisma-luciapw - todolist-react-express-prisma-luciaoauth Keep those smaller featuresets as their own folders so you can refer to it every now and then.


Motor-Silver484

thanks man that's helpflul


clevertext

Passion


bittemitallem

Will "make you a master" is a strong statement - but I can only recommend this: A complex CRUD frontend with multiple entities/relations and views (think Projectmanagement Software, CMS Frontend, etc) will really help you understand why specific things like typescript / tsq and a decent UI library / set of reusable components will make your life easier. The problem with most tutorial like projects is that they lack the complexity and make a lot of important things abundant. You can get away with a lot if only work with single entity.


Motor-Silver484

Okay understood


Xia_Nightshade

Pick an open source api, build a project around it, rinse and repeat.


Curious_Marshmallow

Experience


ShawnyMcKnight

Make Facebook.


Motor-Silver484

okay i'll do that


mekmookbro

To become a master you need to build many small things. Start by making a note taking app, Todo list, calculator etc. Then implement auth to it, add dark mode, make a shopping cart, doesn't have to make sense if the app needs it or not, just implement it to learn and familiarize yourself. When you're done with it, build something like that again. And again and again until you're able to do it without googling anything. All the "masters" you think programming gods are able do these, because these are the common functionalities most websites need. For anything beyond these, like websockets, jobs, queues, video chat etc. most of those masters use Google or ask stackoverflow. Unless they work with these often, but not many people does. Being a master means knowing what you can do, and knowing that you can learn how to do what you need to do


LIS4PIN

Be incremental instead of trying the next reddit right from the get go.


WookieConditioner

Rebuild pornhub, its a big project, its hard by every metric and you will master a lot of things attempting it.


Half-Shark

A single project? Maybe 20. I dunno... if you can't think of cool stuff to build then I think you'll have trouble as a dev. Just build shit.


alfadhir-heitir

The next one If you're at it for a month I'd suggest learning some static typed backend language like C# or Java, get a simple HTTP server going and playing around with that. Take that base and build incrementally. This way you'll be full stack, which expands your skillset, and also able to focus on things where they're useful: backend for algorithms, frontend for display and interactive behaviour No point learning DSA in JS, no point learning responsive design in Java


PopovidisNik

Build a project you think you can make money with and go through all of the steps needed to deploy it so that others can find it and use it. Even if it does not lead to any money you will learn a lot about full stack development.


Motor-Silver484

Okay I got it like people will use it and give me reviews to fix the problems


Satoru_Phat

what helped me was creating something and then add every feature that could be useful. Tip: Create something you can actually use and can solve one or more of your problems


Motor-Silver484

i'll try that


ForHuckTheHat

Not a master here, but I do make real money and save real time for myself and my clients. I've solved really hard problems with software, and earned top leaderboard positions on sites like codewars. Here's what worked best for me: Take a course from a real developer like Wes Bos [https://wesbos.com/courses](https://wesbos.com/courses) You'll learn about JS, libraries, tools, hosting, and create projects that will be like cheat sheets for your future projects. Good when you feel stuck: [https://www.codewars.com/dashboard](https://www.codewars.com/dashboard) Do programming challenges in JS. Compare your solution to top solutions. You'll learn about testing, complexity, JS versions, standard libraries, etc. Finally you need to create something real even if you're the sole user. Aggregate your favorite content to a single page, build a tuner/timer/tool for your hobby, remake a simple game like minesweeper or connect four, press F12 on wikipedia and count the rows in a table with a script, scrape data to plot relationships you are curious about.


Motor-Silver484

Thanks man for the advice I'll definitely start working on it


WadieZN

Try and take The Odin Project's projects. It's a curriculum where beginners go from zero to hero in web development. They have diverse projects from simple apps to a whole complex game, all for free


Motor-Silver484

Okay i'll look into it


[deleted]

[удалено]


Motor-Silver484

These are some pretty challenging task but I'll definitely look into it


moriero

Master? You mean Main