Hey,
I’m not sure if this is the right forum to post in, sorry! I searched the forums but couldn’t find a specific answer. I’m looking to build a passion project that’s similar to GoodReads and other social cataloguing sites. MVP will be personal recordkeeping, with social functions and more complex recommendations built in afterwards.
Is the full-stack web dev the best learning pathway to follow or is there a better way to go about it? I’ve solid experience in python and sql, so I would love to be able to start poking around as quickly as possible on this thing - basically learn as I go.
Thank you!
3 Likes
I think something like flask/django would be really useful for this (especially since you know python). Following the flask module will give you a taste of the issues involved.
Afterwards, I would personally use django since it comes with a lot of the things you would need for this sort of project. Corey Schafer’s youtube channel has a great tutorial for setting up a facebook style page where users can log in and make posts/edit their posts, etc. He follows it through all the way to deployment on a remote server or cloud (which you might want to do for this, considering the potential size).
pros/cons for django over flask in something like this:
-
although you still have to think about security, there’s less need to fuss over smaller validation details (django covers).
-
Database set-up is more straightforward in my opinion.
-
Potentially more documentation/resources to add a js framework like react for front-end.
-
built-in admin management and migration manager is just nice quality of life type stuff to have
-
one negative is I prefer jinja over django’s templating system.
5 Likes
Thank you! That’s super helpful – I really appreciate the details&. the pro-con you provided.
2 Likes
Thank you both! This was super helpful for me as well. Sorry too if this is not the right place for this concern. My goal sounds similar. Ideally my users will be able to have a profile where they can at least upload photos. My concern is about securing the project.
Is it realistic to learn the necessary security measures myself (self guided/on a site like this) to actually deploy a basic version of this kind of project irl?
Or is this the type of thing I would need to partner with a security expert from the outset or get a BA/career in IT myself first?
Any help is appreciated!
I think if you are really expecting users to use your site, do your due diligence with modern security standards (OWASP and references like that are your friend).
No need for a degree. Most developers are not security experts by any stretch of the imagination. Some things in particular that you want to watch out for:
- if you’re storing any user private data, it needs to be protected both from adversaries and from yourself (you shouldn’t be able to look at the people’s data, just store, protect, and provide it to user).
- keep up-to-date with the dependencies (third party tools) you use in your project. Have a at least a high-level idea of where the pain points could be. This is where using tools with a large community helps because you can leverage their knowledge to stay aware.
Thank you so very much! You’re response is more helpful than I can easily describe in words.
Concern over this issue has been a drag on my motivation for a long time now so I really appreciate your thoughts.
In particular your clarity about scope (degree) but also what to watch out for and due diligence. Many many thanks!!
1 Like