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

Why Choose NoSQL and Document Databases over RDBMS

Do you want to know the biggest single reason you should choose document databases over SQL Server, Oracle, or MySQL? Hint: It’s not performance or scalability.

Here is a short screencast which shows you the stark contrast in simplicity between an application using a relational database and one using a document database such as MongoDB, CouchDB, or RavenDB.

This is an excerpt from my upcoming online MongoDB course for DevelopMentor. You can take the first 1 1/2 hours for free here:

Early access: MongoDB and NoSQL for .NET developers

Cheers,
@mkennedy

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

Attend my sessions at DevWeek 2013 in London

Want to see some of the topics covered in my blog presented live and in-person? Make your way to London in March 2013 to DevWeek! I’ll be presenting 4 sessions covering NoSQL, ASP.NET MVC, and Cloud (Auzre and AWS mostly). Details below.

Continue reading

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

Michael’s .NET Suggested Reading List

With Guerrilla .NET from DevelopMentor coming up on May 7th, it’s time to refresh my .NET reading list.

Want to get ready for this class or a class like it or just get a quick-start on .NET? Here’s what I would recommend. There are many books covering the topics (but no small list covering most). Instead of trying to read them all in-depth (a fairly unattainable goal), I would suggest that you read the first 2 – 3 chapters from all of these books listed below. This would cost about $250 if they buy them all, but they are all available on Safari Books Online.

http://my.safaribooksonline.com/

You can get the free trial for 10 days and if you like it you can then pay $19 / month and have access to all these books (see the coupon at the bottom of the trial page on safari online).

CLR via C#, Third Edition (foundational knowledge)
http://my.safaribooksonline.com/book/programming/csharp/9780735640467

WPF 4 Unleashed
http://my.safaribooksonline.com/book/programming/microsoft-wpf/9780132174367

Silverlight 4 in Action
http://my.safaribooksonline.com/book/web-development/silverlight/9781935182375

Pro ASP.NET MVC 3 Framework, Third Edition:
http://my.safaribooksonline.com/9781430234043

Programming Entity Framework
http://my.safaribooksonline.com/book/software-engineering-and-development/9780596807276

RESTful .NET
http://my.safaribooksonline.com/book/programming/microsoft-dotnet/9780596155025

Learning WCF
http://my.safaribooksonline.com/book/programming/microsoft-wcf/9780596101626

C# in Depth
http://my.safaribooksonline.com/book/-/9781935182474

jQuery in Action
http://my.safaribooksonline.com/book/web-development/jquery/9781935182320

Host Your Web Site in the Cloud
http://my.safaribooksonline.com/book/web-development/9780980576832

MongoDB: The Definitive Guide
http://my.safaribooksonline.com/book/databases/mongodb/9781449381578

Agile Principles, Patterns, and Practices in C#
http://my.safaribooksonline.com/book/programming/csharp/0131857258

Debugging Applications for Microsoft .NET (sections on WinDBG)
http://my.safaribooksonline.com/book/programming/microsoft-dotnet/9780735645349

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

Speaking on NoSQL and MVC at the South Sound .NET User Group (Near Seattle, WA)

Update: Thanks to everyone who came. You can download the sample application we build here and slides below:

   Kennedy-Demo-Amazoon-Sound-Sound-Usergroup.zip

TDD Space Invaders Video and Downloads

Recently Llewellyn Falco and I did a webcast for DevelopMentor where we demonstrated some TDD techniques and introduced Approval Tests. We let the audience choose our project and they chose Space Invaders. It was all great fun. Now the videos and MP3 streams are online and available for download.


Watch streaming video (WMV HQ)   Download WMV Video Listen to MP3 Streaming Download MP3

Be sure to check out the write-up we did afterward where we talked about the tools and gave you a chance to try it for yourself:

TDD Space Invaders Write-up

You can also watch two other, higher level agile webcasts by Bill Nazzaro here:

Agile Webcasts at DevelopMentor

Cheers!
Michael

Attend My Live, Free TDD Webinar with Llewellyn Falco and Myself at 10am Tomorrow!

[Update: See the follow-up post here: TDD Invades Space Invaders]

Tuesday, October 27, 2009 at 10am Pacific time Llewellyn Falco and I will be giving a live, unscripted, and no safety-net demonstration of Test Driven Development (TDD) as part of the DevelopMentor webinar series (this particular series is a 3-part series on Agile development).

We already have a bunch of attendees registered. But we have room for as many of you who are interested in agile and TDD. Sign up here:

http://bit.ly/dm-tdd-m-and-l

In addition to core TDD techniques, you will see how an amazing technique and set of tools designed by Llewellyn called Approval Tests makes writing tests as simple as verifying an image or text file. Tired of writing 50 lines of test code for every 50 lines of production code but you still want the power of TDD? You need to learn more about Approvals and we’ll demo that live tomorrow!

