My name is Robert and I’m a Javaholic.
As I begin the process of pulling out my writings from another place and render them into a format suitable to be published here, I ponder again my programming habits. I’ve just finished reading up on Python, and have been wanting to stretch my knowledge of awk, sed, and shell scripting in general. So, why am I writing yet another Java program that reads in a file as a list of strings, manipulates those strings, and then outputs that list into another file?
Laziness is the big one. I’ve been programming in Java for most of my professional life, and I’m comfortable with it. I can scan an error log, read an obscure error message, understand it, mutter “Goddamit, I used indexOf() instead of lastIndexOf().”, and find my mistake before I’d have finished Googling the error in another language.
Plus, because I have written a lot of Java text-parsing programs, I’m used to this. I have a library of functions to extend out basic string and file processing, and one day I will actually make a JAR of them instead of just copying ParseUtils.java into every project that needs me. (Don’t judge me! All of my object variables are set to public access as well!)
But I think it’s the debugging that I like the best. I can fire up Eclipse and step through every line of my program, inspect every variable as it changes, and easily get a feel for what’s happening and what can go wrong. And maybe one of these days I’ll see about finding an IDE for Python or similar, but for now, I code what I know.