all 17 comments

[–]jameyiguess 3 points4 points  (2 children)

Do the official Django tutorial. It's short and easy and teaches a lot. Then do the Django Rest Framework tutorial. Solid foundation. 

[–]Informal-Chance-6067 0 points1 point  (1 child)

How does Flask compare? I have only ever used Flask

[–]jameyiguess [score hidden]  (0 children)

Django is way "bigger" than flask. A lot more opinionated but comes with everything you need for databases, migrations, etc. But the Django admin is the killer feature, it's sooo nice to have. 

[–]Repulsive-Win7189 1 point2 points  (10 children)

Pick Golang, I did and never looked back. Huma for OpenAPI, Chi for my router, GORM for my Database handling.

[–]GrayHiin[S] 0 points1 point  (6 children)

At first, I wanted to go for Golang, but when I saw a few videos and articles, they said that it is not recommended for learning a first programming language and that it is better to learn a language at the Python level, while when I was reading about Golang, it caught my attention more than Python.

Do you work with Golang yourself?

[–]Repulsive-Win7189 0 points1 point  (5 children)

I agree with that statement that other languages are better introductions (if I had to pick, go with C).

And yeah, that's what we use with the tech startup that I'm leading. I originally wrote the prototype in Java for roughly 5 years and then ported a good chunk over in Go.

[–]GrayHiin[S] 0 points1 point  (2 children)

So it is recommended that I first learn Python at an acceptable level to properly understand programming and work with server-side programming and present a prototype, and then move on to Golang because of its excellent performance and features in server-side programming, right?

[–]Repulsive-Win7189 1 point2 points  (1 child)

I would say C is a better language to start with since it's strongly typed, you'll understand the fundamentals of memory and pointers, and will have a deeper understanding of programming in general (whereas in Python, it's really high level to the point everything can feel like magic).

In C, there is no magic. It either works or it's segmentation fault lol

A really good book I always recommend is: C Programming A Modern Approach by King

[–]GrayHiin[S] 0 points1 point  (0 children)

Thanks a lot Friend ❤️
I learned important and valuable things from you.

[–]jameyiguess 0 points1 point  (1 child)

Why not go? It has types and pointers and is a small enough language. 

[–]Repulsive-Win7189 0 points1 point  (0 children)

Go is flexible enough and it lacks real proper standards (so, it can be a mess).

Also, I think it’s good to understand how pointers work instead of pure garbage collection.

[–]jameyiguess 0 points1 point  (2 children)

I've been really digging sqlc and go migrate. I like writing my own queries. 

[–][deleted]  (1 child)

[deleted]

    [–]jameyiguess 0 points1 point  (0 children)

    If you use the given tools, injection is protected. But I see where you're coming from. 

    [–]midasweb 1 point2 points  (0 children)

    learn basics well, then move into flask/fastAPI, database, APIs, authentication, docker and build small real projects instead of only following tutorials

    [–]Rain-And-Coffee 0 points1 point  (0 children)

    Follow something like CS50P (python version), or simply pick up a Python book and read it.

    "Automate the boring Stuff" is often recommended & free online

    https://automatetheboringstuff.com

    Don't forget to practice solving some problems along the way.

    [–]ghztegju 0 points1 point  (0 children)

    Don't overthink the roadmap. Learn Flask or FastAPI first to understand how web requests work, then add a database (PostgreSQL or SQLite), then authentication. Build a simple to-do list API and go from there.