0 Comments
It's sunny in Amsterdam and like any respectable Amsterdammer (and Norwegian) I am enjoying the sun to the fullest.Today that involves:
When I first started thinking of being a programmer this was part of the lure. If its nice weather, take the laptop outside for a few hours to change the environment for a little bit. This was especially tempting while sitting in my old office at NAM in Assen. Only missing now is a cold beer towards the end of the day to cheers the new lifestyle! Check out my tutorial on "How to read iOS Documentation". Everyone in class: "Teacher? Question: How do I do this and that and this? I can't figure it out!" This happens usually several times during the day. "Read the documentation". "It' explained in the documentation!". And then everyone starts pulling out their hairs in frustration, because HOW do you read the f****** documentation?
In the beginning it very hard to figure out how to use the documentation correctly to actually figure out what you need to do to in order to make "things" happen in your app. It is written in English, but it might as well have been written by Klingons. So therefore you end up using sites such as StackOverflow a lot search for solution. Which can help sometimes, but in the end, knowing how to read the documentation will get you a lot further! So this tutorial is my approach to reading and using the iOS Documentation. I am not saying this is the right way, the best way or the smartest way. It' just my way to make sense of the Documentation. We are not aiming to learn people how to code, but to get people interested in learning how to code. We went back to the drawing board with the new concept we agreed on with Martijn. After some thinking and drawing we came up with the prototype you see below. You can also test it out with Marvel with this link. There are apps like Swifty and SwiftBites that does similar things, but we think our approach will be a bit different. We are not aiming to learn people how to code, but to get people interested in learning how to code. To do this we will make fun and interactive tutorials that will give everyone a taste of how it is to code, and most importantly, the feel of achievement when you see something you made appear on the screen of your iPhone.
After we had finished our user-stories and prototype we started designing the user interface of the app. We skipped some important steps here that should be part of any app development, such as making wireframes, thinking about the user flow and more, but since we only have 5 weeks to complete this project we cut a few corners. Here is the design we came up with today, and we are quite happy with it so far. It incorporates the design elements of The App Academy, while at the same time it gives a fun and playful feel to it. You can also try out the prototype at Marvel with this link. What do you think? Make a coding quiz for people who are interested in coding. Let them test their knowledge, gain more knowledge and hopefully get them interested in further developing their coding skills This week we started our new and final project here at The App Academy. This will last for 5 weeks and we now have to work with a Product Owner that has an idea for an app he or she wants to build. We have three team and three totally different projects. I am working with Willy again, which I am very happy with. Our Product Owner is Mr. App Academy himself, Martijn Wuite. His idea was: make a coding quiz for people who are interested in coding. Let them test their knowledge, gain more knowledge and hopefully get them interested in further developing their coding skills. We used most of Tuesday for brainstorming. Which features does the app need, how should the quiz games be, would people compete against eachother, which backend would we use etc. Of course PostIts are mandatory for this type of brainstorming. In the end we had a good idea of what type of app Martijn was looking for, so on Wednesday we started sketching some rough prototype sketches. These helped us think about the flow of the app, which information should be visible and which type of screens we need. We, and by we I mean Willy because I can't draw, sketched the screens and then used a prototyping app called Marvel to easily try out the app we had thought of. You can see the result with this link. After we made the prototype we went to our Product Owner to discuss what we had made and our thoughts about the app. Although we liked the Quiz concept we had made we also felt like this would not serve the ultimate goal of the app that Martijn is looking for: to get more people interested in coding.
Me and Willy had come up with another concept as well that we pitched to Martijn. We called it the Code Challenge, and it involved the user to finish short snippets of code which then would be visualized once they are done. For example to display a picture. The user would have to fill in blanks in a already half-completed code-snippet. If he or she would get it right, then the picture they chose would be displayed. We felt this provide a much bigger sense of accomplishment than a quiz would, and we think that it is by tapping into THIS feeling that we would get more people interested in coding. Martijn agreed with us and he liked the concept a lot. We learned that even though a Product Owner has a very good idea in his head, it does not always mean that that is the best or the only idea that will ultimately get him to his end-goal. So communication with the Product Owner is very important in projects like this. Which is why Agile and Scrum is so often used in the software industry. So then it was back to the drawing board for me and Willy with a new concept to work out. Below is the Code Challenge concept we showed to Martijn. The App Academy Bootcamp is a great way to get into the app making business. It provides a solid foundation of Swift and iOS in order to prepare you for a career in app development. Its 12 weeks of hard work, so here are some advice for the future students of the iOS Bootcamp with The App Academy. The time spent in front of a computer You will spend hours and hours in front of the computer, sometimes happy, often frustrated, then exhilarated and then at the end of the week just done with it. And after the bootcamp this will, hopefully, be your daily life at work. So its important to establish proper routines to take breaks from the computer screen in order to clear your head. Luckily the instructors will force you to take breaks every two hours, which will sometimes feel frustrating when you are in the middle of something. But if you have struggled with a problem, you´ll find that some fresh air and a clear head will often result in you coming up with a new way around the problem. The stress from struggling with problems There are some things that are certain in life: there will always be some problems in your life to handle, you will get frustrated, you will want to pull out your hair at times and you will want to quit. Thats life. Then you decided to take this bootcamp and become an app developer. Well, increase those frustrations and problems tenfold and you´ll get what is a typical day of programming. But that is also what is the essence of being an app developer. You are there to solve problems, to build something to help other people with their problems, whether that is to find the fastest route to the nearest Febo or how to quickly organise a neighbourhood volunteer group in search of a lost cat. So how to deal with these frustrations when they come? Remember that you are learning something completely new. You are not supposed to know everything yet, and thats okay. Thats the whole reason why you are taking this course right? So take it easy on yourself if you feel like nothing is working. You´ll get there! Remember to use the instructors and other classmates for help. There is no shame in asking for help. Our instructor tried hammering this into our brains multiple times every single day; they are explicitly paid to answer questions you might have, day and evening. So be nice to them and let them do theirs jobs, that way they will be less frustrated as well. Step away from the computer, watch something funny on youtube or do something completely different than looking at code if you get really stuck and frustrated. Remember that this is not supposed to be easy, otherwise everyone would do it. And most important of all, and I know this is very cliche; like most obstacles in life, you will overcome in the end (with the help of the instructors and fellow classmates). Remember that this is not supposed to be easy, otherwise everyone would do it Finishing homework It would not be a proper bootcamp if you would not also have homework in the evening to further teach yourself how to code. The trick to managing these homework are to start early and to ask the instructors for help if you need it. They are available during the evening and weekends to answer any questions you might have. Their workday stops around 22.00 in the evening, so pester them as much as possible to be able to finish your homework. Don´t let them get paid for just sitting at home drinking beer and watching TV. Working with a team The bootcamp is usually made up of very different people, with different backgrounds, different personalities and different experience levels. Some will learn quick and some will learn slower. And then these people need to work together in a group. Which can be challenging at times for sure. But the key is to remember that everyone is there to learn. Be careful to choose tasks to do that will help the group move forward, but that also will give you the opportunity to learn valuable coding skills. In the end you want to end up with a great app, but the learning you with the group and the work you do during the teamwork is more important than having a flashy app. Keeping yourself motivated
It can be daunting thinking of adding all the features to the app that is needed for it to work, and the short time-frame you have to finish it. It can quickly become stressful to think about everything that needs to be completed. Therefore it is helpful to break those features down into smaller tasks that will in the end get you where you want to be. Having a checklist to check off each new class, function or feature that you complete is a great way to keep motivated and to see that you are making progress. And its important to share these moments with the rest of the team as well. Yelling “YES, I made it work” will motivate not only you but also the rest of the class. And its important to remember that everyone is in the same boat as you, learning something new, making progress and enjoying and being frustrated over the challenges the code if front of you brings. Today we started our first project - where we will build our own first app. I am teamed up with Willy and we since we are both expats in The Netherlands we chose to build an app that focuses on the Dutch - particularly on "What makes the Dutch so Dutch?".
In the app we have to incorporate these features:
Shouldn't be too difficult right? Let's see. Here we go! Btw, think we already have a good name for the app: SoDutch! Another presentation, another topic. This time the topics were roles in a app development company, and I picked the CEO. Easy I thought at first, but I soon realised that I was wrong. We are all CEOs of our own lives - Jero (class mate) The responsibilities for a CEO of an app company varies a lot depending on the size of the company. From being the Chief Everything Officer in a small company to focusing more on investor relationships, branding, vision etc.
Check out my presentation on Prezi - http://prezi.com/mu6ekogomlvu/?utm_campaign=share&utm_medium=copy In addition to coding homework we also have presentations we have to prepare to hold in front of class. This is to give us presentation training and to educate us a bit more on different topics. This week I had about GPUs.
Check out the presentation here on Prezi - http://prezi.com/kwimqp2zjvbp/?utm_campaign=share&utm_medium=copy Week 1 of the iOS Bootcamp is over and I am even more excited than day 1. I was a bit anxious about how much I would like the programming. I really liked it in University, but its been probably 8 years ago since I wrote any code. So it feels really good that I feel the same urge and determination now to find that one mistake I have made before the program can run properly. My inner geek is coming out of hibernation!
The first week has been spent going through The Big Nerd Ranch book for Swift Programming, reading and during the examples there. Its a really good book if you ever want to start to learn yourself. I'll put a link to their website here: https://www.bignerdranch.com/we-write/swift-programming/ The class and the teachers have proven to be very nice as well. And time flies when you are writing code! If it goes this quickly all the time then the 12 weeks will be over in no time. |
Archives
April 2016
Categories
All
|