Forum Moderators: buckworks
1. I was just wondering what programming language do you prefer to build an ecommerce/shopping cart site off of?
a. And your reasons why you like or dis-like the different web programming language listed below?
JAVA, PHP, ASP.NET, C#, PERL, RUBY, VB.NET, PYTHON, etc...or a mix of the above.
2. What web programming languages do the big players use (i.e. Amazon, Buy, eBay, OverStock, etc...)?
3. Anybody know any websites that have done a comparison between all the known web programming languages?
Thank you,
olimits7
PHP seem to be the most approachable and easiest to follow and modify.
VBScript/ASP just about the same as PHP but now passe.
VB.Net/ASP.Net harder than PHP and more difficult to modify.
C#/ASP.Net very much the same as VB.Net. My long experience with Visual Basic still has me mentally translating the code into VB.
JAVA almost impossible for a Windows based programmer. All the documeentation expects you to know the underlining Linux/Unix code and somehow substitute the Windows code for it. Impossible to get SUNs version working on Windows Vista Home Edition for development.
PERL/Python/Ruby never see on my clients.
I dont understand this statement. JAVA is platform independent and has nothing to do with Linux/Unix. In fact, I am a JAVA developer and I know NOTHING about Linux/Unix. I came from being a Windows based Delphi developer and found JAVA to be quite simple.
If I had my preference, I would develop in this order.
JAVA - very secure, easy to implement and maintain
C# .NET - very similiar syntactically to JAVA
PHP - just a nice, simple easy language.
I think its all in what you are comfortable with.
Of course, that can also be a downside - that everyone uses it, and it is accessible. You can get some poorly written stuff in php, because lots of folks write it...and it's a target for hackers because it is so simple to pick up and there is poorly written code out there. You really got to keep up with the updates on the scripts you use.
I actually use a fair amount of PERL (I know, I'm a dinosaur)...
about the same as PHP but now passe.
Actually not, there are a lot of RFP's for .asp work and many Windows-based server running .asp code. Most people will say the same about perl, that it's "old school" or "inferior."
There is no right answer to this question. As one who programs well in Perl, PHP, a little more rusty at ASP, it's like PC versus Mac: you can't make any assumptions until you actually give a good hard go at the alternatives.
Personally I prefer PERL. Why? It can do things PHP and ASP cannot do, more efficiently (arguable; you can always do something using these other languages, it's just not "native" to their usage.) It's got a longer history of support and libraries, a huge community of developers and libraries, and probably the deciding factor, it's what I've done the longest and have grown fondest of.
Second, PHP, which is probably the largest usage today. Why? Because many of the functions/subs I write by hand in perl are programmed right into PHP as predefined functions. PHP is embedded right in the page, and in early years perl programmers referred to it as "perl in the page" because it's so similar to perl This makes it much easier for newcomers to learn, but to me, these make it a bad thing on two points. Why?
I could do like most programmers and when approached with a task, look for a perl library that does it. This is one of the basic precepts of perl programming, don't re-invent the wheel. But the problem I have with this is 1) code bloat, why carry around 1200 lines of code when you only need something that uses 20 lines of it, and 2) I resent black box functionality. When I write code, I know exactly what it's doing, and when I have problems I know exactly where to look. When using a module and I get unexpected results, I pore through the documentation looking for what I'm doing wrong and often don't find an answer as to why it's doing what it's doing . . . and always under a deadline, I say "screw it" and write my own code anyway.
So although the internal functions of PHP are tried, tested, and proven, I'm not comfortable with feeding a function data and hoping it all works out, and has no security problems.
The second reason this is a "bad thing:" A little bit of knowledge is dangerous. PHP is easy to learn, it takes only a little bit to get your first email form up and running - until it is painfully pointed out it has security holes big enough to drive a semi through (usually pointed out by spammers and hackers, who definately want you to keep that hole open and offer up no help.) So just like your "quick fix" of getting a form up for a client and looking like a star, you immediately look for a "patch" to fix the problem at hand . . . then another one comes, add another patch . . . and it becomes a game of patch on patch, until you have a mess on your hands that no programmer wants to touch. I have seen code that I can clearly trace the steps through, "they started with this, then added this because something is broken . . . "
You get the idea. PHP is a great language, but anyone dabbling needs to really take on the responsibility of what they are doing.
An advantage for a company, if your PHP is well written, as much of it is, it will make it easier to switch programmers and there are definately more PHP programmers out there today than perl programmers. So if you're not programming but just deciding what you want your code in, choose PHP in spite of everything I've said. :-)
If given a choice, I write in perl. Too often clients have been culled to the myth that PHP is better, so my hand is forced to write in PHP. No matter, I'm at home there too . . . just not as much at home.
echo "Hello World";
This will not work.
What is actually mean is:
<?
echo "Hello World";
?>
When someone knows PHP, they know enough to frame 'echo "Hello World;' with the '<?' and '?>'.
PHP examples mostly include the entire thing including <? to ?>.
JAVA examples would show the equivalent of 'echo "Hello World";' leaving the learner with unworkable code.
Now if you want SUNs explation of "Hello World" take a look at this and then explain how you can say that JAVA is easy to implement and maintain.
[java.sun.com...]
A very simple hello world in java is using JSP.
<%
System.out.println("Hello World");
%>
I could make the statement; When someone knows JSP they know enough to frame System.out.println("Hello World"); in <% &>
As I said, I think its all in what someone is comfortable with.
I can guarantee if you are comfortable with PHP and programming in general, you can put together a hello world struts app easily ... just google struts hello world for tutorials.
As for your link to SUN and hello world. That is an example of how to create a CORBA hello world. Yes, it is very involved as CORBA would be in any language. You are not comparing apples to apples. A more realistic hello world.
The thing with PHP is it is a scripting language ... as is JSP .. with JAVA you are able to break it down into manageable layers having a presentation (jsp) a controller and a model (hibernate, POJO, EJB) .... JAVA truly is simple if broken down into smaller pieces and in the end gives a much more robust manageable application. In my opinion anyway. :)
[edited by: lorax at 3:08 pm (utc) on Feb. 21, 2009]
what programming language do you prefer to build an ecommerce/shopping cart site off of?
I ask because I cannot imagine "average user" wanting to download or install an Applet just to buy widgets. Seems like this would be a risky venture for an e-store.
I think JAVA is very relevent to the root question as it was specifically mentioned. "JAVA, PHP, ASP.NET, C#, PERL, RUBY, VB.NET, PYTHON, etc...or a mix of the above"
I dont personally have my site in JAVA (yet), but I do develop web sites in JAVA for a living. They are very, very easy to maintain and manage.
Again, checkout old navy ... JAVA/STRUTS based shopping cart.
I'm noticing that a lot of websites use JAVA now, and I was thinking when I update to a new website I might want to build in JAVA.
I think the "vcommerce.com" shopping cart is based off of JAVA, and I really like how it performs. Maybe someone more experienced can confirm that "vcommerce.com" is built off JAVA, but I'm pretty sure it is.
ssgumby, I'm new to JAVA:
1. But what do you mean by JAVA needs a framework to go with it?
a. So does that mean if JSP can be used with JAVA; can PHP/ASP used along side it too?
2. Java doesn't run on it's own like ASP and PHP do?
3. What are all the frameworks that can be used along with JAVA?
Do you know any good websites that explains the ins/outs of JAVA and how it works with websites?
Sorry, I'm kind of new to JAVA and want to learn more so I can understand how it works...I know how ASP/PHP work but I'm confused on how JAVA fits in with website development.
Thank you,
olimits7
As for vcommerce.com ... looking at some of their clients, some *appear* to be JAVA and others appear to be something else ... some .NET and others. Im really not sure what the underlying framework is.
As for your questions.
1. Im just saying that there are many ways to create the website. Using STRUTS is one way, Java Server Faces, Spring is another, there are even more.
a. You cant mix asp/php into a java application. JSP is the equivalent of ASP really. You can write JAVA code write in the JSP or, and this is more preferrable, you can simply have the code in JAVA in the backend and use JSP pages for presenting it.
2. Really ASP and PHP doesnt "run on its own". With JAVA, you need to run it within an application server. Most hosts have TOMCAT available to run your java application in.
3. Here is a nice document showing different frameworks <snip>
I guess the real issue here is this ... if you are not comfortable with JAVA, it is probably a bit daunting. Like I said, I work in it day in and day out.
[edited by: lorax at 3:06 pm (utc) on Feb. 21, 2009]
[edit reason] no urls please [/edit]
C#.net is my preference for several reasons. There is alot of canned controls that take the repetative code writing out of backend management sections for starters. This saves a significant amount of time along with cutting out several layers of the process that require testing and debugging. It is possible with .net in general to create a highly modular application, separate html from logic code, enforce code abstraction. .Net is strongly typed which again prevents a slew of potential problems, although can be a bit of a headache at first coming from asp classic/php. Development enviornment can really play a huge part in the process and Visual Studio is pleasure to use. All the debug features are extremely useful and I always find myself missing them in other languages. I'm really just scratching the surface here, asp.net in general is a beast to learn everything you can do with it, much more so than asp classic.