You can write HTML/CSS/Javascript web apps for the iPhone. There's documentation on web app features specific to the iPhone on Apple's iPhone dev web site.
Things a developer needs to know to create an iPhone app:
- how to read and follow instructions carefully (you will fail if you can't).
- how to program (if you haven't written several programs over 100 lines, get a beginning programming textbook, or two, and learn that first). This step takes some people between 2 months and 2 years, if ever.
- how to program in Objective C (give it a few days/weeks if you already know C and one other OOP language, or Java, or C++, fairly well).
- UIKit (easy if you know some Cocoa or NextStep, medium if you've used a C++/C#/Java/Javascript GUI framework before, a bit harder if you've only done non GUI apps (stdio, etc.))
- using XCode (yet another IDE with a zillion useful features if you can actually find them)
- the developer Portal (the web site that gets you stuff needed to run apps on your iPhone, but read the bit about following instructions above).
- various rules about what kinds of apps are and are not allowed in the iTunes App store.
Other very helpful bits:
- when you app doesn't work, how to debug and use the SDK debugger.
- how to create usable user interfaces (read the HIG).
- how to manage memory (if you've only used "managed" languages, you will have to learn this, since the Obj C on the iPhone does not include garbage collection).
- how to build a complete app out of asynchronous call chains (can cause mental hiccups in programmers who have only written single-threaded foreground/command-line apps).
- if your app presses up against any performance or memory limits, knowledge of efficient algorithms (another textbook subject), know how to use Instruments, an SDK tool.
- luck or genius at predicting the next "fart" app fad before anyone else does, or a unique marketing tie-in, or Ninja programming skills in game design, Open GL, audio DSP, social networking services, and/or etc.
Good Luck.