Suprise Inspections
By Adrian Sutton
My house mate informed me this afternoon that the land lord would be coming around tomorrow for an inspection. Hilarity is currently ensuing. It random matters of interest: This was interesting – living muscle tissue powered nanodevices – and I was always told to think big…. ant has proved itself much easier to set up multiproject builds than maven which is kind of unfortunate since maven forces you into performing multiproject builds quite a lot. Might have to create a decent maven plugin to handle multiproject builds automatically instead of manually having to set up the reactor. Combining the generated website and producing a combined distribution seems to be the key to this. Obfuscation is evil. I spent all day trying to get it to work for me. Stripping out unused classes (including in dependant libraries) automatically is also evil but not quite as much so. Someone really needs to slap proguard and retroguard around a bit to share some features. Currently proguard has a brilliant config file syntax but renders itself completely useless due to the fact that it can’t handle resources correctly while obfuscating (still good for jar shrinking though) – retroguard on the other hand can’t handle SomeClass.class syntax (which proguard can) and has an awful configuration file syntax (no wildcards). I had to write an ant task to automatically list all the classes in org.apache.xerces since it really doesn’t like being obfuscated. For the record, we obfuscate whatever we can because it noticably shrinks the resulting jar file size by changing things like MyVeryLongMethodName
to a
. Think of it as lossy compression for java classes. Tomorrow I plan to spend most of the day swearing about a bug which is causing our applet to stop repainting after a certain point in time. We only managed to reliably replicate it this afternoon and the process of replication is still pretty difficult. On the plus side, we’re still on track to release the product last Friday. :S