Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Experienced Back end Developer that wants to make a website
1 point by LimitedInfo on Dec 23, 2020 | hide | past | favorite | 8 comments
Hello HN.

I have extensive experience with Python, and some experience with c, and databases. However I have no experience with HTML and CSS. I would like to make a somewhat complex website where I display tweets from the Twitter API and display data that I have in a database. Should I learn django/REACT, or Flask, or should I use Wordpress? If you think I should use one of these options, should I go to udemy/youtube, hire a teacher, etc..?




Don't do Wordpress, unless you know right now that there are a particular set of plugins that already provide all the utility you are looking for. If not, wordpress is huge, complicated mess to extend and it is PHP not Python.

On the other hand, I found Flask to be dead simple. The website will get you started. You certainly don't need a course or a tutor to get going.

Django, once you get the hang of how the scaffolding works, is also fairly easy to use. It did take me a weekend of google-ing and head scratching to figure it out though. The Django docs and community is not as easy to work with as flask.

On the surface of things, collecting data from the twitter api and displaying it with related data from a database is not overly complex (as long as you are looking at a reasonable number of tweets).

VERY important though, you absolutely cannot publicly redisplay a tweet yourself, even if you have collected the details of it from the api. You ABSOLUTLY must use one of the Twitter widgets to do so. Do anything else and you are just asking for your project to be shut down.


Thanks for the heads up about tweets, I had no idea.

I've actually started working through the startup tutorials for both Flask and Django. However, I was worried that Flask wouldn't have the necessary functionality as I'm imagining log ins and voting systems.

I started on Django but despite my Python experience I found the structure pretty complex. Do you think Django is worth the extra effort over Flask?


For me, it is hard to say. I recommend taking a look at:

https://developer.mozilla.org/en-US/docs/Learn/Server-side/D...

it might help you get started. If not, I certainly think that flask is also a great framework to work with.


I would also add Don't use wordpress! As a developer you'll find yourself constantly hitting a wall trying to get wordpress to do what you want instead of wordpress working for you.

You could learn Flask, which is very simple but I wouldn't recommend learning React/Vue just yet, rendering the HTML on the backend as opposed to using a JS framework will make your life a lot easier, specially if you are not familiar with browsers and the problems that JS frameworks are trying to solve.

As for design, you can copy/paste code from something like bootstrap/bulma/foundation to create a decently looking UI wihout having to learn a lot of HTML/CSS.

For the DB, just use whatever you use before on python and at the end of the day you'll pretty much end up with an HTML template, and just pass a dict to fill it with whatever data you need, totally decoupled from where that data is coming from, whether it's an API or a DB or whatever else.

Good luck!


Awesome thank you for the info!


Skip db and try a static website generator like Hugo or Pelican (python).

Do NOT use Wordpress unless you just want to torture yourself.


Interesting, I hadn't heard of static website generators. Did some googling. Would this limit my website in some way? For example, would login functionality be unavailable since everything is preloaded?


I guess this could limit you on using a DB... but if the data you have is relatively static, or your site doesn't need to modify that data static generators are an awesome simple way to make complex sites




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: