Do you even Swift, bro?

It costs $1600 USD for a WWDC ticket – if you can even win the lottery for the chance to secure one. From New Zealand it’s about $2000+ NZD (~$1700 USD) for return flights to San Francisco. Add on the over inflated hotel room charge for the week which even for the minimum of five days will set you back at very least another $1500 USD again (unless you stay in the dodgier parts of San Francisco.)

So, what’s the point? With all the sessions online same day, the sessions themselves are no longer reason enough. So the standard response tends to be the networking and the parties, which you can mostly experience just by being in San Francisco the week of WWDC anyway.

There’s the experience, and I tend to be a big advocate for the whole ‘experience’, immersing yourself for a week in code, the thing you’re passionate about with 5999 other equally passionate and likeminded people. That passion that makes people queue up at the crack of dawn for the keynote. But that’s a blog post I’ve written already, almost exactly a year ago.

After last year, I’d convinced myself that there was no point for me to go again, but sure enough, as soon as the announcements were made, it flipped a switch in me and I was trying really hard to convince myself that I did not ‘need’ to go.

So what caused that? Best as I could understand my own insanity, it was about what WWDC has come to represent in my life in the past three years: my journey through programming and as my last year as a student, why not apply one more time for a scholarship?

I’ve has a lot of discussions both at WWDC and since I’ve gotten back, both with developers and non developers and this post summaries my thoughts on WWDC 2014. My thoughts leading up to it were in the NZ Herald a few days before I left for the US. I knew there would be awesome things in the pipeline, I was pretty sure we’d be getting a new version of iOS and OS X and was pretty sure there wouldn’t be any hardware released. No new iDevices anyway. All the announcements are online so I won’t go over those, but these are my own reflections of what the announcements meant in the bigger scheme of things and for my own work.

Overall

“I think a developer would look like a geek.”

The opening words of the WWDC 2014 Keynote presentation. The first few words were drowned out by the audience’s cheering which was set off by the lights going down and when we realised that no one was coming on stage yet, the cheering came to a halt.

The first word I heard after the cheering stopped was ‘geek’. It seemed an interesting note to start the keynote on but the video set the scene for the conference which was to be the idea of making programming more accessible, starting by demystifying who a programmer is. Of course there’s the stereotype of the geek, but the reality is much broader than that now.

The announcements in the keynote were completely software based: no new hardware, no new toys. It made me sad thinking about non-developers watching who would be thinking ‘wow, what a terrible announcement, there was no new hardware.’ But developers rejoyced: so many new frameworks and features to play with. Usually there wouldn’t be any mention of APIs until the following ‘Platforms State of the Union’ session, but there was Tim Cook on stage explaining what an ‘SDK’ is.

“…and for those of you that are not developers, the SDK is a Software Development Kit that enables developers to make all of the amazing apps.”

Then the completely unexpected blow at the end: Swift. For that whole week,the ice breaker for any conversation was to be:

So, what do you think of Swift?

The initial knee jerk reaction to the announcement was ‘oh no, change, we have to learn something new!’ That was my first reaction anyway.

Going to the sessions on it and getting more familiar with, it definitely seems to be well written, easy to use and just as powerful as obj-c. The documentation and resources are excellent and the enthusiasm for it grew over the week.

Though Apple had a few goals with the new language, one of the things they’ve done is lowered the barrier of entry to programming. “Swift is friendly to new programmers” it states in their iBook, “The Swift Programming Language.” When I was starting out learning programming,  I found that every book I picked up began with some variant of “This book assumes you already have an understanding of [other language].” (I ignored thees and continued undeterred).

With the rampaging growth of mobile, with it has come increasing numbers of people from non programming backgrounds who are interested in learning how to make apps (such as myself, four years ago) and this language makes it easier. New people starting out will learn in Swift, not Objective-C, while existing developers can choose to learn Swift or continue with Objective-C. For now anyway. It is expected that in the not  so distant future, Objective-C will be deprecated.

In the demo code from many sessions they were still using Objective-C. In sessions about existing frameworks they used Objective-C, in sessions about new iOS 8 frameworks, they used Swift

I’m not saying this is a good or a bad thing that they’re made an ‘easier’ language.

However, in my personal opinion: by abstracting away the complexity of programming, you start to lose an understanding of fundamental programming concepts. I speak from from own my experience starting iOS development from a zero programming background (and disregarding the disclaimers in the books.  I learned a lot from demo code, tutorials, videos on YouTube narrated by people who sounded like they were 12 years old, hacking things together, Stack Overflow etc. I could make apps and they worked but I lacked a lot of the underlying fundamental computer science concepts, many of which I’ve only started learning this year and the change was incredible: I am writing better quality and more efficient code quicker and it was easier to trouble shoot when things went wrong. This was my fourth time at WWDC and I understood so much more this year.

Swift abstracts away the need to know about primitive data types, like ‘what is an int/float/long/string’ etc. when it automatically infers for you when you declare a variable. You could argue this isn’t that important but when Apple brought out the 64bit chip you started getting apps where certain values were off because developers didn’t understand how this could affect values.

In my degree, we get a lot of artists who use languages and platforms with low barrier of entry to make interactive artworks / installations, such as Processing, and I can see Swift with it’s Playground environment becoming another one of these tools. Are these people ‘developers’? I would argue that being able to write code does not make someone a developer

My personal experience this year

I am an introvert (not to be confused with anti-social):  after spending the day with 6000 people, I struggle in the evenings to make it out to the parties so for me, I focus my energies on the experience during the day, and this year, it meant going to the labs. We all live in fear of asking the ‘stupid question’, especially when you’re asking programming questions from the engineers who live and breathe (and write) the frameworks and APIs every day.

This WWDC was the first time I had an app that was nearing completion and had questions and bones to pick with the engineers. I spent time in the labs for Multipeer Networking, AirPlay, CoreLocation, Prototyping and even queued for an hour to get an appointment at the UI Design lab (30 minutes 1 on 1 with a designer).

One thing I’m increasingly finding with programming is that just because you can solve a problem from a high level, doesn’t mean it’s as easy to solve it at a programming level. Meaning that you can take a step back and say, “okay, this is logically what I would need to do to achieve the desired outcome or functionality”, but at a code level, the APIs or frameworks might not support that. Those are a lot of the problems I’ve faced with my app and the feedback I got in some of the labs.

Unfortunately as well, sometimes there are bugs in the frameworks themselves and the only feedback that they can give you is ‘yeah we know about those, we’re working on it. There’s some fixes in iOS 8. But there’s also some regressions. File bugs.’

It was a mixed bag of results at the labs, but in a way, even when they couldn’t help me with solving my problems, it felt like I was on the right track to creating something new and unique.

Over on my personal blog, it’s been on my perpetual ‘To Do’ list for a few years now to ‘get an app in the store’ which I haven’t achieved yet, but you know what? ‘Get drivers licence’ was on there for quite a few years too and I got there.

When I started programming, I could make an app that ‘mostly’ worked and did what I wanted but it wasn’t pretty. I lacked the knowledge to really polish and finish it, to hunt down problems and bugs and fix them. I knew how to solve problems from a high level but I couldn’t implement the solutions in code (at that point it was more because I lacked the skills to, rather than the tools themselves). I didn’t release anything because I didn’t have anything that was my baby, nothing that was ‘perfect’, nothing that I was proud to stamp my name on and say ‘I’ve made this, and it is AWESOME’, nothing that I was prepared to support for years to come.

And that’s okay. I know nothing is ever going to be ‘perfect’ and you’d kill yourself trying to reach it. There is the mentality of ‘F*** it, ship it’ , the idea that you can fix things in version 1.1 or 2.0 because it’s so easy to ship updates, but I never got close to even a 1.0. However, the store is full of version 1.0 apps that never made it any further and I can say that many of those didn’t nail it on version 1.0 but I suspect it wasn’t something the developer was really passionate about, it was just a //ToDo they wanted to tick off and say it was done.

When I ship my first app, I know it won’t be a million dollar success overnight (or even at all). I know I won’t have Facebook knocking on my door offering me $3b. Those stories are the exception rather than the rule, and I fear that’s what a lot of people are getting sucked into. With Swift, it is a lot easier for anyone to get an app on the store. But is that a good thing?

I just know, that when my app goes on the store, it will be something I’m proud of and will want to show off. It terrifies me thinking ‘what if no one wants to use it, what if I’ve put all this effort in for nothing?’. Worst of all, I have a demo for my masters examiners in a months time and above all, I’m terrified that they won’t get it.

One significant difference this year was after the month I spent solidly coding earlier this year, I was able to get a lot more out of the session. The first WWDC I went to in 2011, I’d been coding for less than a year and almost all the sessions went over my head.

It’s hard to say exactly what was different but in the demo code and the presentation slides, I just understood a lot more. The code made sense. I could see how I’d implement it.

Overall, it was a fantastic WWDC, the best one I’ve been to so far. I got a lot out of it in terms of the technical and the social. I am hugely grateful to all the engineers who take the time during the week to be in the labs and be hassled by developers and answer questions.

Slowly, I’m starting to feel like I belong here (as I’ve said before: any hesitation on that has nothing to do with my gender). I wouldn’t call myself a developer. I can write code, I can solve problems from a high level and learn what I need to know to implement it in code.

So who is a developer? Yes, many developers have interests or hobbies which fall under the geek umbrella. I’ve embraced the label since I was 15 (despite protests of ‘you’re not a geek – you’re a girl!’). The conference began by addressing this stereotype but then went in the direction that you also don’t have to be a geek to be a developer (and you don’t have to be a developer to be a geek!). The video also explained that developers are pretty much wizards…and you can be too.

WWDC: Whole World of Developers Crying

It’s a story I tell often – almost exactly four years ago on May 17th during the second year of my degree, I arrived early one morning, in time to sit in on a first year lecture in the ‘Introduction to Creative Technologies’ paper. In this lecture, I learned about iOS development and the opportunities that were available through that. I got to hold an iPad – this was not long after the first one was announced and they weren’t even available in New Zealand yet. I gasped when they showed it and was embarrassed that I was the only one geeky enough to be in awe.

We also learned about WWDC and the scholarships available for students to attend. It was one of those ‘aha’ moments that I believe set into motion many of the amazing opportunities and experiences I’ve had over the past few years.

So that became my goal, and the next year, I ran around my house screaming because I’d been awarded that scholarship. Then the same again in 2012. And 2013.

I began writing this on the eve of the 2014 scholarship announcements. It’s my last year as a student and so I decided to have one last go at entering. Over four years, a lot more students around the world made the same discovery I did, and with increasing interest in the mobile development industry and a greater push to introduce coding in schools, no doubt the scholarships became more hotly contended, resulting in Apple raising the bar for applications. The application used to be simply essay style questions, starting in 2013, applicants had to make an app.

The brief is broad and relatively simple: make an app about yourself – “Use your creativity and coding skills to build an app that tells us about you. Your app should highlight development projects you’ve worked on, your educational and professional background, technical skills, and interests.”

The catch is you have less than two weeks to make it. Simple?

I wrote this post before knowing the result because I wanted to guarantee that I would post it. This follows on from my post from yesterday about impostor syndrome and lacking confidence in my programming capabilities. When I finished my app, I found myself feeling really excited to show people what I made and I felt really confident that I’d made a good product.

But I’m also aware that I’ve been awarded a scholarship three times already and with such a demand for tickets and no doubt the sheer number of students who would have entered, I’m sure that would be taken into consideration. I think it is pretty unlikely that they would award it to me again, and I’ve been preparing myself for this scenario because I didn’t want to feel that not being awarded a scholarship would be a reflection on my skills as a programmer.

So here is my creation, shared with the world regardless of whether or not I win because it’s something I’m damn proud of.

In 2013, I cobbled something together quickly and mostly the night before (very nearly giving up all together). This year, I thought a lot about what represents me best. That answer was easy – travel. I am a notorious jet setter and frankly, well on my way to being one of those travel snobs with status.

The premise was simple – my skills and experiences represented through projects I’ve worked on in different parts of the world: New Zealand, Australia, Fiji, USA and Europe.

JuditKlein1

I tried to reflected my personal interests and skills in a few ways –

– Each country is represented as an airport code and barcode, which turns into a passport stamp when you visit it. Visit all the countries, collect all the stamps and unlock an achievement (who doesn’t enjoy a bit of gamification?)

– Location awareness has been a major focus of my iOS projects and so I used the core location framework to turn the plane in the center into a compass.

– Each country has a different Passbook pass. Though this isn’t very frequently used in New Zealand, I have a few passes tucked away on my phone from international flights.

– Connecting to a secondary display will unlock extra content as the ‘in flight entertainment system’, using it as a secondary display rather than just mirroring. This capability was the starting point for my masters research.

– and my personal favourite: the in flight safety briefing, redone with terrible programming jokes. this was inspired by Air New Zealand who are known for their frequently changing, quirky (sometimes cringe worthy) safety videos. Whenever I’m on an Air New Zealand flight, the videos remind me where my home is, or that I’m nearly home. If you understand the jokes – I’m terribly sorry.

The app itself is relatively simple – table views, view controllers, basic data model using plists but with the short amount of time given, you don’t want to over complicate it. I spent a day designing graphics, two solid days of coding, and a day for polish and testing. I was aiming for something clean and simple. That’s what iOS is all about, no?

So here we go –

Here’s the code.

For the non-programmers, here’s a video.

I finish writing this post a day later after the results were announced. My application was successful and I will be once again attending WWDC. I have no words for the elation I feel right now. You’d think after three times it wouldn’t be as exciting but it feels exactly the same as the first time I got it.

Off the grid

It is really amazing how much you can get done when you really sit and focus on one thing.

It sounds pretty obvious, but recently I had the chance to take a month hiatus from work and life to work on my masters. Most specifically, the practical component of it. My degree lets me nominate what percentage is theory vs. practical (anywhere up to 100% theory or up to 80% practical) so I’ve nominated about 50/50.

The practical component is an app. I figured out what it was going to be on the final hours on a flight back from San Francisco on the 23rd September 2013 after I’d spent two months overseas. The Xcode project was created on 19th October 2013.

From March 13th to April 13th I was for all intents and purposes ‘off the grid’. I sat in a room every day coding. I know this is normal for a lot of people, in fact, for a lot of my friends this is probably part of their job description, passion and/or hobby.

I do enjoy programming but I struggle to sit and do *anything* for long periods of time with limited human contact. I did have a strategy, support, regular food, fresh air and exercise but I struggled.

So why do this? Part of this was to be able to make much needed progress as D-Day drew near, but the other bigger part of it was to become a more confident programmer.

I found out about ‘impostor syndrome’ a year ago and it was in a weird way to have a name for what it was I was feeling and to know other people experienced it too.

“Despite external evidence of their competence, sufferers of imposter syndrome remain convinced that they are frauds and do not deserve the success they have achieved. Proof of success is dismissed as luck, timing, or as a result of deceiving others into thinking they are more intelligent and competent than they believe themselves to be.” – words from here.

Or summed up nicely in an image:

depcom.175.col_.400px

http://www.depressioncomix.com/posts/175/

I started learning programming just shy of 4 years ago from a zero programming background. Just yesterday I found a simple program I wrote for a 2 week Java paper I did in first year that I’d gotten an A+ on (although the two week Processing paper I did I got a B, the lowest grade I got through my entire degree). In mid 2010 I wrote my first ‘Hello World’ on iOS and soon, I started getting scholarships to attend Apple’s World Wide Developers Conference and other programming and technology conferences. I was even giving presentations.

I loved it, I got a huge kick out of being involved in this industry but a little voice at the back of my mind kept telling me “one of these days, people are going to figure out that you actually don’t know anything about programming.”

I genuinely believed that voice.

One thing I was to get straight: these feelings have nothing to do with my gender. I’ve always been aware that I’m in a male dominated industry. I’m pretty sure I’ve been positively discriminated against on several occasions because of it. I know it’s a big topic at the moment, the question of how to get more women into technology. The only gender stereotypes I’ve ever had issues with was in school when I was supposed to like ponies (I didn’t) and I wasn’t supposed to like Dragon Ball Z (I did).

It’s never crossed my mind that “I can’t be a programmer because I’m a woman.” It’s just never occurred to me. Both my parents have masters in engineering! There has been increasing interest in addressing why there’s so few women in technology and sadly much discussion involves tales of harassment. I am thankful that I have never been put in a position where I’ve been made to feel uncomfortable. If anything, people specifically tell me how great it is to see more women and my presence has always been met with positivity.  If anything, my impostor syndrome has kicked in with ‘what if I’m only getting these opportunities and scholarship because I am female and it’s positive discrimination?’

But I digress, what is a whole other discussion.

Programming and iOS development to me represented what my degree is about, what ‘creative technologies’ is, the degree for emerging careers and practices; the iPad didn’t exist when I started my degree, now it’s a huge part of my research, my day job and what I ‘do’, and generally what people associate me with.

I started in first year really making things, having tangible outcomes to show but somewhere along the line I lost that. I became a theory person and everything that frustrated me about research in the field of educational technology – it was mostly focused on theoretical frameworks and ‘proof of concept’, very little practical work is being done. So I started my masters with one simple goal: I wanted to come out of my masters year with something I could hand to people and say, “here, I made this. And it is AWESOME.” Something people could actually use, rather than a huge bound document.

My coding month went a long way to help the insecurities I was feeling. Not just from seeing my app coming together, but also learning what it means to ‘be’ a programmer. Things like, getting stuck for hours on a bug which results from a simple mistake, but dammit you definitely won’t make that mistake again. Learning that it’s not always about how many lines of code you write, but how you actually solve a problem and implement that solution. In essence, that is what programming is – problem solving, from the conception of the app itself, down to ‘why is it crashing at this point?’. That’s my perspective on it.

But, of course, I still struggle with the voices in my head. When you see how easily the solutions come to someone else and they write it off as ‘easy’, when you see others work long days and late nights coding because ‘sleep is for the weak’, how can you begin to compare yourself to that?

I know it’s also a matter of perspective: it was brought to my attention that an image which I altered in Photoshop in 5 minutes was ‘easy’ for me but seemingly impossible to them, wasn’t that the same thing?

I am two months out from my masters deadline and so increasingly I have people asking what I’m going to do afterwards. I still genuinely don’t know. I have options beginning to present themselves. I know the most appealing thing I’ll want to do come July 2nd is crawl into bed and sleep. For now, it’s a matter of getting over the finish line.

 

 

“What are we missing?”

What would happen if you threw a bunch of academics and developers into a room and said “educational technology – discuss”?

Following on very nicely from my last post where I discussed the different perspectives on educational technology, I found myself in a discussion with other developers which kicked off pretty much with just “education – discuss.”

I was at devmob in Dunedin a week ago, an unconference for mobile developers of all platforms (“we used to be just iOS but the rest of you were sneaking in anyway”). In true unconference style, the agenda was very ad hoc, with sessions becoming available based on demand and interest. What this led to was a lot of discussion based sessions with people from many different backgrounds sharing their experience around the given topic.

Given there were quite a few people working in the education space, a session popped up for it and through the discussions which arose, I discovered the perspective that I was missing in my own research: it was a discussion about the role of technology in education from the developers’ perspective.

I didn’t end up contributing much, and instead just tried to observe what was being said and understand the underlying message which were coming through.

Apps and infrastructure

The course of discussion started out talking about apps – who is working on or has worked on apps for education.

This soon turned into talking about the limitations and challenges of introducing mobile devices into schools, issues such as the current roll out of high speed internet and the accessibility of devices between low and high decile schools, through to the schools acting as ‘gatekeeper’ and placing restrictions in devices and what apps can and can’t do within these boundaries.

The underlying message here is of the infrastructure challenges of working in this space and the highly unpredictable nature of what can and can’t be done – every school is so different, has different restrictions and regulations and ideas of what the best way to implement technology is .

The more invisible constraints were only very lightly touched on – changing the mindsets of those who run the schools and the education system as a whole, and enabling teachers to be technically literate.

Kids and coding

However, the larger part of the discussion was about teaching kids to code. Everyone in the room seemed to agree on the fact that this was a positive thing that should be encouraged. Many in the room were parents who talked about what tools they were introducing to their children.

Devices such as the iPad are often criticised for being platforms for primarily content consumption so the underlying message here was to encourage kids to be not just consumers but producers. The device becomes a platform to learn with, not learn from: success is when they start finding their own problems to solve, after all, programming is about problem solving, not writing code. The code is the means for solving a problems.

This has been a hot topic recently, especially with the launch of code.org which reinforces this message that most schools don’t teach coding and that “everyone…should learn how to program a computer because it teaches you how to think.” This quote by Steve Jobs and many others from leaders and trendsetters paint a picture about how programming should be a a core competency and that “the programmers of tomorrow are the wizards of the future.”

What’s the difference?

What was interesting as well were the things which WERENT discussed. It was refreshing to not hear the jargon I’m used to hearing about educational technology – flipped classroom, mobile learning, e-learning, even ‘pedagogy, didn’t turn up once.

The whole experience seemed to reinforces what I already suspected: there is a disconnect between the overall aims of people who create the technology and those who use it.

Academics and educators think about pedagogy, the process of teaching, the ways in which the technology will impact these processes. Developers start with the task, the app – what does it do? Take an application definition statement for example, the way developers are encouraged to start the development process: a concise, concrete declaration of the app’s core functionality, purpose and intended audience.

My perspective

Education is broad, we could discuss for hours because many different facets. Every school is different, every country is different. Of course, the nature of the conversation and the initial provocation was broad (“education – discuss”), so it was interesting to see what direction the discussion went in.

I posted a couple of tweets, one of which I said “I would be REALLY interested to see what would happen if you threw developers and academics together to discuss ed tech.”  I had few people come up to me afterwards to ask about that comment, and what was really refreshing was one person said to me “what are we [as developers] missing?”

During the lightning talk sessions, I gave a short 5 minute presentation about “Why the Education Category of the App Store is Broken’. When I started writing it, it quickly turned into a longer rant which outlined some of the key ideas of my research in a more humorous / less academic way. I cut it down to the 5 minutes and the feedback I received was good, which in hindsight after attending the education discussion, I felt like hopefully I’d given developers some insight into, not so much what they are missing, but rather the inherent problems I’ve found in my experience with educational technology.

The challenges and questions around educational technology can’t be solved overnight, but there’s a need to combine the two perspectives which currently feel very disjointed. Both sides need to be open to the question of “what are we missing?”.  I am interested now in turning that into a full talk to take to both audiences then posing that question of “educational technology – discuss.”

Coding in the language of Academia

As I carefully construct my thesis, I realise an interesting relationship between the process of academic writing and coding a piece of software: I often find myself spending a long period of time trying to piece together the words and syntax of a very small section of the whole. It has to be in just the right arrangement to fulfil it’s function.

Yet, there’s something strangely fulfilling when you know you’ve gotten it just right.

But then you realise there’s the rest of the code to perfect.

Academic writing is still a whole other language for me to master.

Making order out of chaos: the crisis of information

The problem I have found myself facing in the past week is one that is reflective of the problem we will find ourselves facing increasingly into the digital age. I will once again borrow the words of Apple Distinguished Educator, Dr. William Rankin who talks about ‘the crisis of information.’

Finding information is fast but the amount of information we have available causes a new problems because there is so much of it available. The current informational challenge is assessing what is and isn’t valuable: “In the digital age, information is a commodity.” He also highlights the statistic from the American Library Association: “By 2020, if trends continue, information on the internet will be doubling every 15 minutes.”

My goal for the two weeks before the next critique has been to start examining, evaluating and critiquing existing apps available on the iOS platform to test my hypothesis, to determine whether the affordances of the iPad were being utlised in an academic context, or whether they were being used for simple consumption of content. This criteria for determining this again came from Dr. Rankin where in another iTunes U podcast where he discusses that the iPad/iPhone is powerful because it beings together rich media, connectivity and access to the internet. This provided a starting point.

However, I found myself facing this problem where I was trying to determine which apps to even use. In the big scheme of things, the ‘app market’ and the app store model is still very new, starting in April 2008. There are now over 700 000 3rd party apps available. So finding those relevant to my research questions posed a problem, needing to determine the best way of selecting the ones which I would critique. The advantage however is that the App Store is the sole channel through which to purchase apps for the iOS platform so in that aspect, it makes the search a bit easier.

 ‘Education’ category

The logical first step was to go to the ‘Education’ category and the recommended ‘Apps for Teachers’. It can be assumed that many educators look here for appropriate apps to download and utilise.

This didn’t pose too much of a challenge, there were 72 apps all together under 5 subcategories. It took a few hours but I went through all of these to get an idea of what their predominant functionality was. It was evident that many of these apps were specifically intended with education in mind but many of them I have seen used in this context.

My main impression was that there were a lot of apps focused around document and content creation and management. Many were focused around access to educational content (e.g. Wolfram Alpha, National Geographic, TED) but also many more more on accessing ‘non academic’ sources such as blogs and social media. I am not arguing the validity or educational value of content ‘non academic’ content as that is a whole other research topic but it is interesting to see that trend reflected in the recommended apps.

Keyword Searches
My next idea was to look at apps based on keyword searches to try find relative apps. ‘Collaboration’ seemed a good one to start with and immediately I was faced with over 100 apps which mentioned it in some way shape or form. I realised that I needed a better way to try sort through this information.

Inspiration struck – as it quite often does – on the rush hour bus ride home. I found the search API for iTunes, App store, iBookstore and Mac App Store. It took only an hour, some open source code working with JSON parsing in Processing and I’d hacked together some code:

—-

import org.json.*;

String baseURL = “http://itunes.apple.com/search?term=collaboration&entity=software&limit=200”;

void setup () {

getApps ();

}

void draw () {

}

void getApps () {

String request = baseURL;

String result = join(loadStrings(request), “”);

//println (result);

JSONObject Data1 = new JSONObject(result);

JSONArray results = Data1.getJSONArray(“results”);

int total = Data1.getInt(“resultCount”);

int numberOfElements = results.length();

try {

// loop through array

for (int i = 0; i < numberOfElements; i++) {

JSONObject entry = results.getJSONObject(i);

String getInfo = (entry.getString(“description”));

println (getInfo);

} //for

} //try

catch (JSONException e) {

println (“There was an error parsing the JSONObject.”);

} // catch

} // function

It did the trick. I was able to specify a search for apps with the world collaboration and get it to spit out the app descriptions for up to 200 apps.

I then took these app descriptions and used Wordle to generate a tag cloud. Immediately I found that this gave an instant overview of the common ideas and themes. I tried putting in a few more words: learning, teacher, classroom, education, university, learning, mobility. Suddenly it was amazing how quickly I could sift through these ideas and get at a glance an idea of the kinds of themes that were emerging.

I know I will have to think more critically about what this process and the outcome of that (the tag clouds) mean. Before the next critique, I will be updating the draft of my thesis to start integrating this work and communicating it in a more academic way as part of my field review. This process however is still only a part of the initial review.

Case studies – CfLAT
Last week (2nd August) marked one year since the Center for Learning and Teaching began its iPad project and I was first hired as a Learning and Teaching Technology Enabler. So much has happened in the past year and now we have a team of six ‘LATTE’s to provide university wide iPad support as now there are over 300 iPads in the hands of staff and quickly growing.

We provide a range of support starting from taking it out of the box through to advanced document management and are starting to move into content creation and classroom activities.

However, the hardest question we get is, of course, what can I do with it? This is still the question everyone is grappling with and I still don’t quite know how to answer it. It is definitely something that evolves the more you use it but it becomes a ‘chicken and egg’ situation, where if people don’t see the buy in, they won’t use it. Sadly, as we are getting past the enthusiasm of the early adopters, this is something we are starting to see.

Being a LATTE has been a hugely important part of informing my ideas and so for this field review, it provides valuable insight as to the kinds of apps that we recommend to staff. I will be the first to admit that these apps are more often than not those which are focused on content consumption and document management, if for no other reason because in the limited amount of time staff see us for iPad training, these are the topics they want to address.

So these are some the apps that we most commonly start staff off with:

This is part of what has informed my hypothesis and it is my hope that when we get past the initial stages of implementation, we can begin to see more exciting and innovative uses of the iPad. It is about moving beyond ‘business as usual’.

Case studies – External

With the next critique only two days away, what I want to accomplish before presenting this work is to look at some external case studies of iPad projects from other institutions, to see whether their approaches are similar or different to the one I’ve been involved in. I will also need to generate some critical insight as to what these findings so far mean so I can get some valuable feedback from lecturers. It’s scary how fast the fortnightly meetings come up and even scarier how fast the eventual D-day will arrive.