The best way to learn app programing?


Technology


I'm interested in deeveloping programing skills so I can create apps. Initially it'll be for Ipad and Iphone, but in time i'm also interested in cross platform.

Essentially what are the best resources to teach oneself to create apps?

I have some specific ideas for simple little games that I think could turn a profit.

I figured the Paizo community is probably full of tech saavy nerds (a compliment) that can point me in the right direction. Thanks in advance all.


Any other programming experience?

If you have some HTML and other web knowledge, then you might try to do the application in a browser-based way. That's the shortest route to cross-platform.

Otherwise, you need a mac, xcode, and a book on Objective C. Start with Hello World and go from there. It's worth dabbling a bit in mac os before moving on to the mobile stuff, IMO.


I was a computer science major in undergrad before I changed my major. I used to program basic HTML code back in the netscape days, but that was 12+ years ago. I'm sure it's changed since then.

I understand the principles, but not the specifics.

Basically I can teach myself, but i need good resources that start at a basic level and go from there.

I'd love something like Rosetta stone, but for programming. However, even a book or something would be stellar. Programming for dummies etc.


2 people marked this as a favorite.

Some basis for HTML is enough.

Start at w3schools... it will give you a bird's-eye view of all the various technologies and you'll learn what you should focus on from there.

I recommend starting with the web stuff, just because it is often the easiest to work with/look up, and a surprising amount of it can be applied to the types of apps it sounds like you're looking to make.

In the end, nothing surpasses your own curiosity and the patience to look up all of the various technology names that you come across. All of the acronyms can be daunting, but a surprising number of them are actually just names for one specific, easy-to-grasp concept.

Once you're comfortable with something like Javascript (newbies take note that is NOT the same as Java) then you should sign up for the developer site at apple (I believe just a membership is free) and start exploring the tutorials in XCode and whatever videos they might have on line. Apple can be way culty in their developer literature/videos, but you get used to it. Pay attention, but don't drink the Kool Aid.

XCode is probably your primary tool for learning/developing apps, if you want go native.

Again, something web-based is probably the best option for cross-platform utility with your level of experience, but it has limitations. I'd need to have a better idea of what your apps would do.


Moved thread.


Evil Lincoln wrote:

Some basis for HTML is enough.

Start at w3schools... it will give you a bird's-eye view of all the various technologies and you'll learn what you should focus on from there.

I recommend starting with the web stuff, just because it is often the easiest to work with/look up, and a surprising amount of it can be applied to the types of apps it sounds like you're looking to make.

In the end, nothing surpasses your own curiosity and the patience to look up all of the various technology names that you come across. All of the acronyms can be daunting, but a surprising number of them are actually just names for one specific, easy-to-grasp concept.

Once you're comfortable with something like Javascript (newbies take note that is NOT the same as Java) then you should sign up for the developer site at apple (I believe just a membership is free) and start exploring the tutorials in XCode and whatever videos they might have on line. Apple can be way culty in their developer literature/videos, but you get used to it. Pay attention, but don't drink the Kool Aid.

XCode is probably your primary tool for learning/developing apps, if you want go native.

Again, something web-based is probably the best option for cross-platform utility with your level of experience, but it has limitations. I'd need to have a better idea of what your apps would do.

Good advice, Evil Lincoln.


Thanks Evil Lincoln! That gives me a good framework to start with. I appreciate it.

Without giving away the details of what I'm trying to do It's effeecctively Bachee Ball.

Open plane (maybe with bumpers on the outer edge, but probably not), throw "white ball," Then throw other balls and try to get close.

That's the basics anyway. It'll have a theme and be more interesting than that, but effectively that's it.


You might try something like Monkey (http://www.monkeycoder.co.nz/) or similar (I'm sure there are others). I haven't tried this product but I have used their BlitzBasic/Blitz3D/BlitzMax products and they're all pretty good. I imagine the language itself is quite like BASIC, which is easy enough for a beginner (as the acronym implies)...though you'll certainly still need to learn the fundamentals of programming (variables, arrays, flow, and probably custom types/objects).

I'm going to give Monkey a go at some point. Would love to write some basic GM apps for my own use on the iPad.
M


Thought about your goals, a bit TCG, and about how to reach them, and about how to communicate that.

How are you at physics?


Let me guess. Knowing physics is the sine of the time? ~grins and runs~


Pathfinder Rulebook Subscriber

I think it is important for hobby development projects to use a "release early, release often" mentality, although in this case it means to keep something working. If you create too large of a "gap" between what you have and what you are going for, you will lose interest before you finish. If you keep smaller, manageable goals, it helps keep your interest, as you can focus on implementing tweaks, and see the results immediately.

You should also keep a lookout for base technologies you can build on, although some of these can take some time to learn. Especially when you are just starting to get experience, it helps if you don't have to reinvent the wheel, but rather can focus on the areas you are really interested in. However, learning the base technologies will still take a significant amount of time.

Be aware that "cross platform" can lead to many kind of surprises. Even with JavaScript, different web browsers can act in different ways. I've seen many professional app development teams that have tried at cross platform, but can't get it quiet right. I'd recommend focusing on one platform, and have fun with that while you learn. Once you have a good feel for the platform, then try something else, and you will gain an appreciation for what it takes to do cross platform development.

Finally, keep having fun with it. If some aspect is bogging you down, find a way around it for the time being. It's more important to keep trying, learning from mistakes, and trying new things.


Evil Lincoln wrote:

Thought about your goals, a bit TCG, and about how to reach them, and about how to communicate that.

How are you at physics?

I understand the principles, but not the math. Surely there exists some physics engine code that I can use.


You're going to need some pretty basic physics math to make something like bocce that doesn't suck. Also, get accustomed to thinking in coordinates if you're going to be doing any graphics programming.

If it helps, know that I came from way behind on the math and physics stuff too. Just don't be scared, if you can play Pathfinder then you have all the geometric and arithmetical expertise to do this!


Evil Lincoln wrote:

You're going to need some pretty basic physics math to make something like bocce that doesn't suck. Also, get accustomed to thinking in coordinates if you're going to be doing any graphics programming.

If it helps, know that I came from way behind on the math and physics stuff too. Just don't be scared, if you can play Pathfinder then you have all the geometric and arithmetical expertise to do this!

Fair enough. I can do that.


As to engines, yes, there's existing code to cover almost anything you can dream up.

The trouble arises in a) getting permission to use said code in your own work, and b) you still need to understand it to use it properly.

Otherwise I'd be a rich man by now!


Pathfinder Rulebook Subscriber

The hardest part is identifying the problem to solve, especially if it is a layered problem.

A lot of people I have seen that had trouble with problem solving as a skill refused to write out plans/documentation before hand. The simple act of writing down on paper what you are trying to solve can really help you to identify what to work on.

I also recommend you take a look at the GameDev.net site. It is perhaps more focused on a older era of game programming (more application than app), but things like math and engines have been discussed before.


Fun fact: In a different lifetime, I was known on GameDev.net as "Landfish". I was an ignorant, grandstanding little punk!

Community / Forums / Gamer Life / Entertainment / Technology / The best way to learn app programing? All Messageboards

Want to post a reply? Sign in.
Recent threads in Technology