<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>sharpshooting &#187; Microsoft</title>
	<atom:link href="http://sharpshooting.com.br/category/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://sharpshooting.com.br</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Tue, 10 Aug 2010 15:44:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Can’t Miss! Part II: OpenWrap, a promising .NET package (export) management system</title>
		<link>http://sharpshooting.com.br/2010/08/10/cant-miss-part-ii/</link>
		<comments>http://sharpshooting.com.br/2010/08/10/cant-miss-part-ii/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 15:32:37 +0000</pubDate>
		<dc:creator>carlos.mendonca</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Can't Miss]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[english]]></category>

		<guid isPermaLink="false">http://sharpshooting.com.br/?p=93</guid>
		<description><![CDATA[I&#8217;ve recently stumbled upon a very interesting package management system for .NET: OpenWrap. It&#8217;s no surprise that it&#8217;s been idealized and is being developed by the talented @serialseb (blog) (github), the same guy who developed the OpenRasta web framework.
I haven&#8217;t really found the time to test OpenWrap thoroughly, but knowing the thrills and pangs one [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently stumbled upon a very interesting package management system for .NET: OpenWrap. It&#8217;s no surprise that it&#8217;s been idealized and is being developed by the talented <a title="serialseb (serialseb) on Twitter" href="http://twitter.com/serialseb" target="_blank">@serialseb</a> (<a title="SerialSeb" href="http://serialseb.blogspot.com/" target="_blank">blog</a>) (<a title="openrasta's Profile - GitHub" href="http://github.com/openrasta" target="_blank">github</a>), the same guy who developed the OpenRasta web framework.</p>
<p>I haven&#8217;t really found the time to test OpenWrap thoroughly, but knowing the thrills and pangs one get on setting up a package management system for .NET, I immediately acknowledged the importance of this project. Sure, there are other cool alternatives being developed right now such as <a title="Bricks Project - .NET Project Manager" href="http://bricksproject.org/" target="_blank">Bricks</a> and <a title="paulj's webgac at master - GitHub" href="http://github.com/paulj/webgac" target="_blank">WebGAC</a>; you can even set up <a title="Apache Ivy, the agile dependency manager" href="http://ant.apache.org/ivy/" target="_blank">Ivy</a> to play nice with .NET, as we&#8217;ve successfully done at Locaweb. But regarding the emergence of competitive solutions for package management in the .NET ecosystem, Sebastien couldn&#8217;t put it a better way:</p>
<blockquote><p>(&#8230;) Package management is going to be the next Vietnam war on .net, and many people will come up with different solutions. It’s all for the best, and most projects, as they have done many times before, will die off on their own. This is to be expected. As such, I implore the .net world to let enough time for each of those projects to compete purely on the quality and functionality they provide, and let the best one eliminate naturally the other ones. Don’t succumb to the belief that standardizing early will help, or that popularity would be a distinctive factor. If we fuck-up the package management story on .net, we may never recover, so give it a bit of time and be circumspect in your analysis.</p></blockquote>
<p>That being said, this post aims only at showing what&#8217;s out there regarding package management, with a special emphasis on OpenWrap. Sebastien has been posting several articles on his blog about how the project is developing, so it should be interesting to watch his progress. Last but not least, it is an open-source project, so feedback/contribution from the community should be more than welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://sharpshooting.com.br/2010/08/10/cant-miss-part-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Can&#8217;t Miss! Part I: Learn the fundamentals of functional programming with Microsoft</title>
		<link>http://sharpshooting.com.br/2009/11/26/cant-miss-part-i/</link>
		<comments>http://sharpshooting.com.br/2009/11/26/cant-miss-part-i/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 18:03:03 +0000</pubDate>
		<dc:creator>carlos.mendonca</dc:creator>
				<category><![CDATA[Can't Miss]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://sharpshooting.com.br/?p=82</guid>
		<description><![CDATA[Erik Meijer, IMO one of Microsoft's most brilliant employees, has put together a series of 13 lectures teaching the fundamentals of functional programming.]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-83" style="background-color: inherit;" title="Channel 9 logo" src="http://sharpshooting.com.br/wp-content/uploads/2009/11/channel_9_logo.png" alt="Channel 9 logo" width="98" height="114" /><a title="Erik Meijer's Homepage at Microsoft Research" href="http://research.microsoft.com/en-us/um/people/emeijer/" target="_blank">Erik Meijer</a>, IMO one of Microsoft&#8217;s most brilliant employees, has put together a series of 13 lectures teaching the fundamentals of <a title="Functional programming - Wikipedia, the free encyclopedia" href="http://en.wikipedia.org/wiki/Functional_programming" target="_blank">functional programming</a>. As I mentioned in <a title="My take on the .NET ecosystem | sharpshooting" href="http://sharpshooting.com.br/2009/09/24/my-take-on-the-net-ecosystem/" target="_blank">my last post about Microsoft</a>, it doesn&#8217;t come as a surprise that Microsoft is producing and distributing freely this kind of high-level content, given the fact that guys like Meijer are behind the project.</p>
<p><span id="more-82"></span></p>
<p>The lectures are anywhere between 30 to 60 minutes each and are based on the <a title="Haskell (programming language) - Wikipedia, the free encyclopedia" href="http://en.wikipedia.org/wiki/Haskell_(programming_language)" target="_blank">Haskell language</a>&#8211;for which Meijer has special feelings. He even goes as far as leaving one or two homework assignments at the end of each session, which often involve comparing C# to Haskell and fiddling around with the latter.</p>
<ul>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 1 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/Lecture-Series-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-1/" target="_blank">Chapter 1</a></li>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 2 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/Lecture-Series-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-2/" target="_blank">Chapter 2</a></li>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 3 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/C9-Lectures-Dr-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-3-of-13/" target="_blank">Chapter 3</a></li>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 4 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/C9-Lectures-Dr-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-4-of-13/" target="_blank">Chapter 4</a></li>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 5 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/C9-Lectures-Dr-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-5-of-13/" target="_blank">Chapter 5</a></li>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 6 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/C9-Lectures-Dr-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-6-of-13/" target="_blank">Chapter 6</a></li>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 7 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/C9-Lectures-Dr-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-7-of-13/" target="_blank">Chapter 7</a></li>
<li><a title="C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals Chapter 8 of 13 | Going Deep | Channel 9" href="http://channel9.msdn.com/shows/Going+Deep/C9-Lectures-Dr-Erik-Meijer-Functional-Programming-Fundamentals-Chapter-8-of-13/" target="_blank">Chapter 8</a></li>
<li>Chapter 9</li>
<li>Chapter 10</li>
<li>Chapter 11</li>
<li>Chapter 12</li>
<li>Chapter 13</li>
</ul>
<p>This is truly a &#8220;Can&#8217;t Miss&#8221; and I recommend it to anyone who wants to learn more about the origins of functional programming and how it works. As a bonus, you even end-up learning Haskell&#8230; &#8220;YOU KNOW!&#8221; lol</p>
<p style="text-align: center;">* * *</p>
<p style="text-align: left;">This is the first installment of a series of micro-posts about things I happen to stumble upon on the Internet and which should be of interest to people. If you like it, follow the &#8220;Can&#8217;t Miss&#8221; category to get updates.</p>
]]></content:encoded>
			<wfw:commentRss>http://sharpshooting.com.br/2009/11/26/cant-miss-part-i/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My take on the .NET ecosystem</title>
		<link>http://sharpshooting.com.br/2009/09/24/my-take-on-the-net-ecosystem/</link>
		<comments>http://sharpshooting.com.br/2009/09/24/my-take-on-the-net-ecosystem/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 01:38:29 +0000</pubDate>
		<dc:creator>carlos.mendonca</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[english]]></category>

		<guid isPermaLink="false">http://sharpshooting.com.br/?p=3</guid>
		<description><![CDATA[(A tradução deste artigo para o português estará disponível em breve.)
I’ve been working – both academically and professionally – with the .NET stack since 2003 and although I didn’t meet the rough edges of .NET 1.0 and Visual Studio 2002, I did saw the steep transition from Framework 1.1 to 2.0 and the smoother 3.0 [...]]]></description>
			<content:encoded><![CDATA[<p><span style="color: #777777;"><em>(A tradução deste artigo para o português estará disponível em breve.)</em></span></p>
<p><img class="alignleft size-full wp-image-15" style="background-color: inherit;" title="Microsoft .NET logo" src="http://sharpshooting.com.br/wp-content/uploads/2009/09/net_v_web.jpg" alt="Microsoft .NET logo" width="158" height="151" />I’ve been working – both academically and professionally – with the .NET stack since 2003 and although I didn’t meet the rough edges of .NET 1.0 and Visual Studio 2002, I did saw the steep transition from Framework 1.1 to 2.0 and the smoother 3.0 and 3.5 steps. Right now we’re once again in a period of transition which seems to stale the .NET world for a couple of months at every release cycle. It seems the world is waiting for .NET 4.0 and whatever wasn’t good enough on the previous version&#8211;such as the Entity Framework&#8211;is not going to be further developed by the community. While in theory this represents a golden opportunity for alternative libraries to gain some momentum, in practice corporate developers do realize that the cost of changing legacy applications they simply don’t want to touch outweighs the cost of sitting still while Microsoft puts the latest bells and whistles to the “branded” library and the mainstream community starts blogging with some useful prototypes people can reproduce.</p>
<p><span id="more-3"></span> That said, what seems to be wrong? Well, for starters, it is important to point out that the Microsoft ecosystem, while extremely diverse and rich, could be said to have roughly two kinds of developers: those who by and large are using exclusively the System.* and Microsoft.* namespaces, and dragging-and-dropping like crazy; and those who are producing more exotic code by relying on third-party&#8211;free and commercial&#8211;libraries. The latter will necessarily be coming from or occasionally wandering off to a non-Microsoft platform. Additionally, if you think in terms of the <a title="Dreyfus model of skill acquisition - Wikipedia, the free encyclopedia" href="http://en.wikipedia.org/wiki/Dreyfus_model_of_skill_acquisition" target="_blank">Dreyfus model</a>, you&#8217;ll most likely find more individuals with ‘proficient’ or ‘expert’ skill levels among the group not relying solely on the Microsoft stack. Microsoft has come a long-way in order to provide to such a heterogeneous community and for that it had to make compromises: shall always be agnostic; shall never be opinionated; will always feel like a duck&#8211;can’t seem to fly, swim nor walk properly, but does it all.</p>
<p>At the end of the day, what’s the product of this policy? Pulverization, it seems. If you look at what the community has produced to specialize the loose ends Microsoft left in its framework, you’ll find a mess. A mess of great code, but a mess nevertheless. While <a title="Ayende @ Rahien" href="http://ayende.com/Blog/" target="_blank">Ayende Rahien</a>, <a title="Bits in Motion" href="http://blog.bits-in-motion.com/" target="_blank">Jeff Brown</a>, <a title="Jimmy Nilsson's Weblog" href="http://jimmynilsson.com/blog/" target="_blank">Jimmy Nilsson</a>, <a title="Miguel de Icaza" href="http://tirania.org/blog/" target="_blank">Miguel de Icaza</a> and others may be strong voices on the community, it doesn’t feel like they’ve ever sat down and met each other. But why should they? Has Microsoft set an example in the first place? One thing is for certain: if the community has grown up like that, it has only done so because it was following Microsoft’s steps. There are many areas where it’s easy to see overlapping bits in the framework where you don&#8217;t feel collaboration and reuse took place: Linq to SQL vs. Entity Framework, PLINQ vs. CCR, ASP.NET vs. ASP.NET MVC, WCF vs. ASP.NET MVC . . . the list goes on. None of the elements of each pair are exactly like the other (and it was never intended that they should), but I guarantee you’ll find repeated functionality. The point is: if Microsoft is repeating itself and some of its many areas are evolving at some extent unaware of their neighbor’s progress, why shouldn’t the community? Hey, why reuse if we can come up with a new wheel, right? Well, wrong . . .</p>
<p>The very community Microsoft fed and raised could be what is holding .NET back today. And if that is so, then Microsoft itself is to blame. While it’s useless to compare the .NET community to others, I’m sure that it wouldn’t hurt if we had the Java maturity and scope or the RoR openness. Instead, what we have is some great software being produced by individuals who sadly can’t embrace the whole world, some great software being produced by companies, but which stay proprietary (and will remain so because it cost them a lot of money to develop and because, to put it simply, they&#8217;re just too damn afraid of open-source), and no cohesion whatsoever. (The reason universities aren’t producing more with the Microsoft stack despite their aggressive programs such as <a title="Microsoft Dreamspark" href="http://www.dreamspark.com/" target="_blank">DreamSpark</a>, <a title="ImagineCup Student Competition 2010" href="http://imaginecup.com/" target="_blank">ImagineCup</a> and <a title="MSDN Academic Alliance Home Page" href="http://www.msdnaa.net/" target="_blank">MSDNAA</a> is beyond me. Maybe the company is simply trying too hard to fit in.) Meanwhile, Microsoft’s policy has been (up until now, read along) of watching what’s a must-have in the community and either bringing it in or recreating it (ORM, IoC and logging comes to mind). Kind of a crazy self-embrace-and-destroy-ish strategy.</p>
<p>Folks like <a title="ScottGu's Blog" href="http://weblogs.asp.net/scottgu/" target="_blank">Scott Guthrie</a> and <a href="http://research.microsoft.com/en-us/um/people/emeijer/ErikMeijer.html" target="_blank">Erik Meijer</a>, however, have been pushing a different agenda. They and their colleagues (<a title="Scott Hanselman's Computer Zen" href="http://www.hanselman.com/" target="_blank">Hanselman</a>, <a title="you've been HAACKED" href="http://haacked.com/" target="_blank">Haack</a>, <a title="Glenn Block" href="http://blogs.msdn.com/gblock/" target="_blank">Block</a> etc.) have realized that Microsoft hasn’t been leading the evolution of this industry for some time and that the grass on the other side could indeed be greener. Microsoft has a lot to teach and certainly has a lot to learn, and those guys were the ones who step up and started making a difference. This is a generation of bloggers, start-ups and self-management models, and where accountability and transparency are prime values. Microsoft, I think, has caught up with that, a sign that the times have changed and that Ozzie is indeed continuing where Gates left off, taking the company into the future. The important thing is that the industry, as whole, ends up better at the end of the day.</p>
<p><img class="size-full wp-image-21 alignright" style="background-color: inherit;" title="CodePlex Foundation logo" src="http://sharpshooting.com.br/wp-content/uploads/2009/09/logo.gif" alt="CodePlex Foundation logo" width="264" height="41" />Microsoft has to keep in that track. <a title="ASP.NET MVC 1.0 - ScottGu's Blog" href="http://weblogs.asp.net/scottgu/archive/2009/04/01/asp-net-mvc-1-0.aspx" target="_blank">Opening ASP.NET MVC</a>, <a title="jQuery and Microsoft - ScottGu's Blog" href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx" target="_blank">embracing jQuery</a> <a title="Moonlight 1.0 goes live - Miguel de Icaza" href="http://tirania.org/blog/archive/2009/Feb-11.html" target="_blank">and the Mono Project</a>, for example, were great moves and, not surprisingly, they came on Guthrie’s watch. While Microsoft has made some design decisions for the developers&#8211;and make no mistake: some of them, namely the agnostic die-hards, won’t like these decisions&#8211;they’ve reached a tipping point in the history of the ecosystem. Microsoft’s somewhat controversial new endeavor, <a title="CodePlex Foundation" href="http://www.codeplex.org" target="_blank">CodePlex Foundation</a>, is rapidly gaining popularity and will be subject of a lot of scrutiny by the community in the next months. What has changed in the strategy, is that instead of messing around with what the community has produced, Microsoft is indirectly providing guidance (with processes, techniques, legal mechanisms etc.) for commercial and open-source developers to lift themselves (and their work) up by their own bootstraps. <a title="InfoQ: The CodePlex Foundation - Community Reactions and Interviews" href="http://www.infoq.com/news/2009/09/codeplex-foundation" target="_blank">As reported by Jon Tørresdal at InfoQ, Scott Bellware explains</a>:</p>
<blockquote><p>Microsoft has been forced to build new products from scratch to provide Microsoft customers with the value that open source projects have proven and delivered. These projects are often far less robust and mature as the open source that inspired them. The protections offered by the CodePlex foundation are also a turning point that frees up Microsoft resources to focus on integrating existing value rather than duplicating it, and risk missing the value targets offered already by open source.</p>
<p>All of this points to an evolving shift in culture and values toward the freedom to choose solutions based on merit rather than mere intellectual property risk mitigation.</p>
<p>This shift in culture and values toward meritocracy and the benefits that come from open competition that stands a chance of taking Microsoft and Microsoft customer community in a brand new directions that can provide more value from the Microsoft stack than we’ve seen yet.</p></blockquote>
<p>When collaboration and cooperation start taking place (hey, isn’t it high time people started seeing value on using distributed-VCS?), projects can evolve naturally and in an orderly fashion. No reason why it should be different from what’s already been happening for ages in the unix-like open-source front. In the future, there’s a great chance we’ll see things like a package manager for libraries, common repositories, self-organizing and integrated communities, and flourishing projects. In the end, my take is that, under this strategy, Microsoft’s ecosystems grows stronger, gains market share, and all that without compromising the company’s business model.</p>
<p style="text-align: center;">* * *</p>
<p>This blog is about technology, business administration and engineering. I’ll be watching how the Microsoft ecosystem evolves from here on and I hope to be writing again soon about some predictions I guessed right. Meanwhile, I’ll focus on how to create great software by mashing .NET stuff up, I’ll be visiting different platforms either by professional necessity or by sheer curiosity (the latter more often than the former), and I’ll occasionally be visiting topics on business models and human relations. That’s <strong>sharpshooting</strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://sharpshooting.com.br/2009/09/24/my-take-on-the-net-ecosystem/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
