Wednesday, June 10, 2009

Another leap

I took a bit of a leap today and registered for the Open Source Bridge conference. This is a small conference in Portland with technical and business sessions. Some of the technical sessions cover Drupal, MySQL, PHP, and JavaScript. The business sessions cover things such as organizing an open source project, working with the government, and bootstrapping an open source business.

I wish I had learned about this conference earlier - I could have saved on the registration fee and airfare. Oh well, we make do with what we have!

Easy as Perl

I modified the Source-Stat collection programs to accept command-line options for the host name, database name, and project name. The modifications were easy. Very easy. The GetOpts::Long package does the heavy lifting; all I had to do was include the package, define the options and their container varaibles, and call a single function.

The ability to add functionality this easily comes from CPAN, the collection of Perl libraries. Knowing what is in the library is the trick; I stumbled across this library. I've written a number of Perl programs in the past few years; I wonder what things I have built that were already available. Time to go looking for an index into CPAN.

Tuesday, June 9, 2009

More database progress

And with a little more persistence this afternoon, I expanded the Perl program to insert records into a database table. This test shows that I have the proper rights granted and the proper SQL syntax for updates.

Next will be some improvements to the programs on the remote computer. They collect statistics on source code. I have the raw lines of code (LOC) and now need to collect the source lines of code (SLOC) which is the count of program lines. SLOC excludes comments and whitespace. To collect that I need filters for source files. C, C++, C#, and Java are fairly strightforward. Perl, with its =cut blocks, here files, and regular expressions that can be delimited by anything make the comment-removal task somewhat trickier. I may leverage a program such as SLOCcount.

I also need to add some options for the database name and host computer. I've hard-coded those values for the first version, so I could focus on the DBI and SQL portions. Now that they are working, I can make the program more flexible.

A little database work

With a little perseverence this morning, I wrote a small Perl program that connected to the SourceStat database. Using DBI made the job quite easy. I had a few errors: wrong database name, comma when it should be semicolon, and things like that. But nothing significant.

This program shows that I can connect to the database from a remote computer. Next will be a shell/Perl program set to update the database with some statistics.

Tuesday, June 2, 2009

What I did right

I have been doing a number of things in my leap. Some thoughts on what seems to have worked well:

- Have a pile of cash. I had saved for a few years before leaping.

- Exercise. Every day, if possible. It gets one out and interacting with people. And exercise is good for you!

- Keep a normal routine. I get up at the usual time and go to bed at the usual time. Dress as if going to work.

- Keep a normal diet. I have three meals a day, just as in the office. I avoid the temptation of M&Ms and such during the day. (Usually. But I had a stash of M&Ms at the office too.)

- Network. Meet people. I suspect that the job will not come from a job board or a recruiter, but from a contact of a contact who I happened to meet at the local grocery store.

- Keep on top of finances.

- Post on lots of job boards. Yeah, I'm expecting the opportunity to reach me through a contact. But you never know.

- Plan the day. I start with a list of tasks for the day. Some days have more than others. I usually prioritize tasks into three categories: must do, want to do, nice to do.

- Use technology to your advantage. I use e-mail and on-line folders to organize and store messages. I use an on-line calendar to schedule events.

- Use social networks. I use LinkedIn, LiveJournal, FaceBook, and MySpace. LinkedIn is the professional network. The others are for friends; I use several because friends are on different networks.

- Set up weekly routines. I have a routine for visiting job boards: some on Monday, others on Tuesday, etc. For each week I repeat. (I allow variations for holidays and other events.) The routine keeps my postings "live" and up to date. Theoretically, a newer posting should appear higher in the results list.

- Use time and resources to your advantage. I use my computers at home to learn new technologies. This month I am learning PHP and MySQL. The experience is not as intense as in the workplace and does not count as much, but I gain a degree of familiarity.

- Attend non-search events, but keep your search in mind. I play trivia with friends on Monday nights. I use it as an opportunity to talk with other people and let them know about my skills. (But only for a few minutes. People are there to have fun, not find me a job. Don't be pushy.)

Those are the things that work for me -- or at least keep me sane. I'm probably missing a few. What would you add?

A new approach

I'm taking a new approach with recruiters. Rather than wait (passively) for them to approach me with opportunities, I will reach out to them on a regular basis.

I started this week by selecting a few recruiters and sending them an e-mail with a description of my current activities. I have two objectives: let them know that I am developing skills, and remind them of my existence.

One might say that this is a form of advertising.

Monday, June 1, 2009

Interviews, serendipity, and free stuff

The phone screen never happened -- the client has deferred interviews until later in June. It sounds like they are quite busy, and I know how frantic things can be.

I interviewed a staffing company, and that went well. They have a number of opportunities, some north of the city. They sent me some general information and I expect details on positions later this week.

Friday is trash day in the city, and on the way home, I passed a pile of trash with a ViewSonic P815 monitor. It seemed to be in good shape, so I took it home. It does work, as far as I can test it. The monitor powers on and displays the configuration menu. (So the tube and the logic work.) I need a cable to attach it to a PC; this monitor has a detachable VGA cable, which was not included.

Friday evening saw a meeting of the local ACM chapter. I was elected to a member-at-large position. Six months ago I would not have considered running, as I had no time and no confidence in my abilities. Now I think it will be a good way for me to contribute to the ACM and its work with students.

Linkedin has yielded a contact with job opportunities. The person runs a small search firm and has an opportunity somewhere in the state. I have a call scheduled with him this afternoon.