views:

568

answers:

11

So far I have taught myself HTML by coding in Publisher 97 and using W3-Schools. I have picked up small amounts of CSS and PHP.

What Should I learn after learning HTML?

And what is the best editor for what I'm going to do?(Windows, Linux)

+8  A: 

Learn CSS, and JavaScript (with a framework). I'd start with jQuery.

I use Visual Studio. You can download the free express edition. Also, Aptana is a good IDE. Others like the Textmate clone for windows: E - TextEditor

If you're looking for something as simple as notepad, but with some syntax highlighting, check out Notepad++

Definitely get Firebug, the FireFox add-on for debugging HTML/CSS/JavaScript.

Good luck!

Lance Fisher
+2  A: 

Learn JavaScript.

In windows notepad is your best friend (if you want clean code).

Try Notepad++ if you want syntax-highlighting. From my experience I would say never use an editor which generates HTML for you.

Niyaz
+6  A: 

Firstly, of all those languages you've mentioned (HTML, CSS and PHP), only PHP is a programming language. The others are markup languages (well, CSS is a stylesheet language).

If you have already used a bit of PHP and you like it, why not try learning some more PHP?

  • All the software you need is free
  • There's an outrageous amount of information about it because so many people are using it
  • Documentation is good
  • It's quite accessible for beginners
  • Any web hosting account you get is likely to support it
  • It's pretty good for web applications out of the box (well, compared to things like Perl/Python/Ruby I guess)

You don't have to fully commit to any one language; if you find you want to branch out from PHP in the future, you can. But there are also plenty of jobs in PHP programming.

As for editor, just pick something comfortable. Don't agonize for a long time over which editor you use. If you don't know, and you want something free, maybe just pick Notepad++ and be done with it. It's good, free, and doesn't need much setting up. Don't worry about choosing your editor too much until you actually get used to coding, because only then will you have a better idea of what you really need in an editor.

thomasrutter
+2  A: 

I don't feel the editor question has been fully addressed. Many of the answers relating to that are very Windows-centric, so allow me to discuss text editors from a bit of a wider standpoint background. I will admit my bias: I use OS X, I like Linux, I use vim, I like emacs sometimes. I don't like IDEs that much, and I don't like using closed source software, even though I admit that I never look very deep into the source code of what I use. I will one day, though. I swear.

  • THE definitive text editors for Linux are vim and emacs, both of which are quite often used from the command-line, but both of which have quite wonderful graphical versions. I personally am a vim man, but with a GUI that suits my native environment (OS X), I really like emacs (well, Aquamacs), especially for Perl. I personally find vim easier to use, both as a command line editor and as an IDE, whereas I never got the feel for emacs as a command line editor. As a bonus, both emacs and vim are readily avaliable for Windows, and are almost ubiquitous on Unix-based platforms. Both have syntax highlighting for most major languages, and are fully extensible, so that you can find syntax definitions for many languages, or even write your own fairly quickly. I suggest you look at both of them a little and find the one you like the most, and learn it well. Emacs is open source under the GNU GPL, and vim is open source under a charityware license that asks you to feed the children in Uganda, but that is still very GPL-like.
  • A lot of people will extol the merits of the Eclipse IDE for programming, especially in Java. Eclipse is a full-blown IDE, unlike vim and emacs which have little overhead and allow you to write a quick shell script as easily as a large application, and some find that a bit cumbersome for their work, but it suits others very well. It depends where you fall. In web development, you could go either way. Being more in the Unix tradition, I tend to prefer leaner text editors to large IDEs, but some from a Windows background prefer the features of IDEs. Eclipse has good syntax highlighting for Java, as well as a number of other popular languages and/or languages very similar in syntax to Java. Expect good C and C++ highlighting, and possibly good Perl and PHP highlighting. Eclipse is open source under a license with weaker copyleft provisions than the GPL, and is more "business-friendly," whatever that means.
  • Notepad++ is an amazing text editor for Windows. I really enjoyed using it when I had to do small amounts of work on Windows, and it made the time I spent on a Windows box almost enjoyable (I fully admit my bias here). It works well with the overall Windows "feel" almost as well as OS X programs work together, and it supports a lot of languages (though I can only attest to the quality of Perl). The only (and in my opinion, largest possible) drawback is that it is only avaliable for Windows. You can theoretically get it to work on Linux with Wine, but I can't say that Wine is ever the best solution to a problem like this (though if it works for you, go for it). Notepad++ is open source under the GNU GPL.
  • Many people like Visual Studio. My biggest beef with Visual Studio is that it is closed source, but I haven't personally tried it because I almost never use Windows, so I can neither extol its virtues nor condemn its failings. I'm sure it's a great IDE, I just don't like IDEs and I don't like closed source software. Some consider it the best editor on Windows, so I can't completely not mention it. All I can say is ask someone else about it.

