Entry tags:
Question thread #48
It's time for another question thread!
The rules:
- You may ask any dev-related question you have in a comment. (It doesn't even need to be about Dreamwidth, although if it involves a language/library/framework/database Dreamwidth doesn't use, you will probably get answers pointing that out and suggesting a better place to ask.)
- You may also answer any question, using the guidelines given in To Answer, Or Not To Answer and in this comment thread.
The rules:
- You may ask any dev-related question you have in a comment. (It doesn't even need to be about Dreamwidth, although if it involves a language/library/framework/database Dreamwidth doesn't use, you will probably get answers pointing that out and suggesting a better place to ask.)
- You may also answer any question, using the guidelines given in To Answer, Or Not To Answer and in this comment thread.
no subject
no subject
no subject
Is there a suggested request rate, as a default to build into client software?
Apologies if this isn't the right place to ask; if not, where would be better?
no subject
no subject
no subject
- one bulk download the first time round
- subsequent intermittent, (usually) smaller updates
- not much user expectation of responsiveness
But the API library is separated from the user-facing functionality so may support other functions, in a neutral way, in the future.
no subject
no subject
(And if nobody does do it, it's on my 2017 list. I really would love to see what people can do given a better API!)
no subject
ETA: Ooh, I have been pointed at http://dw-dev.dreamwidth.org/154266.html and http://dw-dev.dreamwidth.org/155046.html .
So a new metaquestion: Is there are place where I should know to go looking for discussion and design documents on DW development projects?
no subject
no subject
no subject
Is there something in particular you'd like to see changed? There are a few frequently requested things that we've deliberately chosen not to implement for one reason or another; if it's one of those I can explain why. (Alternately, it's possible that what's bugging you is a possible fix and I can open an issue for it.)
no subject
That, and I'm just curious. I'm glad I asked if only because your answer was interesting. (If anybody doesn't have anything better to do than indulge my curiosity and wants to tell me about the specific tradeoffs that had to be made for performance, I'm interested in a scalability-case-study sort of way. Not because I have any agenda for changing things, but because knowing examples of this sort of thing makes one wiser about development.)
ETA: Also, when I was explaining to someone about how notifications work, I was struck by how the notifications system is both pervasive and extraordinarily customizable. That combination – pervasive + highly user customizable – is often deeply terrible to implement, for a whole host of reasons, including performance. Pretty much any time anybody twitches on DW, a whole cascade of logic has to be checked to see who needs to be told about it. So it occurred to me to wonder how DW does it, and how DW feels about its solution.
no subject
Then, every few years I start thinking "we should go ahead and do that ridiculous amount of work and make email-only notifications possible", and something promptly happens like half the email providers on the internet deciding that our email is spam and stop allowing us to email their accountholders YET AGAIN, at which point I look at the whole thing, am reminded that email is a Terrible Horrible No-Good Very Bad Protocol, and decide that it's not worth doing that ridiculous amount of work if it means losing the on-site backup record of unsent email notifications that people who are missing notifications can consult. (Like, yeah, if it were only a little bit of work I'd say we should go ahead and do it and anyone who turned off inbox notifs would just have to live with missing/delayed email when it happened, but the combination of it being a terrible horrible amount of work plus no longer having the on-site backup for when email is being Terrible again means I keep deciding it's just not worth it. Especially since, again, we have a ton of Modernize This Thing Into Something That Was Created This Millennium projects, and the existing system does work, just not with optimal UX.)
Personally, I just use the delete-all button on my on-site inbox a lot. ;) (Or filter by entry and delete-all for that entry.) There are definitely a few more UI improvements we could do to make it easier to manage large numbers of inbox notifications, we're just hampered by not really having any UI specialists.
There are a lot of things that annoy people about the site where the answer is "because in 200-mumble when it was added, there were no best practices yet and/or the people who made it didn't understand the use case and/or the userbase came up with some new weird way to use it that nobody thought of yet, and to change it now would be a much bigger deal than you'd expect." I blow people's minds sometimes when I point out that our code doesn't date from 2009 when we opened, it dates from 1999 when Brad came up with the first version of LiveJournal, and therefore becomes old enough to be a legal adult in the US this year. (I have a talk I give about working on DW that's called "When Your Code Is Old Enough To Vote" that goes into some of the upsides and downsides of working with a webapp this old.)
There's a shitton of downsides to having used the LJ code when we started, definitely, but there were (and continue to be) enough upsides that I still think it was worth it. I just wish we had more designers and UI specialists and frontend gurus sometimes.
no subject
I'm a lot more willing to support options and under-utilized features than
no subject
The code machete makes life better. It keeps us sane. Removing code removes bugs! Deleting things deletes security holes! It is all better!