Log in

No account? Create an account
Previous Entry Share Next Entry
Language Choice
what problems?
ellakhne_puge wrote in webdesign

I need some advice in regard to which language to use for developing a dynamic website. My wife and I are thinking about creating a LMAO website, which will allow people to organize various LMAO projects. The website will allow users to register, log in, create projects, join projects, upload pictures, and so on. It's not terribly large project, but still pretty complicated for people who haven't done any web development and little programming in general.

The first problem is deciding upon a language to use. The site will, at least in the beginning, run on our server at home, which is FreeBSD running Apache2 (or anything else we want, to be honest. I'm not giving up FreeBSD, though!). It looks like all major languages in the field, including PERL, Ruby (and Ruby on Rails), Python, and PHP work well with Apache, so that shouldn't be a problem. For the database back-end, we'll be using PostgreSQL or MySQL (if we have to), both of which are widely supported as well.

My wife doesn't have much experience in programming, so for her it will be new experience one way or the other. I have some, but still little. The only language I'm familiar with and can actually write something useful in is Common Lisp. There exists mod_lisp and a couple of web development frameworks, TBNL and UnCommon Web, but the process seems hacky -- from what I can tell -- unless one uses a commercial CL implementations that cost a lot.

I've looked briefly at Python and Ruby, as well as asked for opinions from various groups of people (programmers who prefer Lisp, Ruby, or Python), but it's all still looks like mambo-jumbo to me. The only thing they agree on is that one should refrain from using PHP for anything non-trivial, so I'm inclined to believe that. As far as PERL is concerned, I've always had a distaste for it, so am not all that keen on using it.

Could anyone recommend one of these language, or perhaps another one, that would be suitable for our needs? I've pretty much made up my mind in regards to PHP and PERL, so I'm not looking for a debate about why they're good. I also wish to stay away from Windows-based and Java-based solutions.

  • 1
For your database, I suggest PostgreSQL over MySQL (My isn't all that great anyway. If you can get your hands on a copy of Oracle, go with that!).

I've heard alot of people swear by Ruby (not so much Ruby on Rails, which I've heard bashed a couple times), though I've never worked with it. For someone who's never programmed, I'd suggest PHP (though you've already giving your feeling for that). For someone who has done a bit of programming, a viable alternative could be a C/C++ CGI. Doing a CGI would take a good deal more work and require more knowledge in programming, but would give you a heck of alot of power.

Unless the language choice has no PosgreSQL bindings, PosgreSQL is my first choice. I don't even think I'd choose Oracle over it; mostly because it's commercial ;)

As for C/C++ CGI route, I doubt that's going to be a good option for us. Both languages are too low-level for my taste and CGI itself seems like a bad approach. Granted I know very little about it, but I was led to believe that things like ASP, mod_perl, mod_ruby, mod_python, etc. were created to avoid CGI and its overhead.

Actually, there's going to be a free version of Oracle in the rather near future. It's *really* powerful and blows PostgreSQL and MySQL out of the water.

As for the CGI stuff. Yeah, those are good points, and it can be a pain in the butt to use. ASP is another good choice if you already know some programming, but ASP is Windows, which is no good if you're running FreeBSD.

It's *really* powerful and blows PostgreSQL and MySQL out of the water.

The question to ask yourself, of course, is whether you need that.

In some cases using Oracle as a back end is probably like going rabbit hunting with a tank.

I recommend the MySQL/PHP pair, they seem to be made for each other. Most of my customers love PHPMyAdmin they can get down and dirty with the database w/o using the command line.

Unlike babillon, I've heard about 95% positive things about Ruby on Rails, and I've tried it. It's quite interesting and may be a good starting point for a neophyte developer.

I'd ignore those who claim you shouldn't use PHP for anything critical, as Amazon, Google and Yahoo! all use PHP in some capacity. If it's good enough for them, it's good enough for me.

Ruby on Rails definitely seems like a very good choice right now. I've read a few articles on continuation-based web frameworks and it does make sense. Ruby itself scares me a little bit. I'm all for concise syntax, but it seems to go a little overboard with that ;)

As for PHP use by the big guys, I don't think that's a good argument. Many banks across the globe use systems written in COBOL, but that doesn't make COBOL a good language by today's standards.

Banks are running on legacy systems that were written in the 1970s. The same cannot be said for Google, Yahoo!, etc.

Banks aren't also innovative, which also can't be said for Google, Yahoo!, etc.

Bah, who asked you, anyway!? Who are you to ruin a perfectly good argument like that, huh?!

In other words, touche :)

Many banks across the globe use systems written in COBOL, but that doesn't make COBOL a good language by today's standards.

True, but one can make alot of money off of it.

*hates COBOL, but is going to be learning it anyway*

I'm absolutely no help with coding, but out of curiousity, are you attempting this to replace the now defunct-ish nervousness.org?

That's actually exactly what we want to do :) My wife was a member of Nervousness before it went down and wants to organize something similar, but better maintained and without certain features which she doesn't care for ;)

Awsome. I participated a lot on there 3/4 years ago. Do you have a domain registered? If you don't mind sharing, I'd like to bookmark it so I can keep an eye out when it goes live.

[Edited, since I gave wrong addresses]

We haven't decided on the name/domain yet, so if you write to either ellakhne_puge@livejournal.com or wrymuse@livejournal.com, we'll let you know when anything worth mentioning happens :)

  • 1