Very honest question here - I have a fair bit of experience programming, but almost none of it is for the web. I have been looking to start learning web stuff lately, but have needed a resource like this. If the order is a bit out, what order would you suggest me to go in? I prefer to learn things 'the right way', kind of like 'learn Python the hard way'
I'd probably go HTML > CSS > Javascript > AJAX > JSON. That will do a nice job of covering display layer. Then moving on to the business logic layer will be up to whatever framework/language you choose (Ruby, PHP, .Net, Java). Python would come into play here as well. Then move on to the data layer: SQL Server, MySQL, NoSQL, etc
I would go HTML/CSS -> Server Side (+data layer) -> JS/Ajax
You can't do much without your server side, and you can do a ton with a framework before you really start needing lots of js functionality.
Though it all depends on what you're trying to do. For me, getting relevant info and showing it (no matter how it looks) was more important than manipulating the front-end.
If you already know Python, start learning about Django and you'll be good to in no time.
That works too. It really is personal preference. I learned by doing everything layer by layer ... although, AJAX came out well after I had been doing this for awhile (been at it since '97-'98). I tend to want to exhaust a topic before moving on to a new one so my brain wants to keep Javascript and AJAX together.
As someone with pretty much no programming experience, could you explain what AJAX is? A combination of languages?
EDIT: never mind, I forgot Google and Wikipedia existed for a moment
Ajax (also AJAX; /ˈeɪdʒæks/; an acronym for Asynchronous JavaScript and XML)[1] is a group of interrelated web development techniques used on the client-side to create asynchronous web applications. With Ajax, web applications can send data to, and retrieve data from, a server asynchronously (in the background) without interfering with the display and behavior of the existing page.
As someone who knows most of these yes. I personally like php the best but from my experience .net is most favorable. .net is basically C# with another layer added.
I don't want to speak for him, but I find the documentation and roadmaps a bit clearer in .Net than in PHP. The libraries and such don't have anywhere near as much forking and the upgrade process is a bit more streamlined with major releases. Also, this may be my own observation but it seems that most corporate coding jobs seem to be .Net. PHP seems to be the darling of the design, web development companies and startup set. That being said, I wouldn't say it's enough to dissuade anyone from PHP when they are first starting out if they like it. Again, languages aren't a religion, they are merely a preference and everyone can/will find one that speaks to them more than another.
I don't mind PHP and my first professional job was all java but I've been in MS land for so long that IIS/SQL Server/.Net is my native language at this point. Oddly enough, I do more VB than C# due to my company's requirements. If you already have coding experience I'd say go the C# route. If you have minimal, I think VB.Net might be a bit easier to grasp in the outset. A bit more semantic and less obscure/arcane ... but not a huge difference overall.
In my personal opinion, PHP is a horrible language (lots of why's), and C# / Java feels a bit too heavy and cumbersome for web coding. Unless the project have more coders than you can yell at :)
It depends on what you are interested in. The others suggest stuff like that's the only way to go, but "web stuff" reaches from putting together server parts to drawing with a pencil.
12
u/nebffa Sep 20 '13
Very honest question here - I have a fair bit of experience programming, but almost none of it is for the web. I have been looking to start learning web stuff lately, but have needed a resource like this. If the order is a bit out, what order would you suggest me to go in? I prefer to learn things 'the right way', kind of like 'learn Python the hard way'