Woah. Starting to learn mobile development from a knowledge base of nil is fantastically difficult. After floundering about magnificently today, I’ve come to a great number of conclusions. These conclusions will be useful for those of you who have not yet started to learn how to build apps. If you can already do that, feel free to come along for the laughs.
We’re going to begin with a set of Windows Phone tools and tidbits, as this piece is focused around building WP7.1 apps. Following, I’ll share my notes on the process, and explain what will come next in this little project of mine.
“The most awesome stage”
Last year, Facebook's VP of Design thought the TNW Conference main stage was the best she'd ever been on.
I’m going to assume that you read my piece from yesterday. If you want the ‘get started’ stuff, it’s in there, at least from a software and tools perspective. I won’t repeat it here. However, if you are looking for a bit more, here are some places to peer:
- Code Samples can be found here. These are great. They won’t teach you exactly how to write your own code, but they will give you a chance to build something that compiles (always fun), and read through some of the jargon that you will later encounter.
- How to get started with XNA and game development can be found here. I’m not exactly sure about the fine distinctions between all the different things that you can build in Visual Studio, but this will get you on the road, and facing the right direction.
- A fine introduction to graphics can be found here.
- Theoretically, this page explains buttons. If you figure it out, call me. I keep getting class errors.
- Finally, Stack Overflow has great notes on Windows Phone 7, 7.1, and 7.5 development questions.
Developing is cool. Really, it is. So far as I can tell it, you take a whole grip of basic functions, and string them together in different combinations to do neat things. Yes, at the start you will begin by creating things that are so simple that they are practically humorous, but those exact tools that you have learned, you will employ again, and again.
I’ve also noticed that nearly anything can be done in multiple ways. This is confusing for the beginner, and empowering to the expert. I get lost in the options. Those who know better can use this sort of knowledge to push their apps to be leaner, I assume.
Having someone who you can ask questions of would perhaps be the single best asset for a new developer. I don’t have this, and have therefore spent the majority of my time thus far mucking about, breaking things beyond repair, and generally falling down. That’s to be expected. But if I could move just a bit faster, I would not mind.
And lastly, building an application off of a guide, and doing it yourself from scratch, are deeds that cannot be compared; they bear extremely little resemblance to each other. I managed to copy paste a great number of code samples into pre-built templates. Those worked. Then I tried to make a little app that would display ‘Alex Sucks’ whenever I clicked on the button that I had cleverly coded to say ‘Press Me.’ I couldn’t get the button to play nice. I pored over examples, but apparently didn’t declare a class properly, or perhaps at all, and so the whole affair sank.
Development is a big hairy mess from my perspective, because I can’t see the order in it. But I can sense it. This stuff is cool. Building things, is cool.
I’m going to take some time this weekend to read over various resources that people have kindly supplied me since this experiment began. I promised to get something into the app store, and I fully intend on doing so. Encouragement accepted.
If you want to start developing mobile apps, get ready for some frustration, but also for a good bit of fun. There’s nothing like no compiling errors, man.