Which language for this?

Discussion in 'Programming' started by Darkhodge, May 3, 2006.

  1. #1
    Hi,


    I'm thinking of learning a programming language over the summer holidays while I'm off from uni and was wondering which language I should learn. I have a certain website I want to build so here's some things I want it to do. I'm seriously new to programming web-based stuff so please bear with me...

    1. Handle a large DB - This site I want to build will have members (hopefully a lot :eek:) and I need it to store a large amount of data (username, pw, banner url, description, rating etc...)

    2. Be able to output a random banner/text to an external location. As in I need it to display a random banner + it's associated text and link (of a certain category, e.g. cars) on a different site all together. This needs to be done with a simple insertion of code into the html...

    3. User interactivity - Being able to rate stuff etc...

    4. Needs to be server side

    I was thinking of PHP + MySQL combo but I heard that MySQL should only be used with small to medium size databases... Also please bear in mind I'm a novice at programming (only learnt a bit of c) so I'd like the language to be easy to learn.

    Sorry it's all a bit vague but I really don't know what else I need to say as I've not got any experience in this field. Please ask me questions if you need more info...


    Thanks :)
     
    Darkhodge, May 3, 2006 IP
  2. tbarr60

    tbarr60 Notable Member

    Messages:
    3,455
    Likes Received:
    125
    Best Answers:
    0
    Trophy Points:
    210
    #2
    If you want to be productive learn a bit of PHP and tweak free applications. You will find plenty open source (meaning you can tweak the source code and it's usually free) forum, banner rotater, rating, etc. If you want to build from scratch I'd recommend ColdFusion, it's powerful and very natural in its syntax. You can use MySQL with either and I doubt you'd ever hit the limits of its capabilities.
     
    tbarr60, May 4, 2006 IP
  3. Darkhodge

    Darkhodge Well-Known Member

    Messages:
    2,111
    Likes Received:
    76
    Best Answers:
    1
    Trophy Points:
    185
    #3
    OK thank you. I'll look into ColdFusion as well and decide on my course of action.
     
    Darkhodge, May 4, 2006 IP
  4. ontheweb

    ontheweb Peon

    Messages:
    170
    Likes Received:
    6
    Best Answers:
    0
    Trophy Points:
    0
    #4
    Personally I'd stick to PHP and MySQL. Trust me, you won't hit MySQL's limits for a long time if ever at all. Doesn't a Coldfusion licence cost like a billion dollars or something? :)
     
    ontheweb, May 4, 2006 IP
  5. clancey

    clancey Peon

    Messages:
    1,099
    Likes Received:
    63
    Best Answers:
    0
    Trophy Points:
    0
    #5
    For the web, PHP is widely used language and offers some advantages over Perl because it is designed as a web instead of multi-purpose language. I use a combination of PHP and perl, because I prefer Perl's regex support over PHP, but I like PHP's session and database support better than perl.

    For databases, you could always give Berkeley DB a look. They boast they are the most widely installed open source database and they offer three main versions of the product. Postgre is another open source database option.

    They all have their zealots. Ignore those people and take a look at the specs for each database before making a decision.

    These combinations -- PHP, Perl, MySql, Postgre, Berkeley DB -- have the advantage of running on Windows, Max, Unix, and Linux. You can code from the onset for multiple environments, getting very close to the brass ring of code once, run everywhere.

    Since you are learning to code, I would highly recommend that you go through tutorials on security and that you pay close attention to creating standards compliant code and web output.

    It is not that you cannot get by being sloppy today. It is that you might not be able to do so tomorrow.
     
    clancey, May 4, 2006 IP
  6. Darkhodge

    Darkhodge Well-Known Member

    Messages:
    2,111
    Likes Received:
    76
    Best Answers:
    1
    Trophy Points:
    185
    #6
    Thanks for you opinion on this guys! :eek: I'll look into all 3. I heard PHP is very easy to learn and it seems pretty flexible which is why I was initially thinking of learning that.

    Does PostgreSQL have some sort of advantage over MySQL (and vice versa)?
     
    Darkhodge, May 4, 2006 IP
  7. drionix

    drionix Peon

    Messages:
    189
    Likes Received:
    8
    Best Answers:
    0
    Trophy Points:
    0
    #7
    I have been programming for 5 years now and here are the back-end combinations that I prefer, and the advantages over the other Web Services:

    1. PHP/MySQL/Apache - This combination is widely used, you'll be able to find references and examples on almost every situations and problems you may think for your Web Application. Both PHP and MySQL are easy to learn and have a very wide library of functions and modules which makes it very flexible and can offer from Basic - Advanced level solutions (depending on how good you get).

    2. Coldfusion/MSSQL/IIS - being able to use tag-based scripting can give you advantage on the simplicity of your codings. And as far as I have seen and compared, this combination has the fastest execution time of serverside scriptings. When configured correctly it can process 10,000 DB records in a fraction of a second (my last record in execution was 0.2s :p )

    Just a reminder, it actually doesn't matter what language you use, what matters the most is the algorithm of the Developer/Programmer. ;)
     
    drionix, May 5, 2006 IP
  8. doronty37

    doronty37 Active Member

    Messages:
    130
    Likes Received:
    2
    Best Answers:
    0
    Trophy Points:
    55
    #8
    there's a good alternative called asp.net
    it works great with mssql.
     
    doronty37, May 5, 2006 IP
  9. Darkhodge

    Darkhodge Well-Known Member

    Messages:
    2,111
    Likes Received:
    76
    Best Answers:
    1
    Trophy Points:
    185
    #9
    Thanks for the advice guys! :)
     
    Darkhodge, May 5, 2006 IP
  10. Edmunds

    Edmunds Peon

    Messages:
    136
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    0
    #10
    Also, remember to not to spend extra amount of time trying to optimize your database for 1 million members from the start. It's unneccessary. Optimize it when you will have those members, don't waste time now! Besides, you cannot build a piece of software and scale it infinitely without re-visiting virutally every part of your code first anyway.
     
    Edmunds, May 6, 2006 IP
  11. Darkhodge

    Darkhodge Well-Known Member

    Messages:
    2,111
    Likes Received:
    76
    Best Answers:
    1
    Trophy Points:
    185
    #11
    What do you mean optimize it for a million users btw? I have no experience in setting up DBs so I thought if you set it up for 100 users, it's the same for 1 million? :eek:
     
    Darkhodge, May 6, 2006 IP
  12. Edmunds

    Edmunds Peon

    Messages:
    136
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    0
    #12
    Trust me, when you have a database with 1 million records, more likely than not, you're gonna have problems crawling out of your arse. Most of them programming wise.

    Take for example a forum. If you built your own forum software, and made sure it works with 100 posts, I can tell you that you are very likely going to have revisit virtually every part of your code to optimise it once you get to 1 million posts.

    However, if you are building a forum software for yourself, you shouldn't worry about that optimisation right now, worry about it when it actually becomes a problem.
     
    Edmunds, May 6, 2006 IP
  13. blueoceanwave

    blueoceanwave Peon

    Messages:
    210
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    0
    #13
    Why would you want to put your eggs in one basked? Coldfusion is controlled by one company..... whatever they say goes... and i'm sure their profit margin is more important than yours...
     
    blueoceanwave, May 6, 2006 IP
  14. ablaye

    ablaye Well-Known Member

    Messages:
    4,024
    Likes Received:
    97
    Best Answers:
    0
    Trophy Points:
    150
    #14
    I think you should try to learn PHP/MySQL. It is the most widely used in web developpement. It is also very easy to learn
     
    ablaye, May 7, 2006 IP