It has been little over a week since my last update and a lot has happened. I visited London and had some amazing dim sum with my godfather, I turned 23 but most importantly I now have a clear idea with what I want to do with my project.
Last entry I talked about making my lab script cater to different learners, I have been doing some reading into learning styles. I stumbled across a paper that documents a study done on 2nd year computer science students at the University of Dundee that got students to rate their concepts with programming concepts in C++ (such as inheritance and classes to name a few). This study found that students struggled with concepts that they couldn’t visualize. Visualization is an important yet often overlooked aspect of programming, understanding the execution order of your code is vital to producing successful programs. The study later proposes some methods to help novice programmers better understand the ways in which their code executes (for example information in the command window). What I took from this paper is that I can teach people how to code by showing them plain text, but I can’t get them to understand the code this way. My workshop is going to need to include diagrams of flowcharts so students will understand the logical flow of a program.
I have a little theory that I would like to test out over the course of this project. I believe that students with a background in music tech will be good at visualizing the execution order of code, just as good as the scientists and perhaps better! but what makes me think that?
Throughout my undergrad I got to play with the toy pictured above, an SSL Duality SE 48 channel analogue hybrid mixing desk. A core concept of using mixing consoles is understanding their signal flow. Desks like this one are extremely intimidating to the uninitiated, the first question you usually get it “do you really know what all of those buttons do?”. And of course, I know how to operate one of these desks to a good standard as I have produced alot of music on this very desk. Every vertical strip of channels are the same, so you only have to learn 1 channel and the rest are the same. You can insert EQ’s and Compressors into the channels, depending on the order they are placed depends on how the signal is effected. I think ‘mus techers’ will have had the concepts of signal flow drilled into them at undergrad and will have an easy time transferring these skills into programming. Whilst it’s probably something that would garner its own masters thesis “How transferable are the skills learn’t in sound engineering in the context of programming?” I will keep this in mind because I think ‘mus techers’ such as myself will find picking up iOS app development a smooth process.
That was a fairly long tangent so now I’m quickly going to talk about delivering my lab script in a non conventional way, from an iPad app. It goes without saying that smartphones and tablets have revolutionized the way we as humans can interact with technology. Suddenly we have sophisticated computers with internet access in our pockets, all the apps for these platforms are sleek and user friendly. I want to take advantage of this and deliver my zero to hero workshop via this platform, this opens my project up to a world of possibilities.
It seems to make sense that I would make an iOS app for a project all about app development for iOS. My app will be able to cater for different backgrounds, abilities and ambitions on the fly so that students can control their own learning. The app will load by asking the user their background and confidence with programming, prompting them to use a sliding scale to rate their confidence/abilities in each area. This information will be used to adapt the labscript to their specific needs. A complete beginner would have their hand held through the process with lots of visual feedback and also be given simple tasks to complete (like just getting sound through the app). A more experienced programmer will be familiarized with the platform and be given more complex tasks to complete.
This interactive approach to learning should garner some interesting results. The app itself can have user feedback baked in so that I can easily collect information about how users got on, and the user can receive advice on where to go after they have finished the script, all automatically. There is a ton of literature that I have got lined up to read on the topics of interactive learning, learning via iPads and visualisation of concepts. I am hopefully going to start building up a good case for the benefits of interactive learning that is supported by literature.
Last time I talked about my surveys, they are nearly done and will be sent out monday! read about them here. Next time I am going to go into the intial design process behind a labscript and explain how I am going to make it!