Category Archives: Visual Studio, TFS

DRAFT – VSNetCodePrint – an amazing Product

I Refactor code a lot. But refactoring code requires sometimes reading lots of code on paper or PDF, and Microsoft Visual Studio has the worse printing support on the planet.

VSnetcodePrint to the rescue. It is a great product. Well supported. Inexpensive.

I have some things I would like them to improve:

  • method visibility in the TOC
  • minification support for JavaScript
  • Data for SQL Tables in their printouts (with a few options)

DRAFT Asp.net MVC: Getting Started The Right Way DRAFT

aspnetMVC

DRAFT MVC and ASP.net – a Match Made in Heaven! DRAFT

asp-net-mvc-debate asp-net-mvc-thin

How is it better than WebForms?

ASP.net MVC is in many ways better than WebForms for example:

  • Testability (i.e. Unit Testing) is much easier by design in MVC
  • Separation of Concerns (see ??) is much easier by design in MVC
  • HTML 5 and JavaScript and CSS and Mobile Development is less encumbered by gotchas
  • It is much easier to have a page interact with a fairly sophisticated back-end code base
  • Postback is NOT its central model. Ajax and partial refreshes are first class citizens here.
  • It pays more if you negotiate right.

There are other benefits but hopefully these will be enticing.

aspnetMVC-architecture Zombie-Bad-Fire-Worse

How is it worse than WebForms?

xxxxx

xxxxx

xxxxx

canada-oil-sands-threatened-by-spiralling-costs-300x250 cost-calculator1

What must I buy? (Asp.net MVC is free, learning it may not be)

Here are the sums of the expenses:

  • ASP.net MVC is free so that part is the best thing.
  • If you don’t have Visual Studio, you will need the Community Edition which is FREE, a much better choice than the express edition.
  • If you are on a Mac or Linux you will need Xamarin (not free), or just setup a VM there and run Windows on them.
  • You can read online tutorials like:
    • xxxx
    • xxxx
    • xxxx
    • But I recommend supplementing them with some books that will go into the whys and high end concepts that quick tutorials cannot cover.
  • If your HTML 5 and Javascript and Juery and JS frameworks are rusty, or you don’t know it you will need to invest time in learning that (see my recommendations here).
adam-freeman-bookThis book will answer all your intermediate and advanced questions better than most books. It does not handle the many beginner questions you will have that online tutorials handle better. It has a better architecture focus than most of the competing books so lots of wisdom – although sometimes short on knowledge. CsharpinanutshellThe C# Bible. A must own for every .NET programmer. Tremendous bang for the buck and years of material crammed into a dense easy to understand book.
adam-freeman-bookRefactoring is the BIBLE for Separation of Concerns. CsharpinanutshellDesign Patterns are vital, but the mainstream books are too hard to understand. This book will make Design Patterns much clearer to you.

 

Those downloads, tutorials and books will make your sword very sharp in slaying the MVC dragon!

mvc-high-point

What the heck is MVC? MVP? MVVM?

xxxxx

  • MVVM
  • xxxxx
  • xxxxx

Some other terms that may be helpful to you we will define here are:

  • Route —
  • Partial View –
  • Attributes –
  • Areas –
  • Web API –

shortcut shortcut-2

Are there any shortcuts?

xxxxx

  • DevExpress is awesome. I prefer it to Telerik, Infragistics and Kendo. They all are good, but DevExpress is the best I have used.

 

How do I know when I am doing it right?

A tough question but the right one.  Give yourself time to get it right. Plenty of people are doing it wrong and half assed and shipping code. Shipping code and meeting boss deadlines and project budgets does matter more than the wisest approach on your first project if you have no mentors or leaders who are veterans.

I have questions. Where do I ask them?

xxxxxxx

  • xxxx
  • xxxx
  • xxxx

Get out there and code your first ASP.net MVC project!
I (and many others) will answer your questions on [AspNetAnyQuestionIsOK] when you do code!