The whole about.psyc.eu website is a TODO in progress, and each software package has its TODOs, but here's a general list of things we need to get done before we can release a 1.0 (or think of it as a 10.0, considering how usable psyced already is - even while we renew the interserver protocols).
As it stands, PSYC does some things better and some things worse than other technologies. Even though a psyced installation does a good job in production use and everyday life, and has been doing so for a decade now, our list of things we want in PSYC as a protocol, before a serious amount of installations is out there, isn't too long but not too short either.
So here's our techie roadmap to PSYCland:
- Write the Specs.
- Fix websites so that they do a good job and can resist a slashdot or other sudden attention spike.
Things to be done in psyced:
- Use libpsyc (and thus the spec), Luke.
- Entity orientation in psyctext so all the stupid _nick* vars can be left out of the protocol (currently in #define EXPERIMENTAL).
- Bugfixing of course (that's no fun, but we're making progress).
- In order to achieve psycish visions such as crypto sharing we realized a bytecode-based flagship isn't going to get us there, that's why we are looking more closely at Saikound now.
Make sure the following is working:
- Friendships (protocol looks imperfect as it is currently. should become a regular context subscription thing).
- The big keyword naming revamp, implement compact mode and become fully inheritance compliant (all issues depending on each other, so need to be solved together).
- We can specify all nice optional extensions one by one.
- Let's publish a stable interserver PSYC protocol first. Later we provide a stable client protocol interface, which is still optional for PSYC to already serve a purpose in a world full of IRC and XMPP applications in need of a better interserver infrastructure. It is certainly worth separating, as native clients require a lot more than interserver.
Things done since I made this page.
- Friendcasting of generic messages.
- Specification in progress.
- New syntax, new rendering and parsers to go with it.