Working with code can be both very very rewarding, and very very frustrating. And it can fluctuate from one to the other, in very quick succession.
Working with code can be incredibly feel rewarding when you write a piece of code and it makes the tests go green (for non-coders, every bit of code that you write needs to have a test written for it to show that it is doing what you want it to do…it works with the normal traffic light method, red = bad; green = good). Getting code to go green is apparently a good reason to walk around high-fiving people, taking a break or playing ping-pong, amongst other things.
It can also be very frustrating when you know exactly what you want the code to do, but after hours of trying every combination you think of, it just doesn’t do it. At these points, take a break. Walk away from your computer. Go have a chat with someone about something completely unrelated. If, when you come back, you still can’t figure it out, call for reinforcements.
Can we play with it?
For the first two weeks in Makers we were simply working on the back-end of coding. We were looking at what we could do with code, and what we could get the computer to do. Although this was incredibly interesting, and getting the computers to do what we wanted was fun, it was difficult to explain to people outside of the course what exactly we had “done” with our week.
In the second week we were working in groups to create a battleships game on the computer. Trying to explain this to friends outside of the course ended up with the predictable question, “oh cool! Can we see it? Can we play now”? Unfortunately, the answer was “no”. Unless you were a programmer, obviously.
Seeing is believing
So in the third week we started looking at how we could put this game up onto the internet so that both us, and our friends could play it. This strategy, I think, is what is commonly known as throwing people into the deep end. The Battleships game that we had created in the previous week was relatively complicated and thus we all struggled to get it up online as there were just too many different things we had to learn about.
This week, we get to try again, but with a slightly smaller programme, so that we can make sure we all understand the different parts that go into deploying a program onto the internet. We were asked to create a Bookmarks Manager, for people to be able to store their favourite websites. The general idea was that they need to be able to sign up, sign in, add links, view links, and sign out.
Although it is no where near perfect or completely finished, I’m quite proud of how far I’ve gotten so far, so here is the link to it if you want to take a look:
I’ve spent the day trying to get it to allow a user to reset their password via an email link, but it is proving very challenging, as it means I have to tackle the large topic of internet security. I haven’t quite managed to fix the issue but I’m much much further than I was this morning, and am looking forward to tackling the problem tomorrow, with a fresh pair of eyes.
I’ll keep you posted on whether I manage to fix it!