I also see a problem in the current shift in technology we see from websites in document form to full-features webapplications (HTML5, JS). Google is pushing this shift, too. But search robots still don't execute JS. Therefore it is not easy to develop a modern webapplication for users with good UIs and at the same time optimize for search robots.
IMHO the big picture issue here is not just the increasing complexity to develop across, but that more and more layers of media are being commoditized and owned by the search providers.
- Search engines let others build communities and filter out the noise, then scrape the reviews & replace the sources with place pages.
- Expanded snippets (and review scraping) allows the search result to act as the individual product level page. Some custom vertical filters (like the Google recipes search) now allow Google to eat the category level pageview as well. Microformats encourage even more structuring of data, and as it is structured the independent sources of data become commoditized when the data is repeatedly structured in an easy way that allows search engines to displace the end data source.
- Ecommerce sites submit feeds & in AdWords they can bid on a CPA basis...there are a lot of 1-word searches where Google shows me some random product ad & they are collecting all that aggregate feedback. They are not the only ones monetizing down the tail though. Search Bing for "mother's day gifts" and they have some ugly shopping promotion above their organic results. Search Yahoo! for something like "mortgage rates" and check out the ad in the organic results.
- Then there are tons of other sorta attacks on the organic results in terms of verticals (books, videos, local, etc.) as well vertical ads (mortgage, credit cards, hotels prices, etc.) as well larger ad units that push the organic search results down, and finally even new search result formats which use way more whitespace to push the organic results further off the screen.
- Then there are mobile applications and mobile search interfaces that further put themselves between searchers and anything "algorithmic/organic/unpaid" and the end user, replacing it with higher ad density.
SEO was a growth industry for at least a decade, but in the US now I think it is more a game of increasing competition fighting for a smaller pie.
What makes it doubly hard for smaller businesses is that with the Panda update Google directly stepped away from the pure algorithmic approach and decided to subsidize brands. Great if you are brand, but not so good if you are not. Of course, a lot of businesses do not have the scale needed to justify large investments in brand advertising. Geico can spend nearly a billion Dollars a year on ads, but whoever reads this probably can't. ;)
In general I would say the more experience in programming you gain the less it matters what language you are using. Learn the basics first. And learn language types like OOP and functional programming. As a professional web developer you should try to learn several frameworks as well (Zend Framework, RoR, Django, etc.). But I would say that's the second step and not the most important one. Frameworks and API come and go, they change all the time. Try to get the big picture.
I'm currently using PHP and Python. I like Python more because of it's simple style and it's clean APIs. But still most of my professional projects are done in PHP because my customers want it that way.