EarthQuake Filter searches the USGS earthquake database and creates a list of earthquakes and plots them on a map. You can alter the settings to adjust the dates, location, and size of the earthquakes you want to see.
I started out calling this “QuakeFinder” but it turns out some other company is already using that name and so I had to change it in order to put it up on the play store.
The project started out as a code challenge for a job I was applying for. I did not get the job, but I do have a cool (if unused) app on the play store now.
I enjoyed doing this project. It pulled together a lot of the things I learned while at Epicodus and was a good review project. I also got to see how Google Maps work in an app. (They look cool, but are so easy to implement it’s not really worth bragging about.)
The main thing that I struggled with was the tests. I knew they would want some, but we didn’t get much help with how to do testing on Android during my time at Epicodus and testing on Android is a bit more complicated than unit testing in Java!
If I could do it over again, I’d start with the tests. I think it’s hard to develop testable code if you do the tests after the code is written. Trying to figure out what to test when “everything is working fine” is much harder than writing tests from requirements.
One reason is that it’s easy to throw a lot of things in the same class whether they belong there or not. Test would have helped break down the structure of the project better in the beginning.
The other challenge is that the Android apps are all tied so closely with the UI. Well, that may be poor structure as well.
The problems I had did make me think more about how an app might be designed better in the first place. I’d like to think that my next “from scratch” app will be better for this thoughtful review.