Safe For Seneca

Back in 2009 I wrote a post complaining about the needless complexities plural forms introduce to the i18n process. Now I ran into them again. Working on the OSTD I have to make sure I work with all kinds of PO files, and that has to include PO files with plural forms. The format of …

Continue reading Plural forms, again

A long long time ago I decided to do an experiment. I ported my open source application ISO Master to Windows, and kept the port as proprietary software. The experiment paid off, and I definitely made enough money to pay myself for the porting work, but that was then. In december last year my webserver …

Continue reading Shareware bandwidth

There are a number of articles and blog posts out there trying to explain scope and closures, but overall I’d say that a majority of them aren’t crystal-clear. No sh**. I’ve been trying to figure out how scope works in JavaScript on-and-off for the last several years. I was never a committed JS programmer though …

Continue reading Scoping in JavaScript

If you read the slightly older post and look at its screenshot and do some thinking – you might like me wonder this: given a bunch of JSON with multiple selections which can be modified in JavaScript using a form.. wait, modified using a form? One of the nice things about json is you can …

Continue reading Modifying JSON using a form

PHP has this really neat function, json_encode(). It can take an object of whatever type, including my own class with child arrays/classes, and make a valid JSON string out of it. I was going to write this function myself but I found PHP already has it. There’s one concern I have about it – it …

Continue reading Scary json_encode()

I got to implementing one of the primary use cases for OSTD – user uploads a template .pot file and gets a bunch of .po files with as many translated strings as possible. From a design point of view this isn’t a big deal: parse the .pot into a data structure, make a query per …

Continue reading Translating template files