Skip to main content

Posts

Showing posts from October, 2013

Proxy Voting Systems

As a senior-level software engineer, I work with political systems every day. When I design a software system, relationships between people drive system requirements - the needs of the stakeholders need to be balanced so that the company can create value. The right system can improve how people work together and reduce infighting. This may include by coordinating user activities or surfacing new analytical information. Usually the kinds of systems I work with and am most interested in involve business activities like extracting data from websites, publishing news articles, selling products or tracking resource allocations. I don't normally blog about government politics. The occasion for this post is the reopening of the federal government after over two weeks of shutdown and the last-minute aversion of a default on US sovereign debt. On the one hand the crisis was created by a populist movement with some important ideas - but on the other hand the current political system wasn&#

Generating a Self-Signed SSL Certificate

I recently switched some web services to use SSL, and I was surprised that I couldn't find a good non-interactive script to generate the files needed for Jetty and other Java containers. After working my way through writing the script, I have decided to share my approach. This script generates a SSL subdirectory of whatever folder it lives in, and to that directory it adds a password file, certificate and a Java-friendly PKCS12 version of the certificate. And then I have my Maven build process copy the generated files into the base of my classes directory. The embedded Jetty instance needed an input stream of the PKCS12 file and the contents of the password file to create a SSL connector. Reading from the classpath can be a bit tricky - I should post about that later. From past experience, I think Nginx also requires the certificate file when configuring SSL.