# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 9
# self = https://watcher.sour.is/conv/62syw6a
This Saturday I did 10 whole hours straight of emergency code review and bug fixing on a project for a third party client made in Django and VueJS.

Spaghetti code can't describe them I saw... 😱

Barely managed to make it at least work in all that time. Hope I don't see that codebase ever again. 🕺
@justamoment Well it is Django after all 🤣
@justamoment Well it is Django after all 🤣
@justamoment Well it is Django after all 🤣
@justamoment Well it is Django after all 🤣
@prologic Django is not too bad (even though I'm decoupling from the messy parts with my own code in my projects) the junk was mostly in the frontend.

It happened because they didn't use components properly and couldn't even navigate their own code.

Plus it didn't look like they know that functions exists. 😑
@justamoment Django is ♥️

#biasedOpinion
@eaplmx personally I don't use it for personal project because I want much more flexibility but, for me, the ORM is the best you can find in python.

For external projects a reliable structure is much better and thankfully Django gives you a good one.

#EvenMoreBiasedOpinion
@justamoment yeah, I like that ORM a lot