If you're a novice, of course it is normal to consult outside resources a lot. With PHP it will require an obscene amount of memorization since there aren't really any strict naming or parameter conventions within the builtins lib. Plus, you've got to recall everything about the framework, too. I've been developing with Django for a couple years now and I still have to look up stuff I don't use that often. It just isn't efficient to try to memorize every single detail.
Don't worry too much about people who claim to have made an app in 30 hours or something. Chances are they (a) used something familiar to them and (b) most of the code came from existing libraries, APIs, etc. For what it's worth, I flag everything with some sort of development time in the title because I find it to be both arrogant and largely irrelevant (you made a URL shortener in 5 hours?! Do you want a cookie?!).
If you want to write code faster, write more code. You will get faster. That's about it.
That's the single best reason to use a good IDE live VS.NET + ReSharper. There's simply no reason to ever pull up the documentation because it is all right there.
Need to do something with Sockets? Type "sock"+SHIFT+CTRL+SPACE and a list pops up with everything you can do with Sockets, even if it's stuck way at the bottom of some obscure namespace you never would have found (let alone thought to import). All the classes have descriptions and constructor info. All of it is hooked into the docs and examples with F1.
I've done Django in Eclipse recently, and I'm currently doing a bit of PHP consulting, also in Eclipse. Even with all the right plugins, I still find myself on Google constantly, just like you describe. It's frustrating being expected to memorize things, especially when you know that you wouldn't need to if only you had better tools.
In general, having O(1) access to everything you need during development will greatly increase your productivity (it will help achieve and sustain flow more often). You might (or rather, will) have to write some tools to achieve that. This is where having an easily extensible environment like Emacs comes in.
"Chances are they (a) used something familiar to them and (b) most of the code came from existing libraries, APIs, etc."
That's almost always true, but perhaps that's the lesson right there. People (other than development snobs) don't care what you used to build it or whether you had prior experience in the field, but they do care that you can get something to them quickly that satisfies their needs. So maybe the takeaway is a.) learn some useful libraries, and learn them well and b.) use what's familiar to you.
I am a huge proponent of writing as little code as possible. To that end, making use of third-party libraries, frameworks, and so on are marks of a great programmer (to me). Even still, a product should speak for itself; it should not have to be justified by the amount of time it took to create it.
(b) most of the code came from existing libraries, APIs, etc
In my opinion the "X in Y hours" articles can be useful. If they can make a fully functional service in a short time due to libraries, those APIs and libraries might be of use for others.
If someone made an article called "Copy of Google Reader in X hours" that used a good JS and feed parser library, it would be interesting to many that would otherwise not know about these libraries
Don't worry too much about people who claim to have made an app in 30 hours or something. Chances are they (a) used something familiar to them and (b) most of the code came from existing libraries, APIs, etc. For what it's worth, I flag everything with some sort of development time in the title because I find it to be both arrogant and largely irrelevant (you made a URL shortener in 5 hours?! Do you want a cookie?!).
If you want to write code faster, write more code. You will get faster. That's about it.