Best resources for complete web programming noob

CheekyC

Senior Member
Joined
Nov 25, 2013
Messages
515
Reaction score
0
Hi, I have extensive (30+) years programming experience, using C# since the very beginning. I use all the modern techniques like SOLID, TDD, etc etc.

However, I have never really done any web app programming. I have always done the services layer and below for web sites. I want to develop a website but have no idea. Reading resources on MVC will certainly be a start but I suspect I have questions even more basic than that.

For example, the website needs to be used by visitors where their cart should be persisted, offer sign-up and also sign-in for existing users. Now I know (think) that most of that is part of the services layer functionality but not sure whether this stuff is partially part of the web frameworks. I.e. sessions, cookies etc.

The stack that I want to use is C# / MVC / HTML5 / CSS3 (VS2013)

Any good resources to start reading? Or someone willing to get me on track for a fee?
 
The different things about web development are being sand-boxed in security, and keeping track of state between the browser and server.

Try to learn ASP.NET MVC and HTML first until you are comfortable. Then add JavaScript. Doing too much at once is frustrating.

Once you have a pure ASP.NET MVC web app, you can migrate pieces to ASP.NET Web API and consume it directly from JavaScript in JSON format. Then start looking at client-side MV* frameworks like AngularJS.

I gave up on mastering design with CSS3. Much easier to get and tweak styles from http://bootswatch.com/ or https://wrapbootstrap.com/.

Microsoft Virtual Academy is a pretty good free resource:

http://www.microsoftvirtualacademy.com/training-courses/the-modern-web-platform-jump-start
http://www.microsoftvirtualacademy....ndamentals-development-for-absolute-beginners
http://www.microsoftvirtualacademy....ing-asp-net-mvc-4-web-applications-jump-start

Also check videos on Channel 9.

http://channel9.msdn.com/Series/Introduction-to-ASP-NET-MVC

Hope this helps, good luck! :)
 
Last edited:
I was in a similar position as you. I used to do C/C++ programming and then C# back-end programming. So suddenly a year and half ago I had to quickly get up to date with front-end website development.

I used a thick MVC book that basically showed everything MVC related. From there it was easy to pick up on the rest. HTML and CSS are very easy and with some guides from googling you will get the idea. Javascript took me a while to get used to but you get all kinds of javascript libraries to make your life easier.

Otherwise maybe try some of the courses at a place like Udemy. They have specials all the time. There are a ton of these kind of places. In fact if I remember correctly Pluralsight had free MVC courses.

You can't go wrong with a book though. Maybe it's just me. :)
 
Good advice thanks

The different things about web development are being sand-boxed in security, and keeping track of state between the browser and server.
Agreed, that is how I understand it. I know a little, but I don't know what I don't know if you catch what I am saying. E.g. not sure where boundary for the management of state lies between ASP.NET/MVC plumbing and what the dev has to do....

Try to learn ASP.NET MVC and HTML first until you are comfortable. Then add JavaScript. Doing too much at once is frustrating.
Luckily I know a little bit of HTML but very little JS, but good advice.
 
I imagine in visual studio you do "new MVC app", create a controller, create a template/view, and that's it. What am I missing?

Building server side rendered webapps is no different to building any other "backend" stuff.

You can do this with little javascript or css knowledge.
 
Last edited:
Hi, I have extensive (30+) years programming experience, using C# since the very beginning. I use all the modern techniques like SOLID, TDD, etc etc.

However, I have never really done any web app programming. I have always done the services layer and below for web sites. I want to develop a website but have no idea. Reading resources on MVC will certainly be a start but I suspect I have questions even more basic than that.

For example, the website needs to be used by visitors where their cart should be persisted, offer sign-up and also sign-in for existing users. Now I know (think) that most of that is part of the services layer functionality but not sure whether this stuff is partially part of the web frameworks. I.e. sessions, cookies etc.

The stack that I want to use is C# / MVC / HTML5 / CSS3 (VS2013)

Any good resources to start reading? Or someone willing to get me on track for a fee?

For me, the best place to learn was http://www.asp.net/mvc as well as pluralsight videos.

Then, I basically coded and learnt from there. Easy as pie.

With regards to user sign-up, authentication and authorization, the link provided has all the details you need. You should use ASP.Net Identity framework for all your needs. It is the "new" recommended way to handle security.

For persistence, you would most likely serialize your cart data and fire it off to your service layer to be persisted in a session variable. Then entire object can be persisted. If you feel that's too fugly, persist it in a data store of your choice (Redis if you want fast access and an easy way to set expiry times, SQL if you are hardcore like that or a NoSQL store if you like json). Personally, I would use Redis if you don't want to store the data in Session variables (nothing wrong with Session variables).

Ensure that you update your session variable as and when necessary.

An alternative would be to use html localstorage or cookies. The good about client side storage is that you could serialize your request once when the customer processes the payment. Bad news is that it requires client side code to update the cart and could pose certain security issues.
 
Great thanks

With regards to user sign-up, authentication and authorization, the link provided has all the details you need. You should use ASP.Net Identity framework for all your needs. It is the "new" recommended way to handle security.
Great I will look at this and see what it provides.

The idea is that a (unregistered) visitor can browse the site and fill his cart without registering. Only register when making a purchase. The site must keep history off all products a visitor viewed so that he can go back to it. When the visitor signs up, it will follow the same confirmation email model. This visitor's history and cart then becomes the registered user's cart and history.

Not sure how much of this is provided by the framework, but will check

For persistence, you would most likely serialize your cart data and fire it off to your service layer to be persisted in a session variable. Then entire object can be persisted. If you feel that's too fugly, persist it in a data store of your choice (Redis if you want fast access and an easy way to set expiry times, SQL if you are hardcore like that or a NoSQL store if you like json). Personally, I would use Redis if you don't want to store the data in Session variables (nothing wrong with Session variables).

Ensure that you update your session variable as and when necessary.

An alternative would be to use html localstorage or cookies. The good about client side storage is that you could serialize your request once when the customer processes the payment. Bad news is that it requires client side code to update the cart and could pose certain security issues.
This will all be in the backend. I just prefer it that way. All business rules are enforced by domain that sits behind services layer.
 
I found http://www.codecademy.com/ to be very useful. All the tutorials are done online so no need for an external editor.

They offer free courses for the following languages.

HTML & CSS
Javascript
jQuery
Python
Ruby
PHP
 
Just keep in mind that Javascript is currently getting ideas above its station and is trying to become a real programming language. Much to my horror.
 
Top
Sign up to the MyBroadband newsletter
X