My background is as follows. I've been programming since I was young, worked in BASIC, then Asm for M68K, then C, C++, and now I've spent the past 5 years in .NET becoming a rather good .NET developer. Somewhere along the line, I realized I have no clue how the internet works, I don't know how TCP/IP works, I have no clue what HTML is capable of, or how PHP plays into the picture, or why Ruby on Rails should make me happy. I have no experience with LAMP or IIS, and I only have an inkling of a clue what Sharepoint is.

In short: I'm internetstupid. I am intelligent and a capable developer, but I lack even rudimentary skills (routing, web hosting, hosting a custom DNS for intranet domain resolving, etc.) I have no clue where to start on web development learning.

Here's the good news! I know what I'd like to learn to do (at least for now!)

I want to be able to develop my own personal domain to host WSDL services, to power my applications, to showcase my work, to host my living resume, to market my brand so to speak.

Stackoverflow, I beg you, help this disconnected but talented developer become part of the current era instead of being a relic stuck in the previous great golden age of software!

Note: I'd prefer to stay wedded to MS for now for the most part as I'm already familiar with the .NET ecosystem. I'm okay branching out, but not ready to do so (I think?) If you can convince me otherwise that's fine.

| improve this question | | | | |
  • 2
    You are actually talking about two different sides of the same coin. Do you want to learn how to develop in web languages? Or do you want to learn how to network the internet? Your TCP/IP, custom DNS server, web host, etc. are going to be infrastructure, and somewhat separated from language that you choose to use. You can learn one without knowing the other, although if DO intend on doing the infrastructure side as well, the language you choose can to some extent dictate the environment you choose as well. – JohnP Jul 16 '12 at 21:34
  • Short answer JohnP, Yes :D – Firoso Jul 17 '12 at 6:12
  • 1
    Try the site asp.net . Many useful videos are there. They really help! – WinW Jul 17 '12 at 6:35
  • 1
    In case the existing answers haven't made this clear, asp.net sites can be coded in C#.Net (or VB.Net). So, your existing .Net experience is very relevant. – Brian Jul 17 '12 at 18:27

I agree with @ElYusubov that you should slow down just a bit. It takes years to learn all the topics you mentioned. Let's break your list down:

  1. Internet Fundamentals: You can find out superficially how computer networking works by reading a little about the OSI model.
  2. Now that you know how data travels from one computer to the another computer, you can read about how applications make use of that data. For example, you may want to read about how a browser and a Web server communicates (e.g. using HTTP). HTTP carries certain content that the Web server generates, and the browser consumes. One such content is HTML. There is a free video on PluralSight that talks about how IIS (since you prefer MS technology) and Internet Explorer communicate.
  3. Next, you can watch more HTML videos that explore the more advanced concepts of what HTML(5) (Some of these videos are not free, and I haven't watched them). There are plenty of books that talk about HTML5.
  4. PHP (or rather, the PHP libraries), Ruby on Rails, ASP.NET, Java Spring Framework, etc. are all "frameworks" that help developers write Web applications. If you prefer Microsoft technologies, the obvious choice is to deep dive into ASP.NET. Microsoft Web site has many videos and books online on ASP.NET. I like the book: Pro ASP.NET MVC Framework.
  5. Let's forget about LAMP for the moment, since they are not part of the inner circle of Microsoft ecosystem.
  6. Let's also wait on the Web Service part (WSDL).
  7. Instead, you can write your "living resume" application! You can start by going to the ASP.NET tutorial site.
| improve this answer | | | | |
  • I have a PluralSight so that helps – Firoso Jul 17 '12 at 6:15

Quick Answer: You may find everything that you look for in official ASP.NET web-site.

It has always the latest information and tutorials.

For truly stateless web application development, you may start with asp.net mvc and you may create your services through asp.net api. All this suggestions are MS technology stack.

Note: However, you need to have a very good study/practice plan. Don't over-heat yourself. Try to understand inner-workings of each framework and build application one-step at a time. Also analyzing the existing code-base of samples (like ASP.NET MVC sample applications) may help you once you know the fundamentals.

| improve this answer | | | | |
  • 5
    +1 for ASP.NET MVC. Webforms is a lie. – StriplingWarrior Jul 16 '12 at 22:02
  • 2
    Yeah I do WPF, I understand the value of well seperated concerns. MVC would be my preference 100:1 over WebForms. – Firoso Jul 17 '12 at 6:14

Not the answer you're looking for? Browse other questions tagged or ask your own question.