Facilities I'd like to offer in a later version
A wish list of facilities I'd like to add.
csi18n currently supports resources with a limited set of text-based mime types, such as text/plain; text/html etc.
It would be useful to store binary types too. Examples:
- image/png. A specifically created overlay on top of a cartoon could render alternative language text 'as if' it was part of the original.
- audio/webm. Hear/record/distribute a translation of that TED lecture dialog in your language - no reading skills required of your audience.
- video/mp4. I could imagine intertitles making use of this, I could imagine public service announcements using it too.
- application/vnd.ms-powerpoint. Do you use these presentations as a teaching aid? How useful would it be that alternate language versions were available?
With binaries, people would also be able to upload suggested translations of (say) Glaswegian English from video into a voiceover ... which would see the translation with broader acceptance bubble to the top.
There is just the one server right now. It would be useful to have several around the world, with replication between them, leaving software clients to work out which gives best service.
All requests received are routed directly to the origin server. For testing purposes as well as performance reasons, I'd prefer to route traffic first to a local cache, even a load balancer if warrantied.
Security cannot be taken too seriously. I would commit to:
- Private analysis. Were there funds to do so, I'd contract someone to Blue Team the existing security. I've done the best I can, but I doubt that's enough. Blue Teaming would happen regularly.
- Public analysis. Under strict conditions of course I'd offer up a server on a private network that the 3rd parties could Red Team over the Internet. The kind of conditions I'm thinking of include:
- All attacks must be made from machine A which is available over the Internet
- All attacks must be against server B which machine A can reach over a private network
- DoS or attacking A doesn't count.
The existing implementation requires client software to specifically poll for updates. An advantage of WebSockets is that change-polling can be shifted to the server, thus saving bandwidth and improving responsiveness.
With WebSocket support, csi18n would provide a more seamless background for realt-time collaborative endeavours.