Technical debt
Nov. 16th, 2010 10:35 am![[staff profile]](https://www.dreamwidth.org/img/silk/identity/user_staff.png)
If you aren't familiar with the term technical debt, it basically refers to decisions that organizations and software projects make to get things done now in exchange for having to fix it later -- borrowing time from the future, essentially, in order to get things accomplished now. Repaying your technical debt can involve a whole host of activity from code refactoring to cleanup work to system documentation, yadda.
kareila has been doing yeoman's work in making massive interest payments on the 10 or so years' worth of technical debt that the DW codebase has accrued, and we have a bunch of bugs open (why-cleanup, why-dev, why-optimization, and about 1/3 to 1/2 of why-usability) to repay some more of it. I thought it might be time for a group evaluation of our outstanding technical debt, though, and brainstorm ideas on what we can do to make more payments.
So, what other forms of technical debt do we have "on the balance sheets", so to speak?
Things I can think of off the top of my head:
* finish converting the whole site to TT
* better install docs
* better "so you want to admin a DW clone site" docs
* finish moving cgi-bin/lj*.pl files into proper modules (in cgi-bin/LJ)
* better in-code commenting (ideally each method in User.pm would have a comment explaining what it does and how to call it, for instance)
That's just an example list, though, and I'm sure I'm missing stuff! What bits of 'technical debt' have you noticed?
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
So, what other forms of technical debt do we have "on the balance sheets", so to speak?
Things I can think of off the top of my head:
* finish converting the whole site to TT
* better install docs
* better "so you want to admin a DW clone site" docs
* finish moving cgi-bin/lj*.pl files into proper modules (in cgi-bin/LJ)
* better in-code commenting (ideally each method in User.pm would have a comment explaining what it does and how to call it, for instance)
That's just an example list, though, and I'm sure I'm missing stuff! What bits of 'technical debt' have you noticed?