I hope to see you all online. Feel free to help me get the word out by tweeting this or shouting it (see icons below).

Cheers, Michael.

Article: Building a Twitter Application in .NET

I recently wrote an article for DevelopMentor‘s Developments newsletter entitled Building a Twitter Application in .NET. You can read it at the DevelopMentor website:

http://www.develop.com/twitternetapps

I’ve republished here for my readers. Enjoy!


Building a Twitter Application in .NET

by Michael Kennedy (@mkennedy)
http://www.michaelckennedy.net

Twitter has become one of the web’s hottest properties. It is a central part of mainstream news programs such as CNN’s Anderson Cooper 360, congressional debates, and talk shows. In fact, it grew at a rate of 1400% this past year [bit.ly/jG9BG].

If your company wants to interact with your customers in a modern and engaging experience, you need to be on Twitter. In fact, if you have customers that really like or dislike you, they are probably talking about you on Twitter. You should be part of that conversation.

In this article, we will explore how to build a rich interactive experience on Twitter that goes beyond just creating a new Twitter account. We will build a .NET application that uses the Twitter API (a free service) alongside other cool technologies such as the WCF REST Starter Kit [http://bit.ly/v8mBb] and LINQ to fully leverage the Twitter experience.

Continue reading

Article: Avoiding 5 Common Pitfalls in Unit Testing

Llewellyn Falco and I recently wrote an article for DevelopMentor’s Developments newsletter entitled Avoiding 5 Common Pitfalls in Unit Testing.

You can read it at the DevelopMentor website:

http://www.develop.com/testingpitfalls

I’ve republished here for my readers. Enjoy!

[Update: We have also done a webcast demonstrating some of these ideas, which we wrote up here:

http://www.michaelckennedy.net/blog/2009/10/28/TDDInvadesSpaceInvaders.aspx]


Avoiding 5 Common Pitfalls in Unit Testing

by Llewellyn Falco and Michael Kennedy

When I started out with unit tests, I was enthralled with the promise of ease and security that they would bring to my projects. In practice, however, the theory of sustainable software through unit tests started to break down. This difficulty continued to build up, until I finally threw my head back in anger and declared that

“Unit Tests have become more trouble than they are worth.”

So we stopped. Not all once, but over the months our unit tests died a quiet death. When tests would stop working, we just ignored them. When new features were reported, they were developed without unit testing. At first, it seemed great. We were able to move without the baggage of maintaining the old tests! But soon all the original problems of having a system without tests came back to us. Things keep breaking, deadlines were increasingly pushed back. Releases came with an extraordinary amount of stress, late nights & weekends. The final straw came when we were forced to rush out an immediate update, and ended up taking down the company for 2 days straight. Our new motto became:

“Unit Testing: you’re damned if you do, you’re damned if you don’t.”

In the end, we decided that despite the hardship caused by maintaining unit tests, it just wasn’t feasible to operate without them. So we started down the road to re-incorporate testing into our software development process. As the months went by, however, we discovered that the hardships we remembered had not returned. Looking back, we realized that we had made many mistakes the first time around. The second time around we were smarter. So you, too, can enjoy the benefits of unit tests here are the 5 major pitfalls we encountered the first time around, and how you can avoid them.

Continue reading

Keep up with DevelopMentor on Twitter

You may know that I work for DevelopMentor where I’m an instructor in the .NET curriculum (among other cool things I do there). You probably also know I’m kind of loopy for Twitter as evidenced by my Twitter page and .NET community site driven by Twitter:

http://twitter.com/mkennedy
http://dotnet.ubbuzz.com/

Today those two things came together in a big way. Introducing DevelopMentor’s Twitter presence:

    @DevelopMentor_
http://twitter.com/developmentor_

I encourage you get out there and follow us! Here you will see all the combined Twitter messages of most of the DevelopMentor instructors as well as a couple of messages from DevelopMentor itself. You’ll get the chance to keep on top of the world as viewed by some of the smartest people I’ve had the chance to work with: the DM instructors! You’ll see which instructor posted any given message with an attribution at the end (either “via @marksm” or ^MS depending on the available space).

I’m excited about this not just because I think it is cool and useful (and has to do with Twitter :) ), but over the last few days I’m the guy who wrote the back-end systems to make this all go. It was a short but fun project. It’s a real testament to .NET that this was mostly written an hour.

After you follow @DevelopMentor_ you might want to interact with some of the instructors directly. Here’s our Twitter accounts in a single place for your reference:

http://twitter.com/bmaso

http://twitter.com/danamiga

http://twitter.com/jason_diamond

http://twitter.com/markblomsma

http://twitter.com/marksm

http://twitter.com/mauricedb

http://twitter.com/mkennedy

http://twitter.com/richardblewett

http://twitter.com/tonysneed

http://twitter.com/wallacekelly

I hope you enjoy the conversations we’re bound to have on Twitter. Come be part of it.

Signed: @mkennedy