Christopher Thompson
[email protected]
LinkedIn
Resume
Project | Description |
---|---|
cct-tools | Collection of config files I use and system configuration for new machines |
cct-help | Collection of links, tips, documents I've found useful at some point in my career |
It is on men that safety at sea depends and they cannot make a greater mistake than to suppose that machines can do all their work for them
~Mr. Justice Cairns, 1967
It is my job to prove this man wrong.
Many people, especially junior developers, fear that they'll look stupid if they ask questions. My general response to that is... Get over it . If you don't ask questions, you won't get answers and that will be worse in the long run.
It's better to ask questions and look stupid now than not ask questions and remain ignorant forever"
~somebody on the internet.
Seems counterintuitive, but atleast trying something and failing will be better in the long run than never trying. You can learn from mistakes, you can't learn from doing nothing.
When developing something new there is a lot to gain by rapidly getting something working and then focusing on making it pretty and supportable long-term. We should strive for getting a working POC in the field within a few sprints so we can have something landable that can be reviewed. Then we can iterate rapidly on changes or improvements as necessary while having trust that the core is correct. This is not to say you should hack something together and call that a POC; it should be designed properly still. The intent is to get the core skeleton in place and approved/tested without waiting until 90% of the work is completed.
While not explicitly advocating for Test Driven Development (TDD), I’m a big fan of it.
Crafting tests can help drive error handling and verification
Knowing how you will test before starting implementation provides insight into what the code should be accomplishing
Maintaining passing tests ensures code doesn’t break
Maintaining passing tests allows for incremental changes to be tested easily during development
Maintaining a system that is functional enough to be tested ensures we can always test
Anyone can write a function that does what it’s supposed to with expected sane input. But good functions manage garbage gracefully and good tests ensure that
Don’t have an engine service to use? Make one.
Need a fake service to stub out functionality? Make one
Stubs help everyone, not just you. And they help in all types of testing
Tests should be easily repeatable, by anyone, at any time
Software will be broken somehow. The job of a tester is to be able to find exactly where and how the software is broken. It may not always be a major breakage, but something somewhere will not function perfectly correct. If you haven't found that yet, then you haven't tested enough.
Developed the application myMet-Sport which reads wind speeds from an anemometer attached to an iOS device’s 3mm headphone jack and displays the data to the user.
Developed the application UEi Air Flow which reads air flow speeds from an anemometer attached to an iOS device’s 3mm headphone jack and displays the data to the user.
Developed an iOS application that reads weather data from a Bluetooth connected device and displays it to the user.
Currently developing the application myBlue-T/H which reads temperature and humidity data from a recording device and outputs the data via email.
Developed a front-end of the WeatherSnoop Mac application which takes weather related information from a WeatherSnoop server or a Weather Underground station and displays it to the user.
Took over development of the iPhone application Benji Buddy that used Department of Defense data to predict the debt a student would accumulate in his desired college and desired major.
Developed the application iCuju, Soccer Guru as a side project with two partners. The application is table driven and allows the user to view diagrams and details of drills to coach his team while at practice.
Worked on the development of Festigogo, an application that displays information for various festivals around the country. The application would retrieve the information as XML files from the server and populate the tables and images. It allowed the user to login and store a customized schedule for a particular festival.
University of Louisiana at Lafayette, Lafayette, LA
May 2008
3.71/4.00
University of Louisiana at Lafayette, Lafayette, LA
May 2006
3.30/4.00