Forum Moderators: phranque

Message Too Old, No Replies

What programming language to learn after PHP

I know PHP/HTML/CSS and will learn AJAX/JS.. Is next Java? Python? What?

         

WingedHorse

5:55 pm on Jul 21, 2008 (gmt 0)

10+ Year Member



So, I concider myself pretty good at XHTML/CSS (I'm young but been doing HTML since 10 years old so I have some experience) and not bad with PHP either.

I am 18 now and have 5 years before graduating as IT engineer after which my future is likely to be in web development. (Having been meddling around with websites from since I was a small kid and currently in summer job doing mostly SEO)

The upcoming years will likely involve spending time to get some HTML/CSS/PHP references and learning some more JS/AJAX (which I know very little) but... I think I'll still have time that I want to study/create something but want a bit of pause from constant PHP (such as... Uh... now.)

So learning some new programming language seems to be next but I can't decide which one.

From what I've looked at webmaster positions, Java seems to be required pretty much everywhere. Is this really the current situation? Also, is it true that the "Code once run everywhere" has turned to "code once debug everywhere" after so many java versions?

Python seems pretty interesting but how much is it used on server side? (on things that just common PHP wouldn't be able to do as well)

Or should I be looking at something completely different?

physics

8:21 pm on Jul 21, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Perl - If you're interested in learning about a more mature language than PHP, which is also used by many web sites. Also very useful for more back end server and data munging tasks.

Python - Used a lot by some of the 'heavy hitters' such as Google. Many consider it to be 'cleaner' than PHP or Perl and it's heavy object oriented approach seems to favor larger app development.

C/C++ - You may or may not use this as much on web dev projects but it comes in handy sometimes and looks great on your resume. Also, some people won't consider you a serious programmer unless you know some C. I think there's some truth to that - C will teach you good programming etiquette and after all it's the basis of PHP and many other languages (including Perl and Python).

physics

8:27 pm on Jul 21, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Regarding Java, personally I would avoid it. I know a bit of Java but never enjoyed coding in it. You may want to learn some so you can put it on your resume but personally I don't think I'd want a job where Java was the main language. Many employers will put Java on the resume because they think everyone should know it but when you show up for the job you won't actually have to code in Java, ever. So... that one's up to you.

eelixduppy

8:45 pm on Jul 21, 2008 (gmt 0)



>> is it true that the "Code once run everywhere" has turned to "code once debug everywhere" after so many java versions?

There are a lot of depreciated things in Java that will still work in later versions but throw a warning during compiling. As far as using Java goes, there are a few companies that are switching to Java for god only knows what reason, however, I don't find it particularly usefull for real applications. ;) If you take CS classes in college, more specifically introduction classes, you'll most likely be starting with Java as it introduces good coding methods and is all Object-based.

>> not bad with PHP either

There is always room for expansion in the PHP programming side of things. I've been using PHP for a decent amount of time now and I still learn new things once in awhile. Get a book on advanced PHP topics or break apart some PEAR classes and study - you'll learn a lot. :)

physics

8:31 pm on Jul 22, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Here's an interesting link abut perl, python, php and ruby job trends [indeed.com].
It may be surprising to many that Perl leads the pack by far.
The salaries [indeed.com] are relatively close but when I ran the search Perl was ahead by about a grand.

rocknbil

3:55 am on Jul 23, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



C will teach you good programming etiquette and after all it's the basis of PHP and many other languages (including Perl and Python).

And Java, with my bout of experience in Java I was amazed at how close it was to C/C++.

. . . after which my future is likely to be in web development.

Allow me to suggest this, don't worry so much about "new languages." You have the basis of dynamic web apps in PHP. If there's one wall I constantly run into with managing client projects, it's almost always getting a straight answer from a system admin on technical issues. How can we make sure our mailing system is working right? Why is my DNS report screwed up? It almost always gets down to "holes" in my knowledge or in those of the system admin that need to be filled. You might explore real world system architecture, managing servers, things of that sort, that your IT courses don't cover.

...learning some more JS/AJAX (which I know very little)..

These provide solid support for your web apps.

Python seems pretty interesting.....
Or should I be looking at something completely different?

Is there a Monty Python joke hidden in there somewhere?

Welcome to webmasterworld. :-)

tomda

5:44 am on Jul 23, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Is there a Monty Python joke hidden in there somewhere?

Hehehe !

learning some more JS/AJAX (which I know very little).

From my personal experience, JS/AJAX is nice and somehow not so easy to learn... To facilitate your learning task, learn JS/AJAX using already made popular JS frameworksw like JQuery, Mootools, Prototype or Scriptaculous.

physics

10:34 pm on Jul 24, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I guess I neglected to say it but I'd say JS in the context of AJAX is a must if you want to be in web dev in the future. As tomda said, some of the libraries (dojo, etc) are great and can make cross-browsing debugging much easier.

phranque

5:27 am on Jul 25, 2008 (gmt 0)

WebmasterWorld Administrator 10+ Year Member Top Contributors Of The Month



welcome to WebmasterWorld [webmasterworld.com], WingedHorse!

i would add in general that you should learn how to take an object-oriented approach to programming and you can do that in any language - some languages enforce it.

pretty much everything physics said - i would have said if i had thought of it first.
and i did notice the first thing he said was "perl"...

maximillianos

12:40 pm on Jul 25, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Learn database design and optimization (and SQL language). If you are not already fluent, there is a lot that you can learn and do on the database side to improve the performance of your apps. Particularly important when you get to large-scale websites.

If you are not fluent in object oriented programming, then java might be a good language to learn OO. But make sure you learn the object oriented side of it. The language itself is not difficult to learn. It is the design concepts behind object oriented design which can take time to master.

I had the most success learning OO in college. So in the next few years look for some object oriented design classes. Most likely they will be centered around Java, so don't necessarily be turned off by that.

Plus, Java is just such a beautiful language... and it makes learning Object Oriented programming very easy... ;-)

httpwebwitch

4:18 pm on Jul 25, 2008 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I agree with maximillianos: if you're already a procedural programmer par excellence, SQL is the next grenade you've got to have in your arsenal. I don't just mean kindergarten SELECT statements; I mean really dig deep into stored procedures, functions, triggers, cursors, recursive queries, query optimization, distribution, profiling, diagnostics, etc.

In some salary overviews I've seen, DBO's earn significantly more than programmers.

If you are determined to stay in the cubicle/basement/dark damp places with only the glowing screen as your working companion, then move on from SQL into really conquering Javascript and all its nuances. A mastery of Javascript is a highly desirable skill these days.

But if you have an inkling for the brighter side of webmastery, look into SEO, SEM, e-commerce, affiliate marketing, and the various cogs and forces that make money flow around the industry. That is no less fascinating and possibly more challenging than learning Perl. If you're a dude who can build a killer web app AND manage a successful AdWords campaign, then you're a superstar!