2009-12-26 Update

We had a Chicago Java Users Group meeting a few weeks ago. It went pretty well. Sten Anderson from CityTech talked about JavaFX, and Thomas Aikman from TransTech gave a speech on interviewing. One of my goals for CJUG is to have more than one presentation each meeting. I would also like to have some “business-related” presentations containing content to help members get and/or keep their jobs in today’s economic climate. Due to the recession, we will have to learn to do some of the things we went into software to avoid.

Some of the other meetings I went to were also pretty good. The guy who runs the Chicago GTUG also has a site about alternative energy called Bio Fuel Expo. I am hoping to find some way to use Java technology to promote alternative energy and mitigate climate change. In the past, every time I ask myself, “What can a Java developer do to reverse global warming and climate change?”, the only answer I come up with is, “Turn off the computer.” That would make producing an income rather difficult.

Image from Wikimedia, assumed allowed under Fair Use. Illustration of Theophilus and body of Timothy from Alexandrian World Chronicle, 5th century Greek chronicle.

No Fluff, Just Great Stuff

About seven months ago I won free tickets to No Fluff Just Stuff at a raffle at CJUG. NFJS is like a Java One that comes to you. They have also provided speakers for Java User Groups, including CJUG. I went, and it was great.

I did not mingle as much as I wanted to or talk to as many people as I should have. For one thing: I have a few upcoming expenses and not much income, so I was really depressed about that. I was in a better mood on Saturday and Sunday that I was on Friday. Plus there were a lot of people from the same company who were there in groups. (The organizer said that not many companies can afford to send groups to Java One.) I really do not feel comfortable interrupting a group of people to introduce myself. But I did talk to a few people.

Plus: I went into software because I am not Senor Schmooze. Now I have to do all the stuff that I went into software to avoid. And schmoozing with a bunch of people who hate it as much as I do AND are as bad at it as I am is really difficult.

I was also depressed because I have been slacking off on studying Java and other technology. But now I am more excited. Also I got a tip from one of the speakers, Venkat Subramaniam. He said that studying consistently starts a virtuous cycle: the more he learns, the more he learns. He had a talk on testing with dependencies that I liked.

Ted Neward talked about collections and generics in Java and using them to write Java applications that incoroporate concepts from functional programming. He said Ruby people like to brag that they can print out the lines in a file in one line. In Java, you have to instantiate a few classes, put them in try/catch blocks, and close the fine in a finally block (since closing the file can throw exceptions and those have to be in a try/catch block too). He used generics and collections to put most of that in a class that did all that stuff. Then in his main Java class he instantiated the class, using the path as the constructor argument, and in the for loop printed out each line.

Granted, he earlier said that every time you write a for loop god kills a kitten.

But he made up for it by referring us to a few good websites: Functional Java and Apache Commons Functor.

Mark Richards talked about JMS. There are a lot of trading firms in Chicago that want people with JMS knowledge. He also talked about JMS and Spring. I asked him if he would be willing to come out to Chicago to speak at CJUG and he said he would. He also used some Scala and Groovy in one of his talks. I did not like the look of Scala. But I will look into Groovy, since I need to look into other languages.

Matthew McCullough gave a talk on Maven. I will definitely look into it.

First I go to a talk by Matthew McCullough, then Tim O’Brien hands out books: I encounter two guys with Irish names in one week who are connected to Maven. Coincidence? I think not.

I also saw a talk on Java concurrency by Brian Goetz. It would be a cliche to say, “This guy wrote the book on Java Concurrency in Practice,” but he did. You can get it at Amazon. Sun thought it was so good, they hired him.

So I will be more diligent about studying. If you have a chance to go to No Fluff Just Stuff, you should go.

 Image from Wikimedia, assumed allowed under Fair Use. Illustration of Zechariah from Alexandrian World Chronicle, 5th century Greek chronicle.

2009-10-07 Java Update

I am a day late, but here are my updates, and they are all Java related.

