Why Richard

Passion

Software is what I do, when not on a for hire project I find something else to work on for fun. I am like a kid with an Xbox, trying to get to the next level.

Flexible

I can pick up on new technologies very quickly. Just because a may not have experience with a particular framework does not mean I can not deliver. I have worked with so many technologies that adding another is a simple task that will not slow down progress. If you need beyond the routine, I will jump in and tackle the challenge. I have done so on many occasions.

Examples:
  • With zero experience in python, I was called on to do a task of automating the creation of a database from a several text files, each representing a table. This involved reading a text file, setting the data types, generating and executing the script. A class was created to handle the creation based on table name and text file. It was called from the main script. This was completed in a few hours.
  • I was hired to update features on a project that was written in Livecode and CLIPS. Job completed within the desired timeframe and a happly client.
  • This applies to frameworks also.
    • I was hired to add features to a project in codeigniter. I had no experience previously but delivered to another happly customer. MVC is MVC no matter how you slice it.
    • Also hired to work with Struts, Spring, Velocity, Ibatis with no prior experience.
    • I built this site on Fondation, just because I had never previously used it and wanted to be more mobile friendly.
  • My first day with ruby I was reading files, created objects containing arrays and hash objects. matching lines to regular expression, populating the objects from the matches iterating the objects after custom sorting of objects(much easier in ruby than other languages) and reformatting for output.

The take away from all this is that what counts is the experience I have in working with various languages, frameworks, databases and other technologies, not whether I have experience with your particular technology.

Automation Oriented

I look at projects from many angles and look for ways to improve the process. I think beyond the routine and implement creative solutions.

Examples:
  • I automated myself out of a job when I worked in building automation. I wrote scripts to read spreadsheets from our design team and create an importable file containing all of the controller point configurations with programs written automatically with the points substituted into the code. Manually configuring and coding on a large job takes up to 80 hours, the automation took about 20. After the inital automation, 80 hours of work could be reduced to a matter of seconds. Then I went on to write an application to talk to the control system's com object to automate the testing and create a pdf file of the test results to prove that the system is working properly.
  • For a custom cms system I worked on, whenever new data objects were needed, it required the creation of the database tables, ibatis maps, spring beans, java objects and the dao classes. I reduced this down to just creating the database table script and reading that into another script to create the objects, beans, classes, mappings and dao class. The time it took to write this is the same amount of time it would have taken to create all these items individually, so no extra cost the first time but cost savings on every time since.
  • I have built several tools to help streamline development such as editor plugins, content browsers, documentation generators and layout design tools.