17 April, 2014

Keeping an Eye on Rosyln

Over the past few days there has been a bit of news about Roslyn. I am working on getting my head around what is Roslyn and why do I care?

What is Roslyn?

"The .NET Compiler Platform ("Roslyn") provides open-source C# and Visual Basic compilers with rich code analysis APIs. You can build code analysis tools with the same APIs that Microsoft is using to implement Visual Studio!" - http://msdn.microsoft.com/en-us/roslyn

The way I am understanding this is Roslyn allows the C# code to help write C# code. A few others has commented that Roslyn would allow for the scripting of code plus the ability to compile/execute that code on the fly. 

Should I care about Roslyn?

The short answer is yes. 

Roslyn holds the promise of changing the way code is written, the way code is refactored, and the way code is analysed. 

It seems to me that the inline declaration expressions will take a little getting use to and will help produce more readable code.

I am rather excited to see what new features and tools people will develop to help with refactoring code. The example, I see the most showing off Roslyn's refactoring capabilities is the inline rename. 

It seems to me that Roslyn can help with Aspect Oriented Programming (AOP). In the AOP world, logging is the use case people point to for the need of AOP. Logging is common utility that is needed through out a program. It can get rather ugly and boring to write a logging statement in each method. It would be great to have a tool, script or the compiler automatically add logging to each method and to not clutter up the code with logging statements.

References


04 April, 2014

I was struck by the blog post 'The 30 second habit with lifelong impact.' The heart of the article is about taking 30 seconds after an important meeting, lecture, or experience to write the most important points.

My typical day includes several meetings, reading articles, writing code, learning new technologies, and increasing my knowledge of technologies. I encounter a lot of information each day. This idea of taking a few seconds to write down key points seems like it would be a valuable way to sort through all the information I encounter.

I have been keeping a journal. I really should rephrase, every few days I write something in what I am calling a journal. I don't have a good habit of writing each day. Taking a few seconds at the end of the day to write down a key point or two about the day would help to give me something to write about in the journal.

Challenging myself to learn something new

I have recently set a big challenge for myself. I want to know about Machine Learning . To add to the challenge, I am trying out usin...