How do you use Python to make websites?

Answer by Luis M. Gonzalez:

If you decided to learn Python, please forget about web development for a while and concentrate in learning the language first. Python is easy to pick up, but you must stand on your feet before you start to run.

Python is an easy, flexible and powerful programming language which can be used as a general purpose programming language (and it’s a very good language for web development as well), but you must understand that in order to become a web developer you must learn several different skills besides python.

The first basic skill you must learn is HTML. HTML is the markup language of the web. All web pages are created with HTML, which defines the different elements contained in a web page. Then you should learn CSS, which is another little language that defines the way each HTML element looks within a page (its color, the font type, its position on the page, etc).

And the third skill you should master to become a complete web developer is javascript. Javascript is a scripting language, just as python, but it runs within the browser. It is a fundfamental part of HTML5 (the newest incarnation of the HTML markup language, which powers all the new applications being written for the web and mobile phones and tablets (iphone, ipad, blackberry, etc…).

HTML + CSS + JAVASCRIPT are different parts of the whole HTML5 platform, and they all work in tandem to create a full web application.

Where does Python fit in? You must understand that, although you can create a full web application with just HTML, CSS and javascript, chances are that your application will need to access data stored in a server, most likely a database.

That means that you will have to write code that will be run in a remote server rather than in the browser.

The server side is different than the browser (or client side). In the client side you only have one option: javascript. On the other hand, you can use any imaginable language on the server side. People use php, java, ruby, python, c#, etc…

Python will let you talk to the database or datastore, perform queries, retrieve information and format the output to your web page.

Is it possible to forget about javascript and write your whole application in python?
Yes, and many web sites work this way. But you would be limiting yourself (and your website usability).

Think about it:
Code written in javascript runs in your browser (it doesn’t need to comunicate with a distant server and wait for the response) hence, its faster, and the user experience is better. That’s why the new HTML5 web applications feel more and more like desktop applications. Applications written entirely in javascript with that talk directly to the database are known as Ajax applications.

But code written on the server side may give you more security and scalability, so both sides should be mastered to become a competent web developer.

As for web development frameworks:
Again, please first stand on your feet… When you reach the moment where you find yourself needing a framework, you will probably find out that you can get by with a simpler solution rather than Django. Django lets you create the whole structure of your website on the server side.

My advice: Forget about all these things, get a good python tutorial and learn it (and enjoy it!) before looking at all the other technologies you will need.

View Answer on Quora


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s