Programming noob question - phone apps?

Hi. I just started learning html and css recently. I’m a college student and I think I’d like to be a web designer and/or developer. I’ve been learning the design side of building websites (graphic design major) and now I’m starting to learn the development side. I plan to also attain a degree in web development and a degree in computer science. btw I know 3 degrees and a minor might sound excessive, but I have reasons. It would be a long story to explain here. Maybe in another thread…

Eventually, I’d like to be a developer that also has a good sense of UI design. I want to learn as much as I can and I’m also interested in eventually building apps for phones. Since I’m new at this, could someone please tell me some of the basics I should know? I bought a Sitepoint book on mobile web and app development and read a couple of chapters, but I know I need to learn a LOT more to be very proficient at this.

What are the coding languages most commonly used for app development? I’ve heard that iphones use C/C++ for their native apps and androids use Java. What other languages do I need to learn? I assume I need SQL, PHP, HTML, and CSS. Are there any others that you recommend? I will learn Javascript, but it sounds like that would be more useful for websites intended to be viewed on a desktop than on a phone because of download time.

What if I want to make a native app that can be downloaded in an app store and make it so it can be updated with new content downloaded from the internet? How does that work? What method would you recommend? Which method is the easiest for a beginner? Which method is the most effective for me to learn in the long-run regardless of difficulty?

I read in my Sitepoint book that I would need a developers license to sell an app in the store. Is there anything else I should know about distributing an app? What if I want to have a demo version that can be downloaded for free, and a full version that can be downloaded for a fee?

In hindsight, it might be a good thing if this was in a more appropriate forum category…

Do you want to build a web site that looks like a native application or an actual native application? The former uses the normal slew of web technologies and latter differs based on the device being programmed. For example, iphone uses Objective-C but Android Java (Java not JavaScript, just so you don’t get confused). That said, having read the build mobile it is a great resource for building web sites that look and feel like native applications. Not to mention, it covers Phonegap which makes it possible to turn a web site into a native application. This all said, I’m a web developer so I will always be partial to using web stuff to achieve my goals. It comes down to using what you know. Also, I have not worked on any projects in which the advantages of creating a native application outweigh the disadvantages. What I would recommend is continue learning HTML, CSS and JavaScript. However, lean more towards ASP.NET for the server-side stuff. The reason I say that is because ASP.NET will require learning some type of C family language. Which should be a lot less of a jump to mobile programming rather than ruby, python or php. Though, I quit frankly wouldn’t worry, considering your planning on both a design and cs degree you should be pretty well prepared when you graduate for any development based role.