|
|||||||
New to SitePoint Forums? Register here for free!
|
![]() |
|
|
Thread Tools | Display Modes |
|
|
#1 |
|
SitePoint Member
Join Date: Feb 2005
Posts: 3
|
I consider myself to be a Web Application Developer, meaning that I have the skills of a web developer (xhtml, xml, DOM, javascript, PHP, perl, CSS, browser compatibility, UI design, rdbms and dba, linux, apache configuration and administration, etc) combined with the experience of software development lifecycle, best practices, project management, documentation, debugging, code profiling, system administration, quality assurance, and release management. I started out back in 1996 on Microsoft, but discovered Linux in 1999, and moved to a Linux desktop in 2003.
Since I have been looking for work, I continue to notice a remarkable consistency in what technologies are used/sought after in the corporate environment. If PHP is used (not the most common), there is an additional requirement of Java, or C++. I have not yet gone 'up the ladder' to these more traditional programming languages. The other striking observation that I've made in my job-search is that there are few if any 'webmaster' or jr. software developer jobs. I guess these are victim of the economy or offshoring. For example, here is a typical example of what companies are looking for in a Sr. Web Application Developer: I have focussed on serving small businesses where a Java setup is overkill, never mind the expense. Because I have focussed on free technologies, I have avoided costly licenses for things like Oracle, Weblogic or BEA etc. I have several questions: If you are a Java or C++ programmer, how did you learn it? I can only assume that somewhere there is an entry-level job at a large company where you can train on the expensive proprietary products, or that if you major in CS that you'll get some experience there. If you have experience in advanced PHP development, meaning that you are using template engines like Smarty or Flexy, object-oriented programming libraries from PEAR, and advanced PHP applications/frameworks like eZPublish, Plone or Horde, what is your current occupation/employer? Are you using any of these in a corporate environment? Do you also know Java, C++ etc. and if so, how do you feel they compare? What is the easiest/quickest/best (these are obviously not the same) way to learn Java? I am currently reviewing sitepoint java tutorials and looking for more quality sites. What are the good resources on the net? If you use all these technologies/applications professionally, do you develop on a Linux workstation or Windows? |
|
|
|
|
|
#2 | |
|
SitePoint Addict
![]() ![]() ![]() Join Date: Jul 2003
Location: Los Angeles
Posts: 200
|
Quote:
Focus on learning JSP+JSTL, some kind of MVC framework like Struts, Spring(highly recommended) or Webworks. Learn an ORM like Hibernate, JDO, Cayenne and pick a database to get good with. Finally, learn a servlet container like Tomcat which is simple to use or full-blown app server like JBoss, Resin. Nobody expects you to know them all but at least you if know one they'll know you can pickup on another one. If you learn Tomcat and Struts well enough and the job requires Weblogic and Spring you might impress them enough to show you can learn those on the job. As for resources, my favorite is www.theserverside.com but there's also www.jguru.com and www.javaranch.com. Sitepoint is not the greatest site for java tutorials, most are old(ack, EJB articles from 2001) and most tutorials on JSP use ugly scriptlet code. Recommended books: J2EE Development without EJB. Hibernate in Action. Core Java Volumes I&2. Effective Java(after you know java well enough). JDK 1.4 Tutorial. JUnit in Action. Eclipse in Action. And finally the O'reilly book on JSP and Servlets. It's a lot to soak in but with time it will pay off. Oh and I develop on Linux all the way. I can't stand Windows.
__________________
My Blog | My Neglected Java Site Good stuff: Spring | Hibernate | Acegi Security | Typo Blogger |
|
|
|
|
|
|
#3 |
|
SitePoint Member
Join Date: Feb 2005
Posts: 3
|
Thanks Kuato, and I like your new site too. I just setup a VPS myself with 1and1.com, and reading your 'securing your VPS' article was valuable to me also.
|
|
|
|
|
|
#4 |
|
Non-Member
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Jan 2003
Posts: 5,788
|
I started off learning PHP but I realised what you recently found out in regards to what is acceptable/required from the start off about 18 months ago.
I started to look into Java about then though I suppose if I was being honest my Java skill and knowledge is still limited in some ways, for example I've not looked at JSP? I've looked at Swing for a while and found I liked it a lot, an area I'd like to get back to in fact ![]() As for the web, my view is that PHP is more ideal than for example JSP but JSP is still a preference simple because it's Java - in the sense that a lot of software is still Java as I see it. Python is another option to look into I suppose, it's not mainstream (yet) but compared to Java, it appears to be a 'general all round' platform as well... Just my thoughts though ![]() |
|
|
|
|
|
#5 |
|
Yugo full of anvils
![]() Join Date: May 2001
Location: :noitacoL
Posts: 1,870
|
Off Topic: Plone isn't a PHP framework... ![]() |
|
|
|
|
|
#6 |
|
SitePoint Enthusiast
![]() Join Date: Jul 2004
Location: Budapest, Hungary
Posts: 38
|
I do also feel that corporate environments prefer Java most of the time. Marco Tabini, the publisher of php|architect came up with the idea that the reason behind this is that decision makers doesn't necessarily know that PHP is suitable for the solution, though PHP is enterprise-ready now. He has started to look for case studies and plans to start a website dedicated to them. The site will promote PHP for enterprise use and will provide marketing materials to let decision makers know about the fact, which itself existed for months (years?) now and software architects usually know about it. However, the people who actually make the decision didn't get any business materials for that.
I believe the very same and have big expectations regarding the website. This is why I continue on specializing in enterprise PHP (web) applications and complex portals. |
|
|
|
|
|
#7 |
|
SitePoint Guru
![]() ![]() ![]() ![]() ![]() Join Date: Apr 2004
Location: Quincy
Posts: 643
|
I think another problem would be PHP's reputation as a language used as scriptlet code. When I started programming php, I didn't even know about it's OO features until I read sitepoint.
![]() I think the majority of badly written code and code intermingled tightly with html probably shuns most decision makers away, as well as a number of "articles" out there sich as this one that gives them a bad impression of php overall. |
|
|
|
|
|
#8 |
|
Non-Member
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Jan 2003
Posts: 5,788
|
I don't actually believe that the corporate world of business (and finance for that matter - there is a slight difference) are ignorant of PHP and how far it has come. Sure there may be a few black spots but I feel that they are aware of PHP and proberly are also aware of what PHP is capable of as well
![]() But I suppose that PHP is still seen as muddied water at the moment, Zend are doing their best to promote PHP in a better specitive but that is about it... Who else is pushing PHP I ask? Pratically no one. Whereas Java has been around for years, has a developer base with experienced developers in any number of industries, etc etc PHP lacks this unfortunately in regards to actual development of enterprise level projects, and the time PHP has been enterprise ready? Just my thoughts. I feel there are a few other issues but lets see what others have to say first huh ![]() |
|
|
|
|
|
#9 |
|
SitePoint Addict
![]() ![]() ![]() Join Date: Nov 2001
Posts: 213
|
I learned some because my last employer chose a Java solution. I wouldn't recommend that to anybody. Java web apps certainly have a ton of power, but I see them as overcomplicating a simple answer in favour of a structured solution. Java's strength is still interoperating with legacy systems far away from web servers. The whole Java web app framework(s) seems like a big hack to me. There's no web language there... only Java. I don't program web sites in C++ anymore, either. (I'm glad those days of C++ CGI are long gone).
Right now I'm a pure PHP developer. This company hasn't even considered Java due to their small size. The primary web app was programmed in PHP starting in 1998. It's a kludge now because of its humble roots, but it works. Anyway, since we've been bought out by a huge corporation they've been in the background so we still have that small company feel. I like it that way. Finding a PHP job isn't too hard, but you do have to look harder. The best place is often companies who just need a web developer and don't want to make the technology decisions themselves. Law firms and smaller companies are perfect. If I were to try to learn Java now I'd start by building an app that I already know the design for. Maybe a small CMS or forum. Then I'd build it in JSP so It would be familiar like PHP is. From there I'd rewrite some of the functionality into servlets. Once you've learned that, jump into Struts and try to write the whole thing again with proper MVC design. However you learn, just make your first apps really messy so you only worry about how to code, not what your app's design is. |
|
|
|
|
|
#10 |
|
SitePoint Enthusiast
![]() Join Date: Oct 2004
Location: wolcott Ct
Posts: 41
|
I see the big difference as two things. First Java was along longer then php. Java has the backing of major corporate backing. Php, being more of an opensource technology gives some people the impression that it isn't as strong. This is the same reason that Microscam's buggy exploiter is still the most used browser.
|
|
|
|
|
|
#11 |
|
get into it!
![]() ![]() ![]() ![]() ![]() Join Date: May 2004
Location: Australia
Posts: 863
|
Would it not be better if we looked into "WHY" java is still a corporate favorite and THEN bring PHP on the scene?
From what I know, versions of Java have been developed specifically to serve the enterprise world. I am unaware of the details of what it offers because I'm not Java man, I'm sure freephile could elaborate on this. Secondly think about the user base, java is being used by the large scale software producers, now if the producer doesn't offer it (php) the consumer has little choice. Oh! and consultants usually have the ability to influence the client's lang req. PHP, so far due to the more-or-less unorganized development community structure has failed to entice the (not USS) "Enterprise". Unless the guru's lead a humungous team and develop something that could challenge java's prowess, PHP will find it diff to arrive on the enterprise arena in a big way. Probably its time when Zend came out with a PHP EE .Most companies in India ask for C/C++/Java experience for assessing the programming base of prospective employees. Due to the variation in their target environments it is hard to compare one with another, each is suited for certain stock tasks. Chaps ... its about time we united and made something big with php ... PHP guru's on sitepoint, if you read this ... start acting ... |
|
|
|
|
|
#12 |
|
Non-Member
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Jan 2003
Posts: 5,788
|
Some good points you've made, although on the point of an organised development initiative to compete against Java I think is pointless in regards to the length of time Java has (already) had to establish it's self for one reason?
Nothing that can be done 'to' PHP for the medium term could have any (substantial) effect on the Java user base, by medium term I mean the next 3 to 5 years. Also I don't think that PHP being open source (today) puts coporations off as now we see that Sun Microsystems has released Java under the open source umbrella. Maybe in the past PHP being open source was seen as a weakness but not today, I think coporations have evolved to accept that open source is here to stay, and in fact has some advantages ![]() |
|
|
|
|
|
#13 |
|
get into it!
![]() ![]() ![]() ![]() ![]() Join Date: May 2004
Location: Australia
Posts: 863
|
yeah I totally agree Dr. ... infact coming to think of it if a company gets a product under an open source license ... gives them all the more freedom to have it tweaked by a "cheap labor" consultancy thereby reducing costs.
But now that you have some "fat" apps turning up on the enterprise scene done in PHP and maybe a few other tools to add power ... maybe all we need is that little push to get into the game and give other dev tools a chase for their lives ![]() Also, if reputable firms like Zend gave out renowned certificates like MS and Oracle and Sun, maybe the enterprise trust in a company employing such developers would increase which may in turn help in bringing php onto the corporate scenes. You've got to admit, those part-time script-kiddies have really spoilt the market, there needs to be a way to distinguish yourself from them (besides past work ex.) |
|
|
|
|
|
#14 |
|
SitePoint Enthusiast
![]() Join Date: Oct 2004
Location: wolcott Ct
Posts: 41
|
Let us have hope for the future. I think php will have its day but we have a lot of work to get it there.
|
|
|
|
|
|
#15 |
|
SitePoint Addict
![]() ![]() ![]() Join Date: Nov 2001
Posts: 213
|
I don't think it's fair to say that adding enterprise features to PHP won't take away from Java's user base, so it's pointless to try. What about PHP developers? I want those features.
PHP needs one thing that can be done in the short-medium term and would improve it enough to make me forget about Java: A real application server ala Websphere, OrionServer and JBoss. This means that PHP would know it's running on an app server rather than as an Apache module and would open up features that the app server provides. It would have shared memory and page compilation (use Turck MMCache), real db connection pooling, a built-in database abstraction layer (build ADODB into the app server), and a standard API (maybe PEAR or something like that) with built-in THREAD SAFE libraries for GD, bzip, etc. By re-using and packaging existing technologies together into the app server it can be done quite quickly (other than the thread safe libraries). It would give PHP a standard server environment for enterprise development. By supporting shared servers and allowing Apache to run as the HTTP front-end, it could be everywhere. |
|
|
|
|
|
#16 | |
|
SitePoint Addict
![]() ![]() ![]() Join Date: Sep 1999
Posts: 209
|
Quote:
Planned for properly, the 'persistent connection' approach of PHP/Apache is certainly workable, and has never caused me any serious problems. Again, I say 'planned for properly'. Going back to '97 I hit some issues with that, cursed about it, said it sucked, then learned how to develop with the system instead of against it, and it's fine. It's possible to do connection pooling, PHP file caching, standard db abstraction, standard library set, etc., and many people do it. They just all do it different. Having *one* proscribed architecture as the 'defacto' or 'default' standard might be helpful in other scenarios, but might turn off others, perhaps ending in a net wash for the advancement of PHP in general.Any more thoughts?
__________________
Michael Kimsal ============================= groovymag.com - for groovy/grails developers jsmag.com - for javascript developers |
|
|
|
|
|
|
#17 | |
|
get into it!
![]() ![]() ![]() ![]() ![]() Join Date: May 2004
Location: Australia
Posts: 863
|
Quote:
![]() |
|
|
|
|
|
|
#18 | |
|
SitePoint Addict
![]() ![]() ![]() Join Date: Nov 2001
Posts: 213
|
Quote:
|
|
|
|
|
|
|
#19 |
|
SitePoint Member
Join Date: Feb 2005
Posts: 3
|
oops, musta been thinking of another project when I actually said Plone. Although Plone rocks, it is Off-topic in a PHP forum, and I must have been thinking of something like Blueshoes, Seagull or Midgard. From the Plone website...
"Plone is built using Zope, an object oriented application server. The language that drives Zope and Plone is Python" |
|
|
|
|
|
#20 |
|
Non-Member
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Jan 2003
Posts: 5,788
|
Off Topic: Wasn't there a recent(ish) thread started on this forum about an open source project that'd allow threads for PHP? Okay, not sure just how far the discussion got, or if the project could eventually prove useful (for PHP) but it was related to threading if I remember. Maybe the original thread owner could step forward with a url to clarify this |
|
|
|
|
|
#21 | |
|
SitePoint Wizard
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Aug 2004
Location: California
Posts: 1,689
|
Quote:
The two different approaches to scaling, or building apps for that matter, are just that: different. If you want an app server based system, Java is much better now than PHP will ever be at that approach.
__________________
Christopher |
|
|
|
|
|
|
#22 | |
|
SitePoint Zealot
![]() ![]() Join Date: Oct 2004
Location: Moscow, Russia
Posts: 147
|
Quote:
About TYPO3 TYPO3 is a free Open Source enterprise-level content management framework that can be tailored to businesses to meet their internet, intranet and extranet needs. TYPO3 offers functions and modules as well as an expansion kit to maximize the scalability of the application. At last count, TYPO3 was installed on more than 72,000 servers and more than 17,000 developers have registered at typo3.org. Worldwide, more than 700 consultancies and hosting companies in 50 countries offer TYPO3 services. The application interface is available in over 40 languages making TYPO3 a truly global solution. |
|
|
|
|
|
|
#23 |
|
Resident Java Hater
![]() ![]() ![]() ![]() Join Date: Jul 2004
Location: Gerodieville Central, UK
Posts: 478
|
If you look at universities etc etc out there, they all seem very Java orientated. I guess that Java lets students focus on problems without the querks in C++. Java is a broad lanaguage that makes it ideal for teaching other computer science related concepts, where as PHP is seen very much as a text processing language for web apps.
It seems the general progression after university for many students, is to get a job involving Java where they can build on something they are already familar with. Like most programmers, once you learn a language, you find it hard to migrate to a new language due to the fear of having to learn all of the language specifics (for instance many will say C++ and PHP are similar, which is true when you see that both OO / Proceedual, etc etc, however there are loads of small differences that one has to get used to). The other problem with many PHP coders, is there are a lot of "hackers" with no formal CS background such as myself. I guess that is why so many people are expected to know Java or CPP as those are languages that most people learn in CS courses, and therefore this means the programmer will have some idea when it comes to design and formal processes / terminology |
|
|
|
|
|
#24 |
|
Non-Member
![]() ![]() ![]() ![]() ![]() ![]() Join Date: Jan 2003
Posts: 5,788
|
I agree
![]()
Off Topic: At the moment I'm thinking about pulling some hard cash together to allow me to get started on Sun Microsystems Java certs. I already know PHP, have a general idea of design patterns and OO so why not huh? I feel I need the certification for myself and for a chance of gaining some kind of employment in the future. At the moment my Java skills are 'not there yet' but I see the certification as being one way to learn Java, in a way I couldn't otherwise learn it, such as the way I learnt PHP ![]() Knowing one language and being able to use properly (no hacking in other words) does help you learn other langauges more easily in my view. Learning (any) languages or technology is relatively easy, learning how to use it properly to gain the most is another matter all together |
|
|
|
|
|
#25 | |
|
get into it!
![]() ![]() ![]() ![]() ![]() Join Date: May 2004
Location: Australia
Posts: 863
|
*** Is currently looking at typo3.org. Almost thought you were correcting your typo mistake
***Quote:
|
|
|
|
|
![]() |
| Bookmarks |
«
Previous Thread
|
Next Thread
»
| Thread Tools | |
| Display Modes | |
|
|
|
All times are GMT -7. The time now is 17:54.









.



Linear Mode
