Tinkering in the Trenches
This is my developer blog where I talk about issues around building software.
-
Creating Swift Projects in CLion
—
Swift is a modern language with a little teething trouble, but it is still worth a look. If you are like me and you do not want to work on a Mac if you can avoid it, your choices of development environments are rather limited at this point. Here, I explain how to create a Swift project with Jetbrains’ CLion, for which Jetbrains develops a Swift plugin.
Continue reading… -
Signing Websites
—
Today I reread some thoughts of mine on how super-computers may engage in battle. What I wrote got me thinking in another direction: how can we, even today, be sure that what we read on the internet is what the alleged author intends us to see? Especially if our connection to the webserver is not encrypted, man-in-the-middle attacks are a very real possibility.
Continue reading… -
Quick Images with TikZ
—
How do you create high-quality technical images for documents, your website or posts on Stack Exchange? I have used tools in an ad-hoc manner for a while and have become frustrated lately. Once you have used TikZ Check out the awesome gallery of examples and the comprehensive manual. with LaTeX most other tools feel inferior. The only problem is: TikZ is a LaTeX package and can not be used on its own. So how to convert TikZ to, say, PNG comfortably?
Continue reading… -
Lazy Deserialization in Java
—
While coding away on our master’s project, my team and I faced a problem. In our setting, users provide Java byte code to a client application which instruments it and passes the resulting JAR archive to remote servers via RMI. The servers execute this code in separate processes and feed it inputs values fetched from the client, again via RMI. Now, this can be a problem as users may provide their own implementations for those input values. Both client and separately started processes have, of course, access to these implementations, but servers may not.
Continue reading…