The world of .NET continues to evolve and expand. And, as such, that means there’s a lot to keep up with.
But you don’t necessarily want to just dive in without a "net," so to speak. (Hence, our other recent recommendation-based posts on must-read programming books, great C# blogs to follow, and more.)
So here’s a look at my occasional perusal of the blog-o-sphere, specifically on some of the best .NET blogs to follow. (There are definitely some good ones for you this month!)
1. Build Please: Nick Chamberlain
Nick Chamberlain runs a great blog he calls Build Please. Just from an organizational standpoint, it’s quite well laid out. You’ll find a running table of contents on the right side of the screen. You can easily scroll and scan to find topics that interest you.
Chamberlain knows all the angles of .NET. Some of the topics he has covered include Domain Driven Design, Command Query Responsibility Separation, and Event Sourcing. He covers the principles of each, and clearly feels your pain as “everything becomes a decision-making nightmare.”
He also covers diverse .NET topics like using delegates, testing time dependent code, mapping nested JSON objects to a .NET dictionary and changing a type within a class when you instantiate. He also provides weekly keyboard shortcuts. I love those types of things—quick tips and tricks you can put to use immediately. Check out the rest here at Build Please.
2. Thomas Levesque
Thomas Levesque also runs a slick .NET blog. This no-nonsense blog covers tips, workarounds and sneak previews. One of his recent previews took a look at some of the new C# 7 features in the forthcoming Visual Studio "15" (not to be confused with Visual Studio 2015). He particularly likes the new lightweight installer, which sounds like a great idea indeed. His real interest is the compiler and works in some of the C# 7 features like local functions, pattern matching, and binary literals.
The rest of his blog is very hands-on and how-to focused, with posts covering explicitly switching to the UI thread in an async method, retrieving dates as UTC in SQLite, creating an auto-mocking container with Unity and FakeItEasy, and customizing string interpolation in C# 6. I like the practical, clear instructional tone of Levesque’s posts. Another side note about Thomas Levesque’s blog—you can read it in French if you’d like. Visit thomaslevesque.com to learn more.
3. Tony Sneed
Another notable blog comes to us from Tony Sneed. The native Slovakian trainer and consultant delivers a nice straightforward educational blog covering germane and up-to-date subjects like using the simple MVVM toolkit, getting your Visual Studio code ready for TypeScript 3, using EF6 with ASP.NET MVC Core 1.0, and moving to MVC 6 from WCF.
The MVC 6 post does a good job reflecting Sneed’s tone and style. “The time has come to say goodbye to Windows Communication Foundation (WCF),” he writes. “Yes, there are plenty of WCF apps in the wild—and I’ve built a number of them. But when it comes to selecting a web services stack for greenfield applications, you should no longer use WCF. There are many reasons why WCF has lost its luster, but the bottom line is that WCF was written for a bygone era and the world has moved on.” You can find Tony’s words of wisdom by visiting blog.tonysneed.com.
So you don’t ever have to go it alone. You’ve always got help getting the most out of everyone’s favorite framework.
Stay tuned for more .NET blogs to follow in the coming weeks!
Posted by Lafe Low on 07/20/20160 comments
Visual Studio Live! Boston was a great success. As a local guy, it was a thrill to have the event right here where I live. Any time anyone needed a recommendation for a restaurant or an Irish pub, I was happy to help.
For me, the keynote and general session are always a big draw, and VSLive! Boston was no exception. The event kicked off on Tuesday, June 14 with a lively keynote from Microsoft’s own Jeffrey Fritz, and on Wednesday morning, June 15 there was an equally inspiring and entertaining general session from Tim Huckaby.
Keynote: The Future of .NET
Jeffrey Fritz is the senior program manager for the developers outreach group at Microsoft. He started off the show with a look at where .NET is and where it’s going, as well as a glimpse into some of Microsoft’s other development tools. “.NET has come a long way from a long time ago, and by a long time ago I mean 2014 and 2015,” he says.
The big news is clearly reusable code and running on multiple platforms. Bringing the Windows, Linux and Mac platforms together means helping them use many of the same components, says Fritz. “.NET has been fractured over the last few years, now we’re bringing it together,” says Fritz. “Reusing code used to be a nightmare. Now, whether you’re using .NET Framework, .NET Core or Xamarin, it’s the same runtime components and the same runtime model.”
Fritz described Microsoft’s efforts to make the .NET library easier to use and easier to share across platforms. “We’re turning things around here. We’ll reference the full implementations upon deployment. So you get to master just one library, not just a platform.” He appealed to the Lord of the Rings geeks in the crowd (myself included), calling it, “The .NET library—one library to rule them all.”
Click here read more about Jeffrey Fritz’s keynote session at VSLive! Boston.
General Session: The Current State of NUI
Then on Wednesday, Tim Huckaby took the stage to give us his take on the current state of the natural user interface. Huckaby is the chairman and founder of InterKnowlogy, Actus Interactive Software and VSBLTY. “You may not know us,” he says, “but you’ve used our software.” Huckaby’s companies have built software for such renowned organizations as NASA, Levis, Raytheon, Coca-Cola, ABC, and NBC.
“We now have a NUI—a natural user interface,” he says. This could even lead to thought controlled computers and technology he explains. “Imagine a paralyzed person thinking their way to steering their wheelchair.”
Huckaby recalled Moore’s Law, which is essentially a prediction of technology developing in leaps and bounds. “Computers are currently calculating at the speed of small animals,” he says. “By 2020, they’ll be calculating at the same rate as a human brain. That’s crazy, scary interesting.”
Huckaby finished up with a demo session on 3D cameras, and the software developed to display and analyze video capture. “3D cameras do amazing stuff, and they’re only about $150,” he says. He also says these cameras can be extremely accurate for facial recognition, which makes them well-suited for security applications.
Click here to read more about Tim Huckaby’s general session keynote at VSLive! Boston.
Visit the VSLive! website for more information on our upcoming events!
Posted by Lafe Low on 06/29/20160 comments
Microsoft’s acquisition of Xamarin is one of the biggest stories to come out of the development world recently. After all, it could change the way you develop apps for mobile devices from here on out.
We recently checked in with Xamarin developer evangelist and insider James Montemagno for his thoughts on this groundswell movement.
"What has been one of the most positive outcomes of Microsoft’s acquisition of Xamarin?"
Microsoft’s acquisition of Xamarin has been a big win not only for Xamarin developers, but for every developer looking to go mobile.
Some of the largest announcements have been that the Xamarin platform is now included in Visual Studio, including the Community Edition, at no additional cost. This means anyone and everyone can start building beautiful native iOS, Android, and Mac apps all in C# for free. What’s probably the bigger win for the .NET community was the open sourcing of Xamarin SDKs for iOS, Android, and Mac, as well as our incredibly popular Xamarin.Forms library for building cross-platform user interfaces, and the launching of http://open.xamarin.com.
"What are the primary benefits for developers using Xamarin?"
There are several key benefits to using Xamarin to build mobile applications for iOS, Android, and Mac. First, you’re creating real native applications on each platform with 100 percent API access and fast native performance on each platform. Developers get to do this all from C# or F#, both extremely powerful and amazing languages, right inside of Visual Studio on a PC or Xamarin Studio on a Mac.
The beautiful part is developers get to access all of their favorite .NET libraries and create a huge shared code library that all of their mobile apps can use. This means apps can share anywhere between 70-90 percent of their code across all platforms. The mobile app users get lovely applications with awesome features and run completely native on their platform they are using.
"Is Xamarin truly the secret sauce to developing apps across any platform?"
As a mobile developer who has been developing with Xamarin since 2011, I think the secret sauce is the Xamarin platform was built with a native-first approach to cross-platform development. This means Xamarin makes it a priority to ensure anything an Objective-C, Swift, or Java developer could do on iOS or Android could also be done by a C# developer using Visual Studio with Xamarin. It also means that if there’s a feature I want to implement or library I want to use, I have access all in C# with powerful C# features. It's pretty fantastic.
"From your perspective, which do you prefer and why: to work with Xamarin on a particular platform or language to do your initial development?"
If you follow me online, you know I absolutely love Android. It’s a crazy, beautiful, complex, and all-over-the-place platform I love to tweak and try out new things. And I've really fallen in love with Material Design. That’s where I love to spend a lot of my time, but I love all the platforms. Xamarin supports F# very well, and VB developers can even build Xamarin apps using Xamarin.Forms and Portable Class Libraries (PCLs).
For me it has always been about the expressiveness and elegance of C#. There is so much awesome packed in there like async/await, Linq, and all the amazing C# 6 features. I can’t wait to start using C# 7 and take advantage of pattern matching, new tuples, and more in my apps on iOS and Android.
"What’s next for Xamarin? What do you see happening over the next couple of years?"
It’s an extremely exciting time right now for Xamarin and Xamarin developers. The open sourcing of the Xamarin platform means anyone can start contributing and start adding features. The tooling, integration, libraries, and plugins will get stronger and simplify development for all mobile developers. It’s also an exciting time to be a .NET developer who wants to go mobile.
James Montemagno is a Developer Evangelist at Xamarin. He’s also a frequent speaker at Visual Studio Live! events.
Posted by Lafe Low on 06/16/20160 comments
There's always something new to learn at Visual Studio Live!, no matter where the event lands. And the Austin event held in May was no exception.
We’ve covered the excellent presentation from Scott Hanselman already, and here's a brief recap of the two other keynotes/general sessions from VSLive! Austin.
(Missed the event? Watch all three addresses now by visiting https://vslive.com/austinvideo.)
Keynote: Visual Studio - Looking Into the Future
At the opening keynote on May 17, Microsoft’s Tarek Madkour gave the eager crowd a look at the enhancements they can expect in the forthcoming Visual Studio 15 release. This is not to be confused with Visual Studio 2015—another of the many twists and turns in Microsoft’s naming conventions.
In addition to discussing these Visual Studio updates, Madkour also covered a lot of the openness going on at Microsoft lately, especially the notable .NET and .NET Core developments.
The massive size of Visual Studio—in any of its releases—has long been an issue for developers. Microsoft took notice, so it will release Visual Studio 15 in two flavors: the full 40 GB Visual Studio Enterprise and the preview version with the new installer.
“The core Visual Studio shell includes the editing, building and debugging—not just specific languages,” Madkour says. “You can add those as workload. Based on discussions with developers and looking at developer behavior, we can now pick workloads up front.”
Madkour also made it clear that the goal with the new installer is to make it more lightweight. “It takes MBs, not GBs," he says. "It’s optimized for the scenario you want. We picked the tools we see most people using.”
He also talked about the Xamarin acquisition and the opening of .NET Core, as well as the direction of covering all platforms and devices. “We have the .NET framework, which runs on Windows. Then we have Xamarin, so you can take the beauty of .NET and go cross platform to iOS or Android. Lately, we added .NET Core—our version of .NET that is open source and goes across all platforms.”
He pointed out that while .NET now is open source, any code still has to go through a rigorous process. And then it is supported by Microsoft.
General Session: Coding, Composition, and Combinatorics
The Wednesday general session, held on May 18, featured the always entertaining and informative Billy Hollis. His thesis is that complex problems demand a different approach.
Hollis dove deep into taking different approach to assessing and solving problems, which fits well into his character. “I tend to look at things a bit differently than most people,” he says. No argument there!
Hollis urged everyone to start thinking of problems from a compositional standpoint. He describes that as the act of combining parts, pieces and elements together to build a larger whole.
“What compositional thinking does is give you a new way of thinking about a problem,” he says. “This space of combinations lets you search the space for the pieces of the combination that solve the problem you have. So you stop thinking about problems in a linear and procedural way.”
He points to XAML as particularly well suited for this approach to thinking and problem solving. “There’s compositional thinking in XAML. That has a good visual way of showing composition,” he says. “You get a good idea of what the individual pieces are doing.” This approach is not only quicker, but also results in higher quality.
“The compositional approach makes you spend more time trying to understand the problem,” he says. “When you’ve got the right mental model, solving problems will be much faster and easier.”
The next Visual Studio Live! events will be held in Boston, MA on June 13-16, and Redmond on August 8-12, 2016. Check out the VSLive! website for more details on all of our upcoming events.
Posted by Lafe Low on 06/09/20160 comments
If you were just at VSLive! Austin, there’s no doubt you learned a lot and saw some great presentations from the likes of Billy Hollis and Tarek Madkour (more on that in another upcoming post).
Hopefully, you had some time to avail yourself of the sights, sounds and sensations of Austin as well. Renowned as a music destination (hence the hit show Austin City Limits), it's also a semi-paradise for foodies and just an all-around funky place. And it’s in Texas!
But you didn’t have had to leave the conference to be entertained. Did you happen to catch Scott Hanselman’s general session last Tuesday? (If not, the video recordings for all the keynotes/general sessions can be found here.) If Scott decides to retreat from his career as a major developer advocate/evangelist/rockstar guy, he could find success as a stand-up comedian. He punctuated most of his punch lines by displaying some hilarious GIF files.
His general session was basically a revved-up pep talk for developers moving into the brave new world of the open Microsoft, virtualization and the cloud. While Hanselman is indeed an official Microsoft guy, he doesn’t work in Redmond (symbolized by the Death Star on screen).
“I work in Portland, and I work in open source,” he says. He equates that to working at Microsoft, “like a bunch of storm troopers running around pushing buttons and hoping they don’t blow up another planet.”
The Virtual Machine "Strikes Back"
Jokes and puns aside, Hanselman did point out how well things are working in the world of code and encouraged everyone to get out and get at it. “The problems have been solved. The internet has changed. Get those virtual machines to do some work with all those processors out there,” he urges.
“We can expect more from our web tools. It actually kind of works now; it actually fits together pretty nicely. You’ve got this great cloud with massive scale and elasticity. Go out there, and use those unlimited virtual machines. Don’t forget client side. Put that to work. You have more power than you realize. You know this stuff. Get to work.” Mic drops.
But I’m still wondering... where did he find all those awesome GIFs?
Visit the VSLive! website for more details on upcoming events.
Posted by Lafe Low on 05/31/20160 comments
Among all the excellent resources to help you fine tune your development skills with Visual Studio are myriad videos—from beginner to expert, simple to complex, and the purely functional to some highly specialized techniques. (A vast majority of these can be found on YouTube and on Microsoft’s Channel 9
Seeing an expert work through a certain process while you yourself have Visual Studio up and running so you can follow along, is an excellent way to learn. You can pause, rewind and review at your convenience. It’s kind of like Netflix for developers.
In addition to the tutorials listed in Part 1 of this blog series, here are a few more very helpful and specific Visual Studio video tutorials we’ve come across recently:
Follow along as Tim uses Visual Studio to quickly create a database app in Visual Studio. He takes you step-by-step of developing a simple business contacts application linked to a SQL Server database. To put together this simple, yet useful, app, he uses Visual Studio Professional 2008, Visual C# and SQL Server. As Tim works you through the process, you can see the screen highlighted where he selects menu items or other options. It’s very easy to follow along as he works within the IDE to create the app.
This brief six-minute Channel 9 video takes you through the process of applying code analyzers to your Visual Studio code, either while you’re typing it in (live analysis) or at rest (static analysis). You can listen to simply the audio for this one, or download any quality level of MP4, depending on your bandwidth and connection.
This seven minute YouTube video gives you a good overview of keyboard shortcuts that can come in handy when debugging. Mosh maintains that keyboard shortcuts are very important to increasing productivity. He’s clearly not a fan of what he calls the “bad habit” of using the mouse and doesn’t want you waste time and computer resources by using the debug mode when you don’t need to.
Mosh summarizes some of his favorite debugging keyboard shortcuts to expedite the debugging process:
- Ctrl + F5 to run the app
- F5 to run the app in debug mode
- Shift + F5 to stop debugging session
- F9 to insert or remove a breakpoint
- F10 to step over a method
- F11 to step into a method
- Shift + F11 to step out of a method
These are just a few quick videos that you can help you through a jam in Visual Studio. For additional video tutorials, don't forget to check out “Part 1” of this series as well!
Posted by Lafe Low on 05/24/20160 comments
In an earlier blog post, we discussed a few .NET books for developer success. And as our team was weighing the options for the next book blog post, Ted Neward’s name kept popping up.
Ted has been a fixture with Visual Studio Live! for years. His lively, informative and opinionated sessions are always a big draw.
Besides being a regular at Visual Studio Live!, Ted is a prolific author, regularly contributing to MSDN magazine and co-authoring a number of books. So prolific, in fact, that we decided to dedicate an entire post to his work!
Here are a few books featuring Ted’s contributions that will broaden your developer—and programming language—knowledge:
Professional F# 2.0 by Ted Neward, Aaron Erickson, Talbott Crowell, and Rick Minerich
Professional F# 2.0 came out in 2010, but it’s still a high-level germane reference to F#. This is by no means an introductory text.
To get the most out of this, it’s assumed you already have some familiarity with other development languages. And to really dive into this book, it's assumed you’re already a .NET developer looking to apply F#’s unique approaches to your code. The subject matter goes deep into F# syntax, the semantics, pattern matching, binding values and control flow, and F# and .NET data access.
VB.NET Core Classes in a Nutshell by Budi Kurniawan and Ted Neward
This publication outlines all the types found in 22 core namespaces of the .NET Framework Class Library. It's often paired with VB.NET Language in a Nutshell to serve as a two-volume reference for VB.NET programmers everywhere.
C# Language Pocket Reference & C# in a Nutshell by Peter Drayton, Ben Albahari, and Ted Neward
Avoiding the how-to format of many programming books, these resources are intended for quick reference in your day-to-day coding projects – whether you’re a C# veteran or just learning the language.
Want even more Ted? Check out his blog for his latest thoughts and industry insights.
Posted by Lafe Low on 04/29/20160 comments
We’ve all struggled with poorly designed web sites or apps before. What button do I push? Where do I enter my information? There are just too many options here. Sound familiar?
Even if you’ve developed the most amazing app the world has ever seen, it’s no good if users have trouble interacting with and using it. User experience design is critical, since it can make or break your app.
So if you’re looking to talk UX/UI design, you’ll want to talk to Billy Hollis. The always entertaining renowned UX design expert recently gave a webcast preview of the sessions he’ll be presenting at the next Visual Studio Live! event in Austin, TX. (And if you missed the webcast, you can check out the recording here.)
Here are some of the resources Billy mentions during the webcast:
Billy will also be leading several sessions at VSLive! Austin, including a general session keynote on Coding, Composition, and Combinatorics. His other sessions are:
So if you’re interested in learning more about UX design and refining your own UX design approach, Billy is clearly the man to see.
Other UX Design Resources
During his recent webcast, one of the listeners asked about any new design books he would recommend. While nothing new has recently captured his interest, he did recommend five books which cover basic fundamentals and that every UX designer should have on their bookshelf:
- Universal Principles of Design, by Willian Lidwell, Kritina Holden and Jill Butler
- Sketching User Experiences: The Workbook, by Saul Greenberg, Sheelagh Carpendale, Nicolai Marquardt and Bill Buxton
- About Face: The Essentials of Interaction Design, by Alan Cooper, Robert Reimann, David Cronin and Christopher Noessel
- Drawing on the Right Side of the Brain, by Betty Edwards
- A Whole New Mind: Why Right Brainers will Rule the Future, by Daniel Pink
Posted by Lafe Low on 04/18/20160 comments
It’s good to keep your coding skills sharp, and that’s a tall order these days with the pace and scope of changes in the development landscape. There are constantly new versions of venerable development frameworks and libraries, things moving to open source, and cross-platform workarounds.
It’s definitely an exciting time to be part of the development world, and one good way to keep your finger on the pulse of these changes is through the blogosphere. After all, we already know there are some great blog-based resources for Visual Studio and AngularJS, right?
Four other blogs we've recently come across—three from Microsoft staffers and one from an independent expert—provide an excellent insider’s view to the inner workings of C#.
1. C# Developer Blog: Ravinder Singh
Ravinder Singh is a senior software engineer at Lockheed Martin; the only one mentioned here who is not actually a Microsoft employee.
One recent post covered C# CSV Library and HTTP Handlers. After looking at some original code placed in a standard ASP.NET WebForms page in the OnLoad event handler, he realized the code was better off placed in an HTTP Handler. The primary advantage of using a HTTP handler to generate the file is he could bypass the unnecessary ASP.NET WebForms page life cycle.
"The existing code was using a StringBuilder to generate the CSV string in the page OnLoad event handler. As you may imagine, this looked messy and was a pain to maintain. To abstract the CSV string creation logic, my colleague introduced me to a useful CSV library called LINQ to CSV. The project page link for this library is here and the library is available as a NuGet package."
2. Maarten Balliauw
Another impressive C# blog comes from Maarten Balliauw, who is indeed a Microsoft guy. His primary interests are ASP.NET (C#) or PHP Web apps and Microsoft Azure.
His self-titled blog has recently covered such topics as broken dependency chains that, as he put it, broke the Internet. There are also posts on disabling session affinity in Azure App Service Web Apps and working with a private npm registry in Azure Web Apps.
3. Bill Blogs in C#: Bill Wagner
Another excellent blogger, Bill Wagner just recently joined Microsoft. He’s on the .NET Core content team, focused on building learning resources for developers new to the .NET Core platform.
One of his recent posts covered a potential new feature in C#, called Local Functions. This may or may not be part of the next version of C#, and he welcomes your input and discussion. "The overall effect is a more clear expression of your design," he concludes. "It’s easier to see that a local function is scoped to its containing function. It’s easier to see that the local function and its containing method are closely related."
4. Joe Duffy
Finally (at least in this post), Joe Duffy’s blog is another to visit on a regular basis. Joe is an engineering director for compilers and languages at Microsoft. His top posts currently include The Error Model, Safe Native Code, and Asynchronous Everything.
Are there any other C# blogs you visit regularly? Comment below or email email@example.com with your suggestions!
Posted by Lafe Low on 03/31/20160 comments
These days there are channels on cable and satellite TV for just about anything—history, cooking, cartoons, music, dogs, cats, clowns, politics (not sure what made me think of those last two in sequence), and more.
So naturally there should be some videos available for our favorite development environment, right? After all, Visual Studio is certainly rich and deep enough to warrant several seasons of binge watching.
And when it comes to Visual Studio video tutorials, Microsoft’s Channel 9 is clearly the juggernaut. However, it's not the only game in town.
This entry-level video from the Windows development team is a great resource for loading and launching Windows 10 and Visual Studio for the first time. Then it leads you into developing some Universal Apps, relying on easily available online templates. Again, this is more suited to beginners, but it still gives you an idea of what else is available online—some free and some for an associated fee.
Additional Must-Watch Video Tutorials
Since this is Microsoft’s IDE we’re talking about, it's almost impossible to avoid Channel 9. And you certainly wouldn't want to, given there's a plethora of expert-level videos available on this community site:
There are a myriad other video resources for all levels of coding expertise and aspects of the Visual Studio IDE. I’ll cover more of these in an upcoming post, so stay tuned!
Posted by Lafe Low on 03/22/20160 comments