Microsoft has released a new version of its Enterprise Library, a collection of reusable software components for developers working in large environments, for the first time in three years.
The Library helps with "cross-cutting concerns" like logging, validation, data access, exception handling and so on. Microsoft calls these software components "application blocks". They contain not just source code, but also documentation and test cases. The latest version is called Enterprise Library 6; the previous full release, Enterprise Library 5, came out in April 2010.
The application blocks function like a best practices guide, only including a lot of software. In this MSDN document explaining the Enterprise Library, Microsoft says the blocks are easy to add to .NET Framework projects. For example, Microsoft says, "The Data Access Application Block provides access to the most frequently used features of ADO.NET, exposing them through easily used classes."
The goals of the Enterprise Library are consistency of design patterns and implementation approaches; extensibility through custom code; increased ease of use through functionality like a graphical configuration tool and better, more complete documentation; and smooth integration, since the application blocks are designed to work together.
Corporate VP of the Microsoft Developer Division S. Somasegar said on his blog that Enterprise Library 6 brings it up to speed with more recent technologies, integrating with ASP.NET MVC and ASP.NET Web API, for example.
Microsoft's Grigori Melnik, Principal Program Manager for patterns and practices, described "cross-cutting concerns" as tasks that need to be accomplished in several places in the types of large, sprawling line-of-business apps targeted by the Enterprise Library. "When trying to manage crosscutting concerns there is often the risk that you/different team members will implement slightly different solutions for each task at each location in your application, or that you will just forget them altogether," Melnik said.
Previous Enterprise Libraries included 4.1, released in October 2008, and retired versions 4.0 from May 2008, 3.1 from May 2007 and 2.0, from January 2006.
Enterprise Library 6.0, made available under the Microsoft Public License, can be downloaded through NuGet.
Posted by Keith Ward on 04/26/2013 at 1:15 PM0 comments
The most important fact about jQuery 2.0 for Web developers is that IE 6, 7 and 8 are no longer supported. Dave Methvin, president of the jQuery Foundation, blogged that for sites that need to maintain compatibility with older IE browsers, the 1.x versions of jQuery will do just that, including an upcoming 1.10 version (1.9.1 was the last version of jQuery officially released). The older browsers, through the 1.x branch, will be supported for "several more years," Methvin wrote.
The time had come, however, to update jQuery for the modern Web, including Windows 8 apps, Google Chrome, Firefox OS apps, Chrome OS apps, Microsoft WebBrowser control and more. One advantage of the 2.0 release is that it's 12 percent smaller than 1.9.1, owing to the removal of patches needed for IE 6, 7 and 8.
The major changes that needed to be made in jQuery 2.0 when it comes to Windows 8 apps were security related. Since all Windows Store apps have native access to the Windows Runtime, jQuery had to create a new security model, according to Microsoft's Olivier Bloch, a senior technical evangelist, in a blog about 2.0. Jonathan Sampson, director of Support for appendTo, a company that's contributed to jQuery, described the technical reasons:
"While jQuery meets the language criterion for Windows Store applications, Windows 8 exposes all the WinRT APIs within the HTML5 development environment, which comes with a new security model that made some code and common practices of jQuery flagged as unsafe in the context of a Windows Store application. AppendTo reviewed and re-authored portions of jQuery core to bring it into alignment with the Windows security model, as well as identified key areas where alternative patterns would need to be substituted for actually-used conventions."
Posted by Keith Ward on 04/19/2013 at 1:15 PM0 comments
Facebook today released the Facebook SDK for .NET, to enable Windows-focused developers to integrate their applications with Facebook.
The SDK was announced on the Windows Phone Developer Blog. The open-source SDK is C#/XAML based, and can be found at the Outercurve Web site. Most developers will want to install the SDK using NuGet (this page recommends having the latest version of NuGet; some features of the SDK won't work with older versions.)
Before you do any of that, however, you'll need to create a Facebook app. Once that's done, you can build any type Windows Phone 8 or Windows 8 app. Since the provided APIs for both Windows Phone 8 and Windows 8 are "very similar", reports Microsoft, code sharing between the platforms should be simple.
The two critical reasons to develop suing the Facebook SDK for .NET are spelled out in the Windows Phone Developer blog:
- It takes away all of the complexity of logging on with Facebook. Based on the provided samples, all you need to do is use a bit of boilerplate code, add your Facebook app ID to the mix, and voila! You can have people logging on to your app with Facebook.
- It allows you to focus on your Facebook-related scenarios by abstracting away the low-level details such as HTTP connections and query parameters. This way you can plan and develop around Open Graph APIs and objects, which is where you want to spend your development resources.
The SDK is supported as far back as .NET 3.5. Also supported is Silverlight 5 and Windows Phone 7.1, so you don't have to be building only for Windows 8/Windows Phone 8.
Outercurve is a foundation dedicated to bridging the gap between software companies and the open-source community by "providing software IP management and project development governance," according to the organization.
Posted by Keith Ward on 04/18/2013 at 1:15 PM0 comments
Agile is one thing, but this is ridiculous. Less than two weeks after Visual Studio 2012 Update 2 was released, Microsoft already has the first Community Technology Preview (CTP) of Update 3 ready to go. (Mary Jo Foley reported on the release first, as far as I can tell. )
The Update 3 CTP includes a few upgrades, but most of the work seems to be focused around fixing various issues. There are several bits of enhanced functionality in Team Foundation Server (TFS), as this KnowledgeBase article details:
- Build settings can be preserved when you upgrade a TFS 2012 instance.
- Improvements in the New Build Definition UI for the Continuous Integration (CI) build in Git-based team projects.
Most of the fixes relate to TFS as well. Microsoft lists 13 squashed bugs in CTP 1; they include Kerberos errors, SharePoint URL errors, backup and event log problems and more. Nothing looks too horrific.
With the final release of Update 2 earlier this month, that makes two releases in April. There were CTP releases of Update 2 every month in 2013, and Update 3 has now gotten its first CTP.
Microsoft says it's part of its new effort to push out updates much more regularly, but I'm interested in your feedback on this. Could it be that they're too regular? Do you have time to be updating Visual Studio this often? I know that many found it beneficial when Microsoft moved to a monthly "Patch Tuesday" update schedule years ago. Does the same thing hold for Visual Studio 2012? Let me know in the comments, or email me directly.
You can get Visual Studio 2012 Update 3 here. Remember to not put this on a production server. Doing so could be very bad.
Posted by Keith Ward on 04/17/2013 at 1:15 PM0 comments
The struggle continues. I was just reading an eWeek article about programming languages, and why some are less secure than others. This being eWeek, the article was aimed more at a general audience than a developer audience, so some allowances need to be made. But not allowances that are simply wrong, and by an alleged expert.
The article referenced a report by application security firm Veracode. Based on what I read, I'm not sure I'd trust Veracode at all. It has this accurate quote: "Languages such as C/C++ are not type safe languages," explained Veracode Vice President of Research Chris Eng. This is, of course, true.
But then came an error that startled me. Here's the quote:
"In C/C++, the programmer has to keep track of the type and space with no help from the language or compiler, allowing flaws to creep into the software," Eng said. "Languages such as .Net are type safe, so you will see a much lower occurrence of buffer overflow flaws."
"Languages such as .Net are type safe" -- since when did .NET become a language? .NET, as you know and I know -- and Veracode certainly should know -- is a framework, not a language. I don't know if Eng was simplifying it for a reading audience that may not understand the distinction between a framework and a language or not, or if he simply doesn't know the difference.
For the record, I have no problem simplifying complex ideas -- it's something we do here all the time at Visual Studio Magazine, and is very helpful. But simplification is ruined if mistakes are introduced in the process.
If, on the other hand, Eng doesn't know the difference, well, I don't know what to say. I would also hope that eWeek's editors would catch an error as blatant as this, in an article about programming languages. But I'm more shocked at Eng, since he's allegedly an expert.
So, to review: Microsoft's .NET Framework is a platform for building software. It is not a language itself. The primary (but not only) languages developers use to build software on the .NET Framework are C# and Visual Basic. The main tool used by .NET developers is Visual Studio, known as an Integrated Development Environment (IDE).
I'm glad we got that straightened out. I feel much better now.
Posted by Keith Ward on 04/12/2013 at 1:15 PM0 comments
Visual Studio 2012 Update 2 is out of beta and officially available. Among the biggest upgrades, according to a blog entry by corporate V.P./Developer Division S. Somasegar, are improvements to Agile planning, Windows Store development and line-of-business development.
Most of the Agile updates center around Team Foundation Server (TFS), Microsoft's chief collaborative tool. They include work item tags (more on that here), a Connect dialog box in Team Explorer to locate different team project connections and projects, and more customization of backlog items through the Kanban board.
Unit testing, especially for Windows Store apps, also gets enhancements. Probably the key change here is the addition of Web access to the Test Case Management tools in TFS. Developers can now author, edit, execute test cases and file bugs through the Web portal.
Visual Studio 2012 itself also gets some big improvements, including one that will likely appeal to the many developers still annoyed by Microsoft's decision to take out a lot of color in the IDE: a blue theme, to add to the current light and dark themes. In addition, the Blend UI design tool adds support for Silverlight, Windows Presentation Foundation (WPF) and Sketchflow. Efficiency improvements to IntelliTrace, XAML designer and debugging are also included.
The frequent release cycle of community technology previews (CTPs) of Update 2 is in line with Microsoft's increasingly Agile methods. It has pumped out one CTP per month in 2013, with January, February and March editions. Visual Studio 2012 Update 1 was released last November.
The update, which Microsoft has labeled VS2012.2, is available for download here. It doesn't require a restart to install, and is supported on both 32-bit and 64-bit processors.
Posted by Keith Ward on 04/05/2013 at 1:15 PM0 comments
It appears that Microsoft's upcoming Build conference in San Francisco is sold out -- again. But this time for real. This follows on the heels of a "technical error" on the Build Web site yesterday that mistakenly told developers that registration had filled up in about three hours.
Last year, Build sold out in about an hour. Many developers were stunned, and there was more than a little unhappiness that every slot was taken before some folks got back from lunch. Part of the reason is that the 2012 event was held at Microsoft headquarters in Redmond, Wash. This year, the event's being held at San Francisco's Moscone Center, a much, much larger venue.
Build will take place June 26 - June 28. Microsoft, as is typical for this event, has released very few details. However, I was fortunate enough to land an exclusive interview at our Visual Studio Live! conference last week with Steven Guggenheimer, who made the announcement on a blog. He was giving a keynote the same day, and agreed to speak with me on-camera.
Guggenheimer said Microsoft was "excited to have a space where more people could join us." He didn't go into details at that time, but did add that there might be "updates across a range of our platforms," and it could involve Windows products and Visual Studio. (Guggenheimer didn't say there would be definite announcements around those products, only that there could be.)
Certainly, speculation will revolve around what Microsoft will announce about "Windows Blue", the codename for the next version of Windows 8. Earlier today, Mary Jo Foley, who covers Microsoft and is a columnist for Redmond magazine, quoted a source as saying that Windows Blue will be officially named Windows 8.1 when released later this summer.
Given how quickly previous Build shows have sold out, it would be wise for developers to sign up as soon as possible. As Guggenheimer told me last week, "Even with Moscone, I'm pretty sure we'll sell out pretty quick."
The Build Web site is here.
Posted by Keith Ward on 04/04/2013 at 1:15 PM0 comments
Microsoft released an important new Kinect for Windows SDK today. Bob Heddle, director of Kinect for Windows, called it "our most significant update to the SDK since we released the first version a little over a year ago" in a blog posting.
SDK 1.7 is coming out at the same time as a developer toolkit and Human Interface Guidelines (HIG) for adding Kinect functionality to applications.
Heddle points to Kinect Interactions as the crown jewel of the SDK. The idea behind it, he writes, is to "save businesses and developers hours of development time while making it easier for them to create gesture-based experiences that are highly consistent from application to application and utterly simple for end users." The example shown on the blog is a woman at an optometrist's store, who's trying on various virtual pairs of glasses (sunglasses, to be specific).
Kinect Fusion is also part of the SDK, which creates 3-D models from multiple snapshots from the Kinect for Windows sensor. The sensor allows Kinect to build a virtual world around a person, object or environment.
Other upgrades in both the SDK and tools include Windows 8 support, Visual Studio 2012 and .NET Framework 4.5 support, a face tracking SDK, accelerometer data APIs, color camera setting APIs and an infrared emitter control API.
Microsoft has put Kinect for Windows code samples on the CodePlex repository. It's the first time Kinect has been open-sourced, Heddle says. It also demonstrates Microsoft's continuing efforts to make more of its software available, following on the heels of the late-January announcement that Visual Studio and Team Foundation Service would support Git source control.
The SDK and toolkit are available for download here.
Posted by Keith Ward on 03/18/2013 at 1:15 PM0 comments
Microsoft has fixed a bug on its Kanban board that was introduced with its last Visual Studio 2012 Update 2 revision, which came out March 4.
According to this Team Foundation Server (TFS) blog posting, the bug accidentally re-ordered the first Kanban board column by closed date instead of stack rank. Since closed date is empty in that column, it randomized the items in the column. Ouch.
I assume that because of vociferous developer feedback, Microsoft decided to send out an immediate fix, rather than wait for the final release, which should be coming out very soon. With the rapid release schedule of these updates to Update 2, it's a sign of how significant this issue was that Redmond didn't wait a bit for the official version of Update 2 to drop.
You can get the latest version of Update 2 (CTP 4) here.
Posted by Keith Ward on 03/15/2013 at 1:15 PM0 comments
Microsoft has made its Unified Communications Web API (UCWA) public, allowing Web developers to add capabilities to its Lync-based services. Toward that end, Microsoft has created a specific Lync Web Developer site, to educate devs about the API.
"UCWA is a REST API that exposes Lync Server 2013 Instant Messaging and Presence capabilities," says documentation on the developer site. UCWA is free, but to use it, you must have Lync on-premises.
Microsoft envisions UC developers embedding Instant Messaging, chat, presence and other functionality into line-of-business (LOB) apps. Here's a partial listing of what can be done, taken from the site:
- Anonymous Web Chat
- Support audio conferencing
- Light up IM & Presence in your Line-Of-Business app, including Windows 8, iPad, and others
- Inline Instant Messaging into your application (Contextual Communications)
- Search for Skype and/or business contacts
Posted by Keith Ward on 03/14/2013 at 1:15 PM0 comments
Microsoft is pulling out all the stops to get apps into its Windows Store and Windows Phone Store -- to the point of paying you to do it.
This blog by Jennifer Marsman spells out the details. Basically, you create an app and publish it to either app store, and Microsoft will pay you $100. The cash cutoff per dev is $2,000, so when you've written 20 apps, the money stops. Note that you can't create 20 apps for one store or the other -- you'd have to create 10 for each to get the full amount (it's limited to 10 apps per publisher ID; if you publish to both stores, you have two IDs, hence the $2,000).
The promotion started March 8 and runs through June 30, or until 10,000 apps are published under this promotion. One more thing: you can't publish the same basic app 10 times, changing a button or other minor tweak and republishing it as a different app. Marsman says the "each app you submit to a single platform must be substantially unique and different."
Now, is it worth your time to create Windows 8 and Windows Phone 8 apps for a hundred bucks? That's a question only you can answer. On the other hand, if you've wanted to try writing software for that platform, this at least assures you'd get some remuneration for your efforts.
This deal is reminiscent of BlackBerry's recent attempts to woo developers by guaranteeing they'd make at least $10,000 per app (if the app made at least $1,000 in its first year out, but less than $10,000). It's hard to convince devs to build apps for non-Android or -iOS devices, seeing as how the return is generally a lot lower on those platforms. The upside is that there's also a lot less competition in those app markets.
Posted by Keith Ward on 03/12/2013 at 1:15 PM6 comments
The Spark never caught fire, and now, it's been crushed out of existence.
That may be a little overly dramatic, but it's essentially what happened to Microsoft's WebsiteSpark program. As Mary Jo Foley reported earlier, Redmond notified developers that the Spark is being quenched, as of today.
"The WebsiteSpark program will no longer be accepting new membership applications," is how the company put it on the Spark site. The good news is that membership benefits, like the Expression design tool and Visual Studio Professional, aren't being immediately phased out. They'll be available for another year, through March 2014.
WebsiteSpark was designed to make it easier to design and build Web sites. It seems like it never really caught on with the development crowd, leading to its demise.
Trying to soften the blow, Microsoft says on the site that it "has created new offers at no cost to help Web Pros like you continue to create rich interactive web applications." Not everyone is on board with that sentiment, as various Twitter comments demonstrate.
AJ Smith, @audibledesigns, tweets that he's "Moving a few domains over @WindowsAzure when I find out my #WebsiteSpark membership is getting axed. 2 small for @bizspark".
Iain Magee, @iainmagee, doesn't like the alternatives. "Real shame @WebsiteSpark program getting killed off especially as@bizspark entry requirements are so inflexible."
John Obeto II, @johnobeto, said that it's not the positive step Microsoft has portrayed it as: "email is worded as if changes are for our benefit when they are clearly not," he tweeted.
Posted by Keith Ward on 03/12/2013 at 1:15 PM0 comments