So what's your best advice for someone who knows application side development (C++/C#) and wants to start developing web applications and websites?
What languages should i start with? (php/javascript/other)
What kind of tips do you have for me?
So what's your best advice for someone who knows application side development (C++/C#) and wants to start developing web applications and websites?
What languages should i start with? (php/javascript/other)
What kind of tips do you have for me?
My Answer from suggested duplicate
Read
And would suggest starting with .NET/Mono if you know C# (mod_mono is great if you are on Linux with Apache)
The biggest bridge to cross is understand the stateless nature of web apps. After that you have plenty of options of which ASP.NET MVC seems to be the most popular, and for good reason. Javascript is a must, as well as concepts of Ajax.
First - understand how the Web works: basis of protocols (IP, HTTP...) and then standards (*HTML, CSS). Then you should be able to apply you existing C# skills to Web development (using something like ASP.NET). Then I'd go on to JavaScript.
I suggest you take a look at PHP.
If you are completely green on web programming/design, you should take a look at W3Schools, for instance.
Other than this, just get your hands dirty and start coding a few small pages - you'll probably be amazed how quick (and possibly dirty) PHP programming can be!
You do NOT have to master databases, AJAX or Javascript to get going - even though you'll most probably need them soon enough.
You can try learning PHP from http://www.tuxradar.com/practicalphp . Also, remember that (excepting the front-end - CSS, HTML & Javascript), the back-end is pure programming (my combination of choice is PHP and MySQL database).
And don't forget the main documentation source: http://php.net/ .
If you already know C# then asp.net would seem the most obvious answer. WebForms has lot of similarities with traditional application development, but it hides many things involved in web development such as statelessness of HTTP. It still might be good starting point and from there you could move on to ASP.NET MVC. Here are some resources
If you choose to go with some other language, I suggest that you learn some framework like Django for Python or Ruby on Rails
You should start with the basics in my opinion. First with (X)HTML and CSS to do simple static pages (W3school is a great place for this). Second you should go with simple JavaScript to learn how to modify stuff in your page (Jquery would be very nice to learn too!).
Then, when you'll feel you're able to get where you want with those language, go with the server side language for client/server interaction. To reuse your C# skill, you should probably go with .NET as your server side language as you can reuse many elements of the framework.
I'd suggest you try out both PHP and ASP.net and see what fits. The ASP.NET MVC Framework might be especially interesting though since you're already bewildered in C#.
That is however the server-side of web development. I concur with others here that you should start of with the basics first, and w3schools is perfect for that:
When you are ready for server-side-development and if you are willing to check out PHP, here are three resources that were absolutely invaluable when I began web development:
woork has got an amazing introduction for beginners that introduces things like includes and site structure. He's also compiled most of his tutorials to an e-book format which is fantastic.
If you however decide to continue the .NET path, you can't go wrong with:
If you know C# then you should definitely use ASP.Net and Web Forms to start. Why add another thing you have to learn my adding a new language to the mix. ASP.Net is a very solid platform and easy to get started using. In addition, sharpen your skills in the areas below.
I would also advise you to take a look on Codeplex (http://www.codeplex.com) and look at some of the web-based projects posted there. In addition to learning from what other have done you might find a project you can get involved in. You could also check out DotNetNuke (http:/wwww.dotnetnuke.com), which is a great VB.Net web application framework. I use this to host all my sites and to add functionality I just need to write custom modules to plug into the framework. By doing this all the "stuff" that most sites need are part of the core (authentication, logging, etc). This leaves you free to concentrate on adding the specific functionality you need for your site(s).
Hi, There is a C++ library with which you can create web applications using C++ . It fast , VERY well designed , and relies on boost heavily .
It is called Wt ( pronounced witty )
Cheers! Dushan
Actually, I just recently moved from application side development in C# to web development. I found it simpler to stay with c# for server side work (ie ASP.net). But to get the same responsive and rich user interface that you're used to on the desktop I had to get into javascript. A lot of ASP.net programmers don't like javascript - mainly because of problems with the visual studio IDE (better nowadays). Anyway, I jumped for the ExtJS javascript framework for that desktop feel and rich user interface - and they have a lot of documentation, examples and tutorials to help you learn from.
To begin with, you should learn XHTML and CSS. They are the foundations of web development and it is important to note that XHTML should be used for structure and CSS for design. XHTML should be rather easy and straightforward. On another hand, CSS can be rather tricky since every browser interprets CSS in a different way.
Next, if you feel like it you could learn Javascript (which is not related to Java). In my opinion, learning Javascript is optional with the arrival of newer technologies such as Silverlight/Moonlight and JavaFX. You could learn only the basics just to understand how it works too. Either way it depends on what kind of website you want to create.
Afterwards, you should learn server side web development. PHP would be better to start off with than ASP.NET. Why? PHP is free! Also, there are a bunch of free web hosting solutions for you to test your PHP sites. If you do not want to test on servers you can download free software that will emulate the server on your computer so you can test on your computer.
Once you understand the server side mechanics, you could continue on with ASP.NET (you can program in C# or Visual Basic). You could push ever further with Java applets and servlets...
One last thing that could eventually become really handy: SQL for databases!
XHTML:
CSS:
Javascript:
PHP:
SQL
ASP.NET:
Servlets:
Other:
*If anyone has the knowledge of other sites, please feel free to comment and post them!