I am now the president of CJUG (Chicago Java Users Group). I am compiling a list of other Java user groups, and I will contact them to ask for some advice on running a JUG. I am also in contact with some past CJUG people, but I think more perspectives would be good. I also have a list of questions that I will be asking. I will first contact the JUGs that have web sites. Some of them only seem to have mailing lists (usually a Yahoo Group or a Google Group) and not actual web sites.

I also won an IntelliJ license a few months ago at a CJUG raffle. I got the key just a few weeks ago. I have not spent a whole lot of time with it yet. I just got my desktop in order, and I am still looking for a job. I need to decide what Java projects I will do, and what I will study. I may get more involved with James, I have not decided. There is another Apache project that looks interesting.

I also have not done much with Shelf Unit. I may give that a go with IntelliJ. I am also thinking about doing a few apps with Google App Engine. Someone presented on that a few months ago at CJUG, and it was pretty interesting.

 Image from Wikimedia, assumed allowed under Fair Use. Illustration of Anna the Prophetess from Alexandrian World Chronicle, 5th century Greek chronicle.

Another Update

The CJUG election has not happened yet. Only myself and another person were up for the four positions. But I spoke to a couple of people afterwards, and they agreed that a regular mailing list might help bring some publicity to the group. One said he never checked the Yahoo Group.

Also, I am still working on Shelf Unit. I am testing out the Struts and JSF versions. I am also looking into JUnit and adding some tests. It looks like unit testing database operations is a big pain. I asked a few people at CJUG last night about this, and they mentioned Hypersonic, DBUnit and JMock. So it looks like I have to learn five things just to do one thing.

Image from Wikipedia, assumed allowed under Fair Use. Illustration from Codex Washingtonianus, a 5th century Greek manuscript.

President of CJUG

The Chicago Java Users Group is having board elections. I put my name in for president.

I have been going for a few years. For a while there were a lot of people. They had some pretty big names come in: Gavin King, Martin Fowler, Marc Fleury. Then for a while it was pretty bare. Sometimes it was just me, a guy named Rakesh (the acting president) and the presenter. Now there are 20 people or so at each meeting. So Rakesh has done a good job of building it back up.

I have a few ideas about building CJUG up. I would contact other Java Users Groups for some ideas for one thing. I would move the mailing list from Yahoo Groups to a regular list. I spoke to someone who spent a year in Salt Lake City. He told me that he got a lot of reminders about presentations in Salt Lake City, and not much from CJUG. I know you can have Yahoo Groups messages emailed to you, but I still think that the site and the list should be connected. Making the list more accessible might bring a few more people in.

Image from Wikimedia, assumed allowed under Fair Use. Illustration from Charioteer Papyrus, 5th century book fragment.

Shelf Unit

A while back I made an app called “ShellfSpace”. It was available as ShellfSpace.net. It was a Java app that allowed users to enter information about websites (URLs, file extensions) and specify whether or not a site worked on Linux or other Unix-based OS with a browser other than IE. This was back when dot NET started and Microsoft was starting to push Trusted Computing.

I also did it so that if I ever needed to look for a job I would have something to point to. Well, now I am looking for a job, and I need to have something to show off. So I may bring it back to this site. I will also post on my blog about it as well.

I  called it “ShellfSpace” as a joke. I spelled it with two L’s as a pun on the fact that Unix-based systems are accessible via a shell. But I got tired of explaining that, so after a while I just let the domain expire and I just abandoned the site. Now I will call it “Shelf Unit”.

I may also post the source code to it as well. I first wrote it in servlets, then in Struts, and then in JSF. I may post the source code to every iteration.

Image from Wikimedia, assumed allowed under Fair Use. Section of a fragment of 2nd century Greek manuscript of an unknown romance.

Joining Apache James

 I decided to become involved in an open source project: Apache James. The goal is to make a mail server in Java, as well as provide some supporting libraries.

I will have to learn some more about Maven and svn. I think that my first contribution will be to the documentation. It is a bit hard to get started, both as a user and as a contributor.

Image from Wikimedia, assumed allowed under Fair Use. Section of a fragment of 2nd century Greek manuscript of an unknown romance.