Reblogged: What should I learn to get started in .NET and web development?

[Note: I am reblogging this post which originally was posted to the LearningLine blog. Hope you all find it useful here as well]

I recently had a conversation with someone who is looking to make a fresh start and become a developer (coming from other IT positions).  The question they had was:

What should I learn to get started in .NET and web development?

Now this question was starting from a position of “I’d like to get started with .NET and the web. How do I do that?” So please hold your “No, choose Ruby (or NodeJS or … )” comments. That’s another blog post. :)

Here’s my advice along with a bunch of courses you can use to accomplish this efficiently and affordably. Continue reading

Take the first hour of any online developer course for free at LearningLine

[Note: reblogged from blog.learninglineapp.com. I'd like to personally invite you to check out our work over at LearningLine - just follow the links below.]

We believe that LearningLine is the most effective online training for developers, period. Today it gets even better. We are announcing the ability to preview any of our online courses, for free without entering any payment information.

This is not a trial that becomes a subscription or a silly 5 minute preview like other company’s offer.  You can now study approximately the first hour of any one of our courses. And you can spend as much time as you like doing so.

To get started, just head over to our schedule page, click on any course title you’d like and choose “Preview course for free“:

   preview-online-developer-course-for-free

This means there is now lot of content available to you right now. At a typical student speed working for an hour a day, it would take over a month to complete all the content that is available for preview. Continue reading

Slides and demos from DevWeek 2013

[Update: I added the downloads for the demo code on March 12th.]

I had a great time discussing these topics with everyone at DevWeek 2013. Thanks to all who attended my sessions. Here are the slides:

Getting Serious About The Cloud For Developers
Slides: Getting serious about the Cloud (DevWeek).pdf
Demos: CloudDriverS3SecureFiles-Demo-DevWeek-Kennedy.zip

18 Ways Your Brand-New MVC Web Application Can Be Better
Slides:More Ways MVC Better (DevWeek) – Kennedy.pdf
Demos: 18WaysMvcNewProjectBetterDemo-DevWeek-Kennedy.zip

Building Rich Forms in ASP.NET MVC (important - see note below)
Slides: Rich Forms with ASP.NET MVC (DevWeek).pdf
Demos: Rich-ASPNET-Forms-Demos-Michael-Kennedy.zip

Applied NoSQL in .NET (important – see note below)
Slides: Applied NoSQL in .NET (DevWeek).pdf
Demos: Applied-NoSQL-in-dotNET-Demos-Michael-Kennedy.zip

Important note: In order to run this demo, you must download MongoDB and start it on your local machine. You do not need to initialize a database or anything like that but the db will be empty so use the admin feature to create categories and books. Running MongoDB as a Windows Service is not required.

Cheers,
@mkennedy

Announcing LearningLine: Instructor-led online training from DevelopMentor

I am very proud to announce an exciting new online learning platform from DevelopMentor:


http://www.learninglineapp.com

At DevelopMentor we have been thinking deeply about online training. We wanted to create an environment that combines the best parts of online learning and classroom training, the best parts of self-directed exploration and expert-led mentoring. We believe we have created just such an environment and I am thrilled to publicly announce it today.

Here’s a short 2-minute video which will give you a quick overview. You can get more details at http://www.learninglineapp.com.

Online training today

There are many shortcomings in how developers learn online today. Continue reading

Tips for optional parameters to ASP.NET MVC action methods

Here’s a quick ASP.NET MVC tip to help you be more productive and write cleaner code. We will see how to leverage C# 4′s optional and default parameters in our action methods for greatly simplifying our code while keeping it fully functional and error free.

Often you want to pass data to your controllers based on URL parameters. This can either be part of the URL itself in the case of route data or it can be part of the query string. In fact, this tip even works for input forms.

Let’s take a basic method which shows some census data, potentially filtered and sorted if that information is passed along, otherwise we’ll just show everything with a default sort.

value-types Continue reading

Nested Layouts in ASP.NET MVC

In this screencast, I’ll show you how easy it is to create ASP.NET MVC layout pages based on existing layout pages. This let’s you achieve a nested layout which you can compose to build beautiful websites in MVC with minimal code duplication or effort.

You can download the code if you’re interested.

Improve perceived performance of ASP.NET MVC websites with asynchronous partial views

Imagine you’re building an ASP.NET MVC website which has some performance problems. I’m sure this would never actually happen to you, but imagine you’re facing this problem just for the sake of exploring the possibilities. :-)

Now, your web app is mostly fast and responsive, but there are certain types of data that just bring the whole thing to a grind. This article will cover a technique using ASP.NET MVC partial views, along with just a sprinkle of jQuery, JavaScript, and HTML5 to make your site feel nice and responsive even if you cannot increase the speed of certain operations. Continue reading

Screencast: Refactoring with Partial Views in MVC

