[QUE] How And Where To Start Learning Programming(s)?

5 replies
First off, i am new to all this and have been reading a lot about the subject but i am getting more confused.

Basically, i want to learn programming language(s) that will empower me to develop web applications.

But in the course of reading about the subjects, i often come across many term which i don't know their meaning
such as:

1 Web development ( i am thinking this is the same thing as web programming)

2 Desktop programming

3 Mobile programming

4 Software development

Please what is the meaning of this term and their functions. More importantly, what programming language(s)
do i need to learn to develop any web applications.

PS: Currently, the only thing i know about website is wordpress installation.

#learning #programmings #start
  • Profile picture of the author dowho
    Yes, web development is basically web programming. Web design is making it look nice. Web development is making it able to do things.

    Desktop programming is building software for windows, linux, or mac

    Mobile development is building apps for phones and tablets

    Software devlopment is programming in general

    To build web applications, the most important things to learn are PHP and MySQL (development). But before you learn that, you need to understand HTML and CSS (design). Lastly, you should learn a little bit of javascript. You don't NEED it for web applications, but it can make your sites easier to use for your visitors.

    If you study HTML5 instead of older versions, you will learn basic jacascript at the same time.
    {{ DiscussionBoard.errors[6491371].message }}
  • Profile picture of the author abacies
    if you are looking tutorials for web programming languages here is the great source. W3Schools Online Web Tutorials
    http://wordpressmonk.com/-Get your PSD sliced to HTML/Wordpress
    {{ DiscussionBoard.errors[6491633].message }}
  • Profile picture of the author wayfarer
    If you have never programmed anything before, you should probably take a class, or do a general study of any programming language. These types of threads tend to degrade to the point of almost silly complexity, which can be very discouraging for the person trying to learn.

    Part of the point of taking a class would be, to see what your potential for understanding general principals would be. Some people just "get" programming, while many others simply don't. Of those that get programming, and then proceed to use it professionally, most become specialized in one sort or another type of development. Getting people to understand their own potential is very difficult when they literally know nothing.

    Once you study the basics, you'll be in a much better position to understand your own strengths and weaknesses. If you rush it and try to learn as much as you can about as many different things as you can, you will end up with only a little knowledge about many things, which is next to useless. Learning a software technology of any sort takes a long build up of knowledge, and is not anything you can learn in a week or a month.

    If your goal is to develop web applications (which vary in size and complexity), you need to figure out what role you can play in building applications, in order to get started. For some people this means just doing HTML and CSS. For others this means working with a server-side programming language, commonly PHP. When we're talking about Wordpress, it is always PHP. There are a lot of other languages besides PHP though, and if your goal is to do this professionally, eventually you're going to want to know a lot more.

    Good luck!
    I build web things, server things. I help build the startup Veenome. | Remote Programming Jobs
    {{ DiscussionBoard.errors[6492043].message }}
  • Profile picture of the author Emil from Bavaria
    For web development you should learn

    1) A backend programming language: PHP, Python (Django) or Ruby (Ruby on Rails)
    2) A frontend programming language: Javascript (jQuery)
    3) CSS and HTML
    4) At least some basic web server related things: Apache configuration, PHP configuration, FTP, making backups

    Whether you choose PHP, Django or RoR depends.

    PHP: Easy, popular, many resources but also many developers, of varying quality.
    Used by WordPress, Drupal, Joomla, VBulletin, PHPBB, Magento, MediaWiki and many more. Easy to bring a PHP script online, every hosting account has it.

    Django/Python: Less developers, typically more experienced on average. Used by Google Apps. Much better cross-platform (Win/Mac) DESKTOP software abilities with PyQT. So with Python you could do both Web and cross browser Desktop. There's nothing good to create Desktop software with PHP.

    RoR/Ruby: Similar to Django/Python. Ruby is a tad more sophisticated than Python.
    The advantage here is that in the Ruby world there is only RoR as a framework, so the whole community effort is focused, whereas in Python there is a whole bunch of competing and decent frameworks which kinda splits the community.

    Both Django and RoR are good for bigger, custom projects and if you want to get a job somewhere.

    PHP is probably better to get started, or to build things around Wordpress etc...
    It is sometimes (or used to be) ridiculed or underestimated however the company behind it seems very energetic and pushes it forward release after release. And there are also frameworks for PHP for bigger projects, such as Symfony (being the biggest, comparable to Django/RoR) and some smaller ones.

    As for Javascript, there is jQuery but also competing libraries such as Mootools. However it seems as if jQuery turned out on top, this doesn't necessarily mean it is the best but probably the one that should be learnt.
    {{ DiscussionBoard.errors[6502500].message }}
  • Profile picture of the author godavid
    Codecademy is a good starting point:

    codecademy dot com

    You should learn from good sources otherwise you will learn a lot of bad habits and bad practices. And unlearning them is a lot of energy.
    {{ DiscussionBoard.errors[6809097].message }}

Trending Topics