strace’ing a Clojure process under lein

August 16th, 2016

Today I wanted to strace a JVM process to see if it was making network calls, and I discovered a minor roadblock: It was a Clojure program being run using the Leiningen build tool. lein run spawns a JVM subprocess and then exits, and I only wanted to trace that subprocess.

Read full entry »

GWT, standard library, and IncompatibleRemoteServiceException

July 15th, 2009

The GWT is a set of programs that allows developers to write Java code and compile it down into Javascript to be run on browsers. This requires you to use the subset of Java that the toolkit can emulate, but the compile-time and runtime error messages it displays are often not very useful.

I was developing a GWT application with Eclipse and ran into a client-server communication issue that manifested at runtime. The client would request an object from the server, the object would properly serialize and deserialize (verified by JS debugger), and then GWT's glue code would throw IncompatibleRemoteServiceException (saying "This application is out of date, please click the refresh button on your browser.")

Read full entry »

Studying what is instinctual

December 14th, 2005

I'm taking a quick break from studying for my CS 152 final. I'm currently on the Chapter 14 study guide, dealing with OOD. Now, this is something I find completely instinctual. Heck, I nearly reinvented it on my TI-89 graphing calculator, using BASIC. Then someone told me about Java, an OO language, and I just wanted to smack myself.

I've never thought about how a class hierarchy is designed -- when I go to make one, it just falls into order magically. I have gut reaction to improperly designed code. Unfortunately, I have to explain how it works on an exam, and my own description won't cut it. It has to match the book's description, which means I essentially have to memorize a specific description of something I know by heart. Bleagh.

I agree that being forced to think about something you've been doing unconsciously can be a good thing -- I don't dispute that. It teach you things you missed, and expose flaws in your subconscious reasoning. But when I'm forced to regurgitate formulaic descriptions, that's when I object.