This is getting huge, so I'm going to go ahead and post this. This is by no means a definitive list of text editors avaliable for Windows and Linux, just a rundown of some of the more popular ones that I'm aware of. If anyone notices that I've forgotten anything major, just comment and I'll probably add it.

Chris Lutz
A: 

Django! Give it a try :) You'll learn a really cool web framework and, as a side effect, the Python programming language (Which is IMHO a language everyone should learn). I suggest you to start a little web project.. you'll learn/practice html, css, django(and python). :)

For the IDE, I guess it's more personal choices. I use Vim on Linux when I hack in python. However, I've come to really like Eclipse.. it's a multi-platform (Windows, Linux, ..) / multi/language (Scheme, Java, Python, C++, ..). Also, it has many really useful plugins.

Have fun with django :D

(Of course, Ruby is also really cool, but I still prefer django :D)

+1  A: 

Please do not only forget to learn about principles of Web application design. Things like coupling with databases, authentication, security principles like cross-site scripting.

You might want also to evaluate some Web Programming frameworks like Zend Framework (in case you want to program in PHP), or Ruby on Rails if you decided on Ruby.

Roalt
A: 

Learn PHP first since you will have some fun creating dynamic site with it, once you get in try some javascript and then advance to Ajax, that should cover the basic to make a dynamic site today.

Moreover you could learn using framework if you have a time, be it CSS framework (Blueprint, 960, etc), PHP framework (CakePHP, CodeIgniter, etc), and Ajax framework (Mootools, YUI, Ext, etc).

Sure it will speed your development.

Other than that, if you have an experience in desktop programming you can pick ASP.NET, the most important thing was algorithm and how you solve the problem, programming language just only some tools for your brain.

One advice, try learn one thing first then moving into another one, learn to much programming language at once can make your head burned :D (except you were fast to adopt new languages).

Dels
A: 

Javascript imo is the future of web development.
Browsers become more and more capable to run complex and long code. End users really like the fact that you don't have to wait to see a webpage and even if you have to wait you still won't have to reload the whole page.
For me AJAX is the way to go, comet is the future.
I recommend dojo, at the current moment it is the fastest javascript framework on most browsers. You are even capable to run javascript on the server-side using JSON-RPC or a java server that supports it.

the_drow
A: 

I would start with WAMP (Windows Apache MySQL PHP) installation, and teach yourself PHP and some basic SQL. While learning PHP you will discover that you can easily build HTML, and also complement your scripts with Javascript (clientside scripts) for extra functionality eg. ajax, and also CSS for the design part.

You will notice that all the abbrevations I noticed here have their own sections at w3schools . I think they have an easy/easier learning curve than many other languages, and is a good base of languages to start with.

The WAMP or LAMP (If u use Linux) is easy to install as a bundle for you (just google it), and as IDE I recommend using for example NetBeans or Eclipse.

ChrisAD
A: 

As alot of people here say:

Go on learning more about php.

good editors are Notepad++ (winodws) aptana (windows, linux).

a basic almost outof the box (atleast out of box on windows) webserver with including mysql server (databases handy with php in the end) is xampp aka lampp (for linux).

all the products i mentioned are well documented en clean to install.

Gos
A: 

Lots of PHP love here - there is an alternative that is awesomely a better alternative. Check out C#. With the free visual studio express IDE you can program asp.net websites using any windows computer. The resulting site can be run on Linux web servers as well considering they support the mono implementation of the .NET runtime (aka XSP). PHP is cool and all, but some of the features are still reminiscent of older web development methods.

I've also heard that Ruby on Rails is great for beginners. Java/JSP is also a great framework to learn.

What I did for myself when I was first learning was to download each of the frameworks, purchased a book about each framework and then went through the book learning the basics of each offering. Then, I was able to make my own decision about what I should learn. I eventually chose ASP.NET. Also, you're going to want to learn a database technology like MySql, MS SQL Server, Oracle, etc... Good luck.

P.S. - In my opinion the best Editors (IDE's) around are in the Visual Studio family. Notepad++ I use as well. But again - it also depends on what platform/language you are talking about. For Ruby, I'm not sure, maybe eclipse. For Java, it could be Netbeans or Eclipse. For any Microsoft related technology, DEFINITELY Visual Studio. All around functionality and productivity booster is Visual Studio IMO.

bbqchickenrobot