Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Have you tried Django? https://www.djangoproject.com/


In my experience using Django for my webapps hasn't meant I can avoid HTML and javascript. Writing templates is writing HTML, and any relatively fancy UI including charting etc. requires using javascript


I built a recent Django site that only used JS for analytics and to implement the close button on a modal. You can do charting using server side rendered images pretty easily, especially as SVGs (although I concede, dynamic charts client side are a better UI). CSS is harder to escape if you want things to look fancy.

Given the update latency pynecone has, I can't imagine a charting library would work well.


well, I am not sure how you can build a webapp by avoiding HTML, JS and CSS.


It could be a nice option for small projects! The companies where I saw Django in production had terrible issues. Last.fm is one of them, I can't speak directly about the other one (aerospace). Django is good for a proof of concept but once you hit real-world requirements or your developers (inevitably unaware of the nuances of Django) start adding code and exceptions, it completely breaks down. Django was a good idea back when PHP was the only way to make "interactive" pages. Nowadays -for big/real projects- is just asking for trouble.

Long time ago -for a personal project- I used CherryPy, which is simpler and easy to learn. I don't know where it stands today, but it's another option.


Yeah, Django is a nice option for small proof of concepts like Instagram.


  > Last.fm is one of them
Can you talk a little bit more about this? What kind of issues does Last.fm have that is related to or caused by Django?


I'll try! Last.fm started many years ago, in the early '00s (pretty much like Django!). They decided to use Django to serve their website and API. As the years went by, some issues and limitations started to show up: the API has several quirks they can't fix, the frontend -even after the redesign- is slow, and interactions feel clunky and outdated (like early AJAX attempts).

The API can't be easily modified -and sometimes XML responses have info JSON don't-, the website is stuck on being served through the framework instead of relying on a modern API... They even have an "old" and "new" database for albums, so when you query some of the albums through the API they come back with no tracks because the API is in the old codebase. It's a mess. And from my experience with Django, it feels a lot like the difficulties we had trying to scale and improve our existing code. It's not that you can't do things: it's just that Django isn't agile enough to adapt. You end up adapting to Django and its -beautiful and magical- ways.

Of course we could blame it on poor design choices, lack of Django knowledge or just call it technical debt... but I believe the framework is the major culprit.

For context: I haven't worked for last.fm, but I manage a third-party client (Open Scrobbler). I've been using their API for more than five years now, had interactions with their devs, read many replies in the API support forum and even tried to find undocumented endpoints that could help me (during this time I found some old profiles and test pages where you can even see screenshots of Django logs!).


> but I believe the framework is the major culprit.

Yet somehow the decades long popularity of Django, it's widespread usage and presumably many successful real-world deployments doesn't make you question your own belief?


What you described would have happened with any other framework available at that time when you make poor design choices. I don't see anything django specific there




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

Search: