1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

C#, Python, PHP...For Web Development What is the Best to Start with as Foundation?

Discussion in 'General Programming Chat' started by mackristo, Apr 16, 2009.

  1. mackristo

    mackristo Newbie

    Joined:
    Apr 27, 2008
    Messages:
    7
    Likes Received:
    0
    I know that similar questions have been asked but I would like to hear some more opinions on this. I would like to learn web development but also learn something that will allow me to pick up other skills relatively easy. Also, I would like to be able to make money with this skill beyond my genuine appreciation and enjoyment of programming. What is good for site creation, web applications (web 2.0ish) affiliate marketing, blackhat, freelancing etc... I've bounced between several and I just want to focus on one at this point and keep going. What are your thoughts?
     
  2. thaorius

    thaorius Junior Member

    Joined:
    Aug 19, 2008
    Messages:
    109
    Likes Received:
    33
    I would suggest you to learn one of this sets of things to begin with:

    PHP
    Zend Framework/Symfony


    Python
    Djando


    Ruby
    Rails


    I would suggest you begin with PHP as it is the most used one and it's mainly a "web" language. Python and Ruby are very good choices also, so if you like their syntax better or something, go with those, but you may have some issues finding a cheap host that supports them, should you be looking for that.
     
    • Thanks Thanks x 1
  3. SEO20

    SEO20 Elite Member

    Joined:
    Mar 25, 2009
    Messages:
    2,017
    Likes Received:
    2,259
    It depends on your background and where you want to be in 2 years.

    My soul is sold to .NET C# - so I can't recommend anything else :)
     
  4. crashed

    crashed Jr. VIP Jr. VIP Premium Member

    Joined:
    Aug 13, 2008
    Messages:
    958
    Likes Received:
    1,198
    Occupation:
    Guru-slayer
    Location:
    Behind the VPN...
    Home Page:
    I'd second C#, as with C# you can write websites AND you can use exactly the same language to create desktop applications, services, games, bots :D
     
  5. drey2k

    drey2k Power Member

    Joined:
    Jan 4, 2009
    Messages:
    551
    Likes Received:
    169
    Occupation:
    Finance guy
    Location:
    USSR 1943
    I hear a lot of people recommending PHP as a building block. After learning that, move onto Python.
     
  6. dparker

    dparker Newbie

    Joined:
    Feb 7, 2009
    Messages:
    28
    Likes Received:
    100
    Occupation:
    Software enginner
    Location:
    Canada
    As an experienced programmer of 19 years, I would recommend learning about programming languages in general. Learn about different types of languages like interprets or complied, or procedural, event-driven, or object oriented, typed or nontype languages. If learn about programming language concepts in general you will be able to learn almost any language very easily. Any language in particular is just a syntax. Some languages vary in syntax, but all programming languages share common semantic concepts.

    Once you know the basics of programming, you with be a very valuable resource as you should be able to learn any new programing languages very easily. Its only the syntax you need to remember, semantics are all the same.

    A good example is a for loop. A for loop is expressed differently in PHP than it is in C# or java, but the semantics (meaning) of a for loop is the same for all languagues -- to iterate over a list of variables.

    I hope you get what i'm saying.
     
    • Thanks Thanks x 1
  7. drey2k

    drey2k Power Member

    Joined:
    Jan 4, 2009
    Messages:
    551
    Likes Received:
    169
    Occupation:
    Finance guy
    Location:
    USSR 1943
    dparker,

    Where can you learn these concepts? Are there any good books you recommend?

    Thank you.
     
  8. dparker

    dparker Newbie

    Joined:
    Feb 7, 2009
    Messages:
    28
    Likes Received:
    100
    Occupation:
    Software enginner
    Location:
    Canada
    Look for a book called "Types and Programming Languages" on amazon.

    I'm sure you could find the ebook online somewhere for the second one.

    This is one of the best general resource programming books around. Another one is " Design Patterns: Elements of Reusable Object-Oriented Software" if you want some more advanced topics

    Good luck with with your learning.

    Happy programming.
     
    • Thanks Thanks x 2
  9. Rendias

    Rendias Registered Member

    Joined:
    May 14, 2009
    Messages:
    91
    Likes Received:
    34
    My take is on php, which run effortlessly on most free hosting sites.
     
  10. thedorf

    thedorf Senior Member

    Joined:
    Oct 1, 2008
    Messages:
    1,193
    Likes Received:
    700
    Occupation:
    what? I gotta have a job?
    Location:
    BHW - Where else?
    php / Mysql without a doubt. Versatile, 99% of hosting allows it.

    The best part though is I can almost always find code and reuse it. Tons of php code out there.
     
  11. mackristo

    mackristo Newbie

    Joined:
    Apr 27, 2008
    Messages:
    7
    Likes Received:
    0
    DParker,
    I completely agree but what is the best way to do this? For instance how do I learn the big picture of where and when to use loops, arrays, variables and conditionals? Where do they fit and how are they used? What is your guidance on learning this big picture?

    Thanks,
     
  12. _Austin

    _Austin Junior Member

    Joined:
    Apr 9, 2009
    Messages:
    147
    Likes Received:
    39
    Coming from 6 years of PHP/MySQL development PHP is by far the easiest language to learn and you will actually be able to make something useful in days instead of weeks.

    tizag.com/phpT

    Tizag is an excellent starting point for learning the fundamentals and basic programming concepts such as If/Else statements, For loops, Logical Operators, Arrays, POST and GET data, manipulating strings etc etc.

    From there on PHP.net, the home place of PHP, is where you can search for specific functions and more detailed explanations as well as specific examples. Once you get the basics down you are ready to start playing around with databases, the most common being MySQL, which tizag also has a friendly tutorial on.

    tizag.com/mysqlTutorial

    After you feel you have mastered these key aspects of programming you could start looking into the magnitude of PHP Frameworks. I am currently getting into CodeIgniter but there are others such as CakePHP and ZEND.

    Just remember it will take time for you to become proficient but in the end it will all be worth it!

    _Austin


    *I'd post direct links but I'm not allowed yet.
     
  13. Rick4691

    Rick4691 Registered Member Premium Member

    Joined:
    Feb 19, 2008
    Messages:
    70
    Likes Received:
    30
    Occupation:
    Programmer
    Location:
    Oceania
    Big picture-wise, it sounds like you need to take a course in discrete mathematics and then a course on algorithms.

    Learning about data structures and then relational databases, would be a good next step.

    Here's why I say this. Not knowing when to use a loop indicates you're not familiar with algorithms; arrays are just one data structure; conditionals are based on boolean algebra and propositional logic (covered by a good course in discrete mathematics); and just about any web-based application today is backed by data, so you really need to know something about relational databases starting with set-theory in discrete mathematics, and then continuing with a good database course that applies that set-theory and goes beyond it to deal with data normalization and why it's a good idea.

    I haven't met a good programmer yet who hasn't had a thorough grounding in math. That's what you need to see the big picture.

    Go ahead. Call me a curmudgeon.
     
  14. Schlidel

    Schlidel Newbie

    Joined:
    May 5, 2009
    Messages:
    20
    Likes Received:
    3
    Location:
    OP, KS
    You are a crusty irascible cantankerous old person full of stubborn ideas.

    BTW, thats what ubiquity (firefox addon) gave as the defintion, lol.

    Good advice though.
     
    • Thanks Thanks x 1
  15. ukescuba

    ukescuba Jr. VIP Jr. VIP Premium Member

    Joined:
    Feb 24, 2008
    Messages:
    994
    Likes Received:
    634
    Occupation:
    Mobile Marketer & QR Code Junkie
    Location:
    San Antonio, TX
    Home Page:
    yeah i would also recommend php/mysql/html skills as a starting block... as someone mentioned its widely support and you can even run it php/mysql from your own desktop pc without the need for even real hosting... ie WAMP

    its also what a lot of the most common cms/scripts/blogs use...
     
  16. dparker

    dparker Newbie

    Joined:
    Feb 7, 2009
    Messages:
    28
    Likes Received:
    100
    Occupation:
    Software enginner
    Location:
    Canada
    Good response @Rick4691.

    Learning the fundamentals is key to becoming a great programmer. I would recommend enrolling yourself in a university course. Math is key to becoming a great programmer and actually understanding what you are programming. Understanding the mathematical theory behind programming is very important.

    If university isnt for you, several community college's offer night courses focusing on introductory courses on web programming, .net or php programming. These courses are great for learning the language and how to do things. Introductory books are great too for learning syntax and semantics of any language. Go to amazon, find some book titles, and then download the ebook from a torrent site.

    But if you really, really, really want to understand computer programming, get a Computer Science degree.

    In my experience, programmers who have learned from a book, or have a college diploma , or anyone who does not have a Computer Science degree just dont have the deep understanding as those who have the degree. Programmers without degrees believe programming is like magic. I dont want to start any controversy here or anything, but there are always those people (without degrees) who are exceptions.
     
    • Thanks Thanks x 1
  17. MDSOperandi

    MDSOperandi Regular Member

    Joined:
    Jul 10, 2009
    Messages:
    224
    Likes Received:
    192
    Occupation:
    Senior Software Engineer / Internet Marketing
    Location:
    Australia
    Home Page:
    Like others have mentioned here, programming is a mindset; it's a way of thinking.

    Once you can think like a programmer the syntax of a language becomes secondary. My day job is working with C# however I took one look at some PHP code and created a new function to extend the script because I know how to code.

    PHP is a great web-based scripting language. The keywords in this sentence are *web-based* and *scripting*.

    PHP is very powerful in so far as it lets anyone easily and quickly connect to a mysql database and extract information using a nice easy dynamic SQL Select statement.

    You need to think about what you want to be doing in five years time and go from there.

    I would recommend doing a computer science degree and then getting an internship with a large company to unlearn what you have just learnt. The degree will give you the paper and an understanding but the chances of you coming out and writing a B+ tree algorithm are pretty rare (and if you do, you are using the wrong language :D).

    Good luck
    MDS