This week has been quiet, mostly stress-free and successful in terms of finishing a project brief with some suggested extensions. So why then do I feel dissatisfied?
As a reminder, I have just finished my 8th week as part of Cohort 7 at Codeclan in Edinburgh, doing a 16 week course in programming. We’ve learned about Ruby, SQL, Sinatra, Java and Android development. This last week we worked individually on our own Java/Android projects.
I chose probably the most boring of the briefs:
Goal: Practice OO modelling in Java (unit tests, no UI)
You are required to build an app that allows a Shop to sell goods to a Customer. Stock and items are not important.
The Shop must be able to:
- Make a Sale
- The customer funds go down, shop sales go up
- Give a refund
- The customer funds go up, shop refunds go up
- Report on income
- Total sales minus total refunds
The Customer must:
- Have a collection of possible Payment Methods:
- CreditCard (default), DebitCard
- Be able to select a Payment Method to pay at any Shop
- Be able to select a Payment Method to receive a refund onto a given Payment Method
(You may find HashMaps useful for this project)
And they were right, I did find HashMaps useful for the project. In fact I probably spent the majority of time during the project week learning about and using Java HashMaps.
Briefly a HashMap is a set of key/value pairs. As an example I used one to keep track of the stock in my store, so “‘dancing bear’, 3” would be one of the set of the HashMap of items in stock, with the name of the item as a key and the number of items in stock as the value. (The shop “BearsRUrsus” does a fine line in dancing and fortune telling bears, as well as the more ordinary varieties.)
See, I told you it was boring.
So I got through the week and on presentation day I was blown away by all the cool Android projects the others had done. I was most impressed by those who were doing purely Java projects but finished early and went on to put their code into an Android app when they didn’t have to to meet the brief. It made me feel like I didn’t really do enough work.
It’s not unusual to be dissatisfied with the work done; in fact most of the people I spoke to felt they could/should have done more, so it’s not just me. It’s a normal reaction among ambitious people who want to push themselves. I never would have put myself into that category, but I do feel like I’m taking on a new work ethic since starting here.
I added fireworks to my presentation, and showed off some nifty reworking of code I was particularly proud of, but the highlight was this vintage postcard I found that sums up our cohort pretty well, at least in terms of project themes (in which bears and card games feature heavily).
I wonder which bear ordered the delicate glass of wine?