In this screencast, I show you how to create maintainable and readable ASP.NET MVC razor views by refactoring them into smaller, reusable blocks with partial views.

Download the code: Refactoring-with-Partial-Views-in-MVC-Kennedy.zip

Join Me at Guerrilla .NET in November

Just a quick announcement for an developer upcoming event I’ll be participating in…

Early November I’ll be co-teaching DevelopMentor’s biggest .NET developer event of the year in Los Angeles: Guerrilla .NET. If you haven’t been to Guerrilla .NET, it’s a very unique and memorable event – it’s unlike almost any other training class you’ve seen. We’ve just updated the outline with the most important current and upcoming technologies (see below).

I hope to see you there! Feel free to contact me with any questions.
@mkennedy

Guerrilla .NET
November 5th-9th
in Los Angeles
    Newly Updated with: Windows 8, VS 2012, MVC 4 and Entity Framework 5.

Guerrilla .NET provides a deep exploration of .NET design philosophy and practical advice. You learn a myriad of patterns and best practices, and you get hands-on experience developing applications using Visual Studio 2012 and Windows 8. Learn to write code using new .NET class libraries like Entity Framework 5, MVC 4, and even the new Windows Runtime (WinRT).

Course Topic Highlights:

  • Windows 8 For The Developer
  • LINQ and Entity Framework 5
  • XAML-based Programming
  • ASP.NET MVC 4.0: Beyond the Basics
  • Introduction to jQuery
  • Model-View-ViewModel for WPF and Metro
  • Building RESTful Services with The ASP.NET Web API
  • Programming Win8 Apps: Metro / WinRT
  • Entity Framework 5 and Code First
  • PFx: Task: a Unified Threading API
  • PFx: The Parallel Class and Concurrent Data Structures
  • C# 5.0
  • What’s New in .NET 4.5
  • Cloud Computing for the .NET Developer: IaaS, PaaS, and Patterns
  • Applied NoSQL with LINQ, and MongoDB
  • KnockoutJS
  • Power Debugging
  • Design Patterns for Testable Applications
  • Topic X

Download My Web Apps Have HotKeys Too Sample App

I recently blogged about how web apps have hotkeys too. To encourage more developers to add hotkeys to their web applications, I created a jQuery plugin called jQuery.hotKeyMap.js and a sample application.

I just added a download link for the source code:

WebAppsHaveHotKeysTooSample-MichaelKennedy-v1.zip

It’s an ASP.NET MVC 3 web app. Hope you find it useful!

Cheers,
@mkennedy

How Are You Scaling ASP.NET?

There are some interesting debates out there around scaling ASP.NET.  How do you do it? Please fill out this poll and tell the world:

Interested in a blog post on this? Take it to the comments section.

Cheers,
@mkennedy

Webcast: Building Rich Input Forms in ASP.NET MVC Tuesday April 10

[Update: View the recordings and downloads.]

Want to learn more about building great forms in MVC? Attend my free DevelopMentor webcast this Tuesday.

Webcast: Building Rich Input Forms in ASP.NET MVC

https://www3.gotomeeting.com/register/559059054

In this webcast we will explore the powerful features of ASP.NET MVC that allow us to build rich forms that accept user input. We’ll begin by discussing the built-in HTML Helpers and Model Binding. Next we’ll add validation and show how we can do both client- and server-side validation using DataAnnotations. Finally, we’ll see that sometimes using domain models as our form-bound objects doesn’t make sense. We’ll look at more advanced scenarios using View Models.

Cheers,
@mkennedy

Add Hot Keys to Web Apps With jQuery.hotKeyMap.js

Hot keys (or accelerator keys) have been an important navigational tool for desktop applications for many years. Finally, web applications are adopting this functionality too. Check out this simple example of a web app with hotkeys.

Expect a more general blog post on the topic soon. For now, I’d like to share my jQuery plugin that enables this capability with you.

Announcing jQuery.hotKeyMap.js: A jQuery plugin that allows you to add complex hot-key functionality and navigation to your web apps with very little effort.

Continue reading

9 Ways Your Brand New ASP.NET MVC Project Can Be Better

So you’re ready to start that new and ambitious ASP.NET MVC project. Maybe you’re kicking off a new startup or just finally moving that old-and-crusty webforms project into modern development world. Either way, here are a few very simple things you can do immediately after creating that new MVC project that you will thank yourself for as your project grows in complexity.

1. First of all, even MVC 3 has old-and-crusty aspects lurking in its projects. There are old MicrosoftMvc*.js AJAX and validation libraries that have be replaced with new jQuery hotness. These *.js files aren’t used so just delete them.

2. Many of the dependencies of your MVC project are out-of-date as soon as you create your project. You have an old version of jQuery, Entity Framework, etc. Luckily Phil Haack and crew had the brilliant insight to link these to NuGet. So the next thing you do is just run NuGet and choose the Updates tab.

Continue reading