Hi, My name is Carl and I'm a software engineer and aspiring artist.
“W…what?” I hear you say. Java can’t have final interfaces! Sometimes however, it is convenient to expose an interface, but assert that API users not implement it. This is the case when multiple-inheritance may be needed, but you don’t want to break people’s code when adding new methods. This issue came up when designing gRPC stubs in Java. In this post, I’ll show a neat trick to work around it.
One of the lesser known parts of Java is InterruptedException. With its
vague-sounding name and non-committal Javadoc, few people are able to figure
out what they need to do with it. Since I myself didn’t really grok it, I decided to put together a post explaining how interruption works.
If you are looking for a more practical guide on how to handle it, I recommend
Dealing with InterruptedException by Brian Goetz. This post is more focused on how interruption works.
In order to be a good investor, you need to be able to determine if an investment is a good idea. A good investment is one that has a good chance of having high returns, and a low chance of poor returns. This seems obvious, but I find myself having a hard time keeping this in mind when trying to decide where to put money.