Show All Projects
I've told the story of this program in a few job interviews...

It was the second week of an unpaid Web Design internship with Orange County government and I finished whatever small tasks I had been given. They wanted to give me something to occupy my time. The task they had that no one else wanted to do was take a folder of 3200 MSDS (Material Safety Data Sheet) PDF files and make sure each had a corresponding database entry. They gave me a dump of the database table as an XLS spreadsheet and told me to look for they matched and correct either one when there were discrepancies.

I started doing it but it was incredibly tedious and slow. I was falling asleep. So I went to them and said, "Look, I can write a program to do this. I'm going to go home and do that." They laughed and let me go. They clearly thought I was making an excuse to go home, but I was an unpaid intern, so they didn't care.

I knew I would need something to work from when I was at home without access to the files, so I used a tool I found to create an HTML list of the PDF folder and took that and the XLS file. When I got home I wrote CreateDummyFiles to create zero-byte files from the HTML list. Then I spent the rest of the night building a tool which would iterate through the spreadsheet looking for matches in the folder. It could auto correct minor differences like spaces to underscores, but if there was no match or auto corrected match, then it would suggest possible matches based on the longest word in the filename.

When I came in the next day I told them I had the program. I assumed they really didn't believe my reason the day before, because they seemed like they didn't know what I was talking about. By that afternoon I used my this program to finish the work. They weren't really sure what to do with me at that point since they expected that going through all of those files might take two weeks.

Surprising them like that definitely got some positive attention. It played a role in the fact that a little later that summer I was changed to a paid intern. And when I went back to school they let me continue to work remotely.

Files

Screenshots

Example that couldn't be automatically matched but showing a manual search.