Xcode – Facts App

HeScreen Shot 2015-02-21 at 16.27.20re is a screen shot of a ‘running facts’ app that I created in workshops. To access new facts, you can either click on the next/back buttons or swipe left/right across the screen. I am pleased with my first app and although it is fairly simple, I learnt lots of useful techniques. I will briefly explain some of the features I learnt and reflect on how this is important…

Screen Shot 2015-02-21 at 16.34.07

– Adding text labels and connecting them up with the view controller as an outlet or function. This is important as our Magna Carta app is bound to have some text in so learning this is essential.

– Changing fonts and colours. This is important as our app needs to look visually appealing and the use of colours and customiseScreen Shot 2015-02-21 at 16.39.03d fonts will enhance this. The aesthetics of the app are important, so it is essential that the colours and font we use match the style guidance given by Salisbury Cathedral, in order to successfully meet the clients requirements.

-Using constraints. This is useful as it ensures that the Screen Shot 2015-02-21 at 16.46.10layout of the text/images is clearly structured. The constraints mean that no matter what device and whether it is held vertically/horizontally, the layout will remain consistent and adjust accordingly. Having an app that is clearly structured and laid out is important as it makes the users experience more satisfying.

– Using an array of strings. This is important as usingScreen Shot 2015-02-21 at 16.50.49 arrays help to save time when programming. It means the text can be altered easily and the app will run through the array of facts. If the app consisted of Magna Carta facts, then this feature will be required.

– Using swipe left/right gestures. This is important as usersScreen Shot 2015-02-21 at 17.13.23 expect an contemporary app to have common gestures. It enhances the app and makes it easier for users to quickly swipe through the various facts.

Here is the code for the app:

Screen Shot 2015-02-21 at 17.00.18
Screen Shot 2015-02-21 at 16.57.04Overall, I am pleased with my facts app and how it turned out. I like how the text is clear and easy for users to read and I think this is extremely important. I also like the clear layout, and think using constraints is essential in order to make an app look visually appealing. Next time, I would possibly make the font size of the facts slightly smaller, as well as experimenting with different colours behind the title. From this, I feel that it is essential to go on to explore more gestures, such as pinch, rotate, tap and pan etc. These will all help to enhance the users experience and make the app more contemporary.

Improvements – Shapes, Size, And Speed

Some suggested improvements I received when testing my piece was to possibly add more of each of the shapes. As well as to possibly make the speed at which the object fall slightly faster, and to make the size of the objects more varied.

Here is the code for initialising a new object and setting the size range, of which I changed the range to random(10,30):

Screen Shot 2015-01-13 at 17.02.10It was also suggested that I should have more objects, which I altered easily in the object arrays, where I can choose to have 0-infinity objects:

Screen Shot 2015-01-13 at 17.04.39

Changing the speed at which the objects descend has to be done in the individual classes constructor. I edited the yspeed so that objects descend and ascend slightly quicker:

Screen Shot 2015-01-13 at 17.06.50

I feel that these improvements have benefited my piece, highlighting the importance of carrying out user testing. I decided against turning my piece into a game as felt it would be too easy. As users could easily put out both hands and prevent the shapes from falling, like this example…

Screen Shot 2015-01-15 at 13.10.58

From this, I will go on to test my piece in a studio room, capturing more of the persons body rather than just the top half. Allowing me to see if there are any further refinements I could do before displaying my piece in the public space.

Experimenting With Processing

In order to be able to advance my coding knowledge in processing, it is important that I fully understand all the basics that we have explored in previous workshop. However, as I didn’t feel entirely confident in my understanding, I have been watching lots of Daniel Shiffmans’ videos. Focussing on the skills I need to produce my idea, I further explored object-orientated programming. I felt that the knowledge I gained from the workshop was sufficient but felt I didn’t fully understand it. In specific, I looked at videos that taught me about classes, what they are and how to create them. As well as looking at arrays, what they are and how to use them, whether it be for 3, 100, or infinity amount of objects. From watching the videos I feel my understanding of object-orientated programming has developed, and I used this knowledge to produce a piece, that consists of 3 classes (circles, squares and rectangles), which continuously gravitating towards the bottom of the sketch. I produced an array of each class and set it so a certain amount of each shape appears. I also randomised the size of each so you get lots of gravitating shapes of different sizes. As well as setting up an if statement so that when the objects reach the bottom of the sketch, they start descending from the top again. Here is the outcome:

By carrying out more research on processing, I have been able to develop my skills and become more familiar with object-orientated programming. Classes are a template for an object, consisting of unique data and functionality, and an array is a list of data. What I learnt and have produced will be useful towards my final interactive piece. Next, I will further research video capturing, motion and thresholding.

Shiffman, D, 2014. Vimeo – Shiffman’s Videos [online]. Available from: http://vimeo.com/shiffman/videos/ [Accessed 24 November 2014].

Processing Workshop – Functions and Arrays

In todays workshop, I developed my processing skills and learnt about functions and colour arrays. Here is a video of what I made

Screen Shot 2014-10-27 at 14.48.23I learnt how to draw basic shapes, in this case a square an triangle in order to make the house. I then used existed knowledge of for loops and rotation in order to made the houses and ellipses rotate. I learnt how to setup an array of colours, which I did using different hex values. As well as well learning about using functions and arguments, in this case the house was the function and the arguments were the sizes and colours. I also learnt how to make the video so I clearly show on the blog what I have designed in processing.


This workshop was useful as it allowed me to develop my processing knowledge. The use of arrays is particularly useful as if I want to create an array of colours/objects for my piece then this skill will be required.