My podcast list.

This article is not a deep technical but it would be useful for .net developers. Today I would like to write about my podcast list and hope I’ll get a feedback with podcasts which are good for you.

So what actually I’ve on my iPhone:

.Net-development:

  • .NET Rocks (English) — this is my favourite .NET podcast also this one is the oldest one. There is a lot of new information, always fun and interesting. Carl Franklin and Richard Campbell are doing a great job.
  • herding {code} (English) — also interesting and useful podcast with a variety range of topics.
  • Dot Band (Russian) — this podcast first of all interesting because I can get feedback about .NET rumours in Ukrainian community.
  • Hanselminutes (English) — no comments, this is just a Scott Hanselman!
  • Radio-T (Russian) — an interesting podcast about IT world trends.

Because I’m not a native English speaker my list also includes some of the English learning podcast:

If you need more, Scott Hanselman also has a great list of .Net podcasts. You can find it here.

I’m pretty sure that there are lots of other good podcasts. However, this list gives me a lot of interesting and new information. Also our time schedule is not as flexible as we want, however I can listen this whole list on a week. Unfortunately for now I don’t have a time to add one more a good podcast.

I’ll try to keep this list up-to-date.

Team Foundation Service at the cloud. Setup continuous integration with Microsoft and non-Microsoft test provider

Today I’d like to write about a new offer from Microsoft — Team Foundation Service in the cloud. For now everything is free so this is a great time to play with this technology.

After great success of cloud-version source control I was 100% sure that Microsoft has to react and give their service. Especially because they have already a good product like TFS (after Perforce I really love TFS J). As I said for now TFS is a preview so everything is free. At 2013 a new price will be announcing. However, free plan will include max 5 users at system and some limit for builds (which in my opinion — ideally for small start-ups and freelancers). Previously I used Dropbox + SVN for all my freelance/home projects. Then I’ve switched almost everything to Bitbucket. However, all of this solutions don’t have continuous integrations, test runner and project planning (especially for agile, where TFS always was much-much better then jira).

In this article I’d like to show how easily we can create a simple application, host it at TFS in the cloud, setup continuous integration for each check-in and use not Microsoft test framework. Continue reading

TechDays 2012 at Brussels, Belgium

February 14-16 was fantastic conference at Brussels, Belgium. Also it was the biggest conference when I’ve ever been.

Just have a look at these speakers:

  • Scott Guthrie is a Corporate Vice President in Microsoft’s Server and Tools Business division,
  • Nick Harris is a Technical Evangelist at Microsoft specializing in Windows Azure,
  • Ben Riga is Senior Technical Evangelist for Windows Phone 7 in Microsoft’s Developer and Platform Evangelism (DPE) group,
  • Steve Sanderson works as a program manager for Microsoft in the team that brings you the ASP.NET technology stack,
  • Jeff Prosise is cofounder of Wintellect (www.wintellect.com)

and lots more interesting speakers.

This is absolutely fantastic, isn’t it? J You can find all videos from this event here.

There were a lot of question at the beginning of the year. What is the main way/trend of Microsoft? Is it real rumours about JavaScript (I remind that it was only February!)? And as usual what interesting features were prepared for as from Microsoft?

Let’s give short answer on these questions.

First of all, before this year everybody say that main language at Microsoft stack of technologies was C#. After TechDays 2012 I’d say: now there are 3 equal programming languages C#, C++ and JavaScript.

Yes, JavaScript became strong language at Microsoft world. You should even use JavaScript for creating CRUD operation on Windows Azure Mobile Services (I won’t say here about missing test system and source code tracking hereJ). Next significant point: all Microsoft skills and power is shifted to mobile world: html5, JavaScript and of course mobile platforms.

Secondly, mostly interesting question is about Silverlight future.

After this event I have a following opinion. Steven Sinofsky completely kills Silverlight as a Microsoft trend. However, don’t start to move all your application out of this. There is really good feature for this technology at business sector (especially at conservative business, such as insurance/financing/bank sectors). Here I’m pretty sure Silverlight can be a good choice for creating Rich Internet application.

