Welcome to my online portfolio, the complement/substitute for my resume. The opinions included herein are my own and do not reflect those of any client or employer, past or present. Please check out the new site: http://danieljohnsonjr.com

Wednesday, February 21, 2007

What people want and how I help them get it is my passion

I think the part of my job that I enjoy the most is finding out what people want and then showing them how to get it. I realize that is a broad statement, but I think it definitely applies to my primary motivation for what I do.

For example, at work we're working on this search tool, which I shared about previously. I've been talking with potential end users of the tool to further define its requirements, while my fellow developer is working to implement these requirements. I like that I can communicate to each group based on their needs; whether it's with a user who is not so savvy about technology or with my coworker about the nitty gritty details of a SQL statement.

It hasn't been just with this project either; I can see other examples with previous projects.

Monday, February 19, 2007

Lesson learned while on a mission critical conversion project

Here's a project I worked on where I learned an important lesson.

The client was a global consumer products company, and the project was to convert an Access 2.0 application to Access 95, which was a conversion from a 16-bit environment to a 32-bit environment. I'm not even going to claim that I understand what all that means, except to say that there were a lot of procedure calls to the Windows Application Programming Interface (API) that needed to be changed over. This application was used to facilitate preparing the company's profit/loss and balance sheets for all of their business units around the world. Hereafter, I'll call it the "financial reporting application".

Where I went wrong was that I didn't test portions of the program as I converted the code. It demonstrated a skill in programming that I needed to learn, and I learned that lesson the hard way because, once the program was "converted", i.e., all the code compiled correctly with no errors, there were other application errors that began popping up all over.

I created a tool to help me keep track of all the errors and the steps taken to resolve them and provided the client with daily progress reports.

As I think back on it, I would have done much better if I had taken more time to understand how the program worked in its prior environment and tested the program incrementally as I revised the code.

Friday, February 16, 2007

Making this blog more reader-friendly

I recognize that I have a challenge in maintaining this particular blog. As I continue to promote myself across the "internets," different people will be visiting. What will they find? I want this to be the default landing place for people when they are looking for me. To that end, I've recently updated danieljohnsonjr.com:

  • Stretched layout with more white space for easier reading
  • Added content from my other blog feeds to the sidebar, so you can see the other fun stuff I'm doing
  • Every post is labeled, so that you can find and read articles on the same topic
  • Comments are always open, so please let me know what you think!

Monday, February 12, 2007

Recent blog makeover

I recently gave one of my oldest blogs, Get That Job! a makeover. Here's a link to the specific post where I mention this change, which includes screen shots of how the blog recently looked as well as how it looked in its earliest incarnation.

I like that the new version of Blogger lets you assign labels to posts, and I like how it presents the archives. I think I'm going to explore a way to present items from that blog, as well as my others, over here.

Check it out and let me know what you think!

Deploying a much-needed search tool in the workplace

We have a limited number of licenses to use the payroll management software in our organization. As we have added more staff whose responsibilities involve using that software, those licenses get used up pretty quickly. It's not uncommon to receive 5 emails every day asking if someone would log out of the system so that someone else can get in to search something or run a payroll.

With some knowledge of the database, we've been able to develop a tool to work around the system by querying the server directly. In fact, this is exactly what I've done when developing the 401(k) reporting tool and other custom tools for the organization.

We have created a search tool that members of the organization can use to return some basic information about an employee. I may have mentioned before that we have several databases for different clients, and many times, we don't know the for whom the client works or in which database his or her records are. As a result, the user has to use trial and error to find the employee, which is time-consuming.

Our new Search Tool, which is what I'll refer to it as here, returns an employee's address and company name, along with whether he or she is marked as Active in the system. I have to give a lot of credit to my fellow developer for taking the intial idea I had, and, with some guidance on the SQL, has created the tool to execute the search.

I spent part of the day deploying the tool to different members of the organization who would most likely use it the most: One person from the Risk Management department who coordinates the paperwork related to unemployment claims; one person who is fielding calls from employees about not getting W-2 forms (probably because of an address change); and the receptionist, who helps out with overflow work, especially with respect to returned mail.

We're still building on to the tool while the application is in use, but we are developing in a separate environment. Once again, by having this application on a shared network drive, we can update the file on that one location as needed.

Saturday, February 3, 2007

Now on the Podsafe Music Network!

I recorded something on my saxophone for the Journey Inside My Mind Podcast, and, after a little while, I decided others should hear it and be able to play it on their podcasts.

Check out "Sax in the Rain" by Jazzmania Productions.

Jazzmania Productions on the Podsafe Music Network

Related tags:

Friday, February 2, 2007

Backing up the bridge applications and drive-independence

When I was developing the bridge applications, I had set the code up to recognize a "test" environment and a "production" environment through hard-coded filenames. It became cumbersome to change the filenames in code every time I moved the application to each environment. We also realized we needed to set up a "standalone" environment for the applications.

...hence, the need for the application to be made "drive-independent".

I wound up setting a property in one of the main VBA classes to "auto-discover" its environment as the application launched. That made it possible to move copies of the application easily among the test/development, production, and standalone environments.

While we're on that topic, every week we need to backup the copies of the bridge applications from the production environment to the other two. The reason for this is because there are certain changes made to some self-correcting features while payroll specialists run the applications each week. (I'll have to discuss these features in a separate post.)

For a few weeks I would manually navigate to each folder that contains a bridge application and copy the application file over to the other environments. That's okay for a couple of files, but as we started implementing this for several clients, it became very cumbersome.

The solution: batch files. I created batch files that copy all the files from the production environment to the development/test and standalone environments. What used to take 45 minutes now takes 1 minute. Way cool.