So, for the past few weeks we have been working on coding using a new app for iPad called Swift Playgrounds . It takes coding and computer programming to a much simpler level that makes it comprehendible for a much wider audience than engineers or computer scientists. I have been really enjoying this application and am finding it quite educating for learning code. It is teaching me how to solve problems in a most simplistic way possible.
So far, we have written two reflections on what we have been learning and experiencing through the app; both of which I will include below (fig. 1 and fig. 2). While reflecting on the process of coding, I have found that as we went forward with our coding lessons within Swift Playgrounds it has gradually gotten more and more challenging to solve. The app is reminiscent of a jigsaw puzzle; you must use coding terms together to solve a greater problem. In one situation (fig. 3), I found that when creating a function, or a set of commands*, I had to be cautious when differences in a route showed up within a level. As you can see below, the lesson was slightly inconsistent. I had to add more code for the function to be, well, functional. The app is challenging, and I am learning a lot.
This app is very helpful and is laid out quite nice, and includes adorable little characters such as Byte or Hopper. The point of the app is to move your character around a block filled world, collecting gems and toggling switches. I would recommend it to anyone with an iPad, because it is free after all and quite worth having. It is a great activity to do whenever you have extra time here and there. Swift Playgrounds is very easy to interpret, as the vocabulary is explained using simple, real life experiences and relating them to coding. An example of this is tying a shoe, which is used to explain commands as you are first starting out on coding. This is an overall great app for learning, and you can even create your own programs using the code you have learned.
So far, Swift Playgrounds has taught me a lot about coding and programming and i am looking forward to continue onwards.
*A command is an instruction of code given to a computer program.
Fig. 1
Coding Reflection 1
Today when we used commands to control another persons actions, i found that it was challenging in a few ways. First of all, I found that when we were giving instructions for the other person to draw, it was hard to picture what they would think. Next, when drawing the picture, it was hard to draw if the person giving instructions wasn’t clear enough. For example, sometimes the person wasn’t clear enough of which way a line went, and that resulted in throwing off the whole final image. After we did the drawing activity, the hide and seek game was a little easier. It was easier because we got to decide where to hide the object, thus creating our own path. It was fun to follow instructions that were already planned out instead of making them up as we went along. It was easier to follow directions than to give them, because they tended to be straight forward and easy to comprehend. What we could do next time to make it easier is to edit our instructions a couple times to make them more refined and comprehensive. This seems similar to computer coding because using commands in the right order and language the other would understand really made the activity work.
Fig. 2
Coding Reflection 2
When using swift playgrounds, different parts were both challenging and simple to comprehend. Som challenges, like portal practice or simple commands were easy to do. I found the levels that were based on repeating patterns and functions a little more challenging. That was because I had to find and recognize repeated actions. When we tried to debug a common problem relating to the school year, it was similar to Swift Playgrounds in a couple of ways. The concept of finding and correcting problems within a system of code was the same; as was the concept of commands. It is important that there are no bugs no matter how small or minor they may be because there can add or remove a key part of the operation and throw off everything after the fact. Bugs are just like spelling errors; they are a small mistake that can potentially throw off the whole objective.
Fig. 3
Click here for my coding video