Last one, but not boring part. Microsoft features.

There are only few words: web + Azure! New Microsoft ASP.NET MVC 4 is absolutely fantastic framework. Have a look at the video from Scott Guthrie “A Look at ASP.NET MVC 4”

A Look at ASP.NET MVC 4

BTW: after session I had a small conversation with him about web and new ASP.NET Web API. I’d like to say: he is really energetic person which can energetically charge an interlocutor. After this few minutes I was full of energy and felt as a Superman J
Next huge topic was Microsoft Azure, awesome platform!

There is a video from Nick Harris about new features here:

Devices + Cloud: Using Windows Azure with Windows Phone, iOS, Android, …

At the end, I would like to say, that TechDays 2012 was a good event, thank you everybody who helped to organize all of this! I really enjoy it and hope it wasn’t my last such a big TechDays.

Refactoring with Microsoft Visual Studio 2010

Until this time I tried not write any post about book review but this book is unique. Of course like every developers I make a plan for year. And of course there is an item about some amount of books which I have to read (in this year I must read 15 technical books). When I changed the company and became team leader I unfortunately don’t have a lot of time but plan – it’s plan J

However I couldn’t write a review on “Refactoring with Microsoft Visual Studio 2010” by Peter Ritchie.Refactoring with Microsoft Visual Studio 2010

I’ve just closed a book which I was reading a few weeks. I was really impressed! I didn’t expect this at all: a way to learn the tool in the context of design patterns. It isn’t just something to read to understand the tools provided to you from VS2010, it’s a book about patterns and practices for power programming. With this book you will look at an assortment of techniques in great detail. You will study how these patterns can be used to change the way your software is designed.

What this book covers

Chapter 1, Introducing Refactoring, describes what refactoring is, its importance, and its priority in the software development effort. Comparison to re-writing and what “Technical Debt” is and how refactoring can be used to pay down technical debt is covered in this chapter.

Chapter 2, Improving Code Readability, begins detailing the refactoring’s built in to Visual Studio and how they can make code more readable. Code smells are introduced, and which code smells apply to readability, and how to detect and refactor them are detailed in this chapter.

Chapter 3, Improving Code Maintainability, continues to detail the refactoring’s built in to Visual Studio and how they can make code more maintainable. Code smells that apply to maintainability, how to detect and refactor them are detailed in this chapter. The importance of unit testing is covered in this chapter.

Chapter 4, Improving code navigation, continues with simple refactoring’s and how code can be refactored to improve its navigability in general and takes into account Visual Studio code navigation abilities.
Chapter 5, Improving design correctness, begins detailing complex refactoring’s. Design principles such as Liskov Substitution and Composition over Inheritance are introduced and how to perform refactoring’s related to these principles is covered in this chapter.

Chapter 6, Improving class quality, introduces code quality metrics like cohesion and coupling. Principles related to cohesion and coupling are introduced and refactoring’s that increase cohesion and decrease coupling are covered in this chapter.

Chapter 7, Refactoring to loosely-coupled, expands on coupling from the previous chapter and drills-down on loosely-coupled design. Principles related to loosely-coupled are introduced and complex refactoring’s related to loosening coupling are covered in this chapter.

Chapter 8, Refactoring to layers, continues with more complex refactoring’s that involve layered architectures. Typical layers, Model View Presenter, and Repository patterns and how and when to refactor to them are also detailed in this chapter.

Chapter 9, Improving architectural behavior, details complex refactoring’s to improve architectural behavior. Design behavior patterns, when and how to refactor to them are detailed in this chapter.

Chapter 10, Improving architectural structure, continues with architectural-related complex refactoring’s. Object-Relational Mapping (ORM) and refactoring Repository implementations are included in this chapter.

Chapter 11, Ensuring Quality with Unit Testing, details the importance of unit testing. How unit testing applies to refactoring, examples of unit testing to support the refactoring effort and legacy code are also detailed in this chapter.

I consider “Refactoring with Microsoft Visual Studio 2010” as one of the first books which I’ll recommend a good .NET-developers!