Friday, August 23, 2013

[Limited time offer, open unit Sept 6th!] You know you can use TFS 2013 in production, right? But pre-release stuff is scary? How about if there were some Microsoft Experts on standby to help you upgrade? Sign up now for the Team Foundation Server 2013 Upgrade Weekend, September 13-15

Team Foundation Server 2013 Upgrade Weekend

Are you excited to upgrade to Team Foundation Server 2013? Are you comfortable running pre-release software in production? If so, you might want to consider scheduling your upgrade for the weekend of September 13-15. During this weekend, Microsoft experts will be standing by to help support you in the event that you have questions or something goes wrong. If you are interested in taking advantage of Upgrade Weekend, please complete this brief survey. This information will be used by Microsoft to determine our technical support staffing needs. This will also allow us to send you additional information before Upgrade Weekend to help you prepare for a successful upgrade. This survey will remain open until September 6. Please contact VSEAP[at]Microsoft[youknow]com if you have any questions about this offer.

image

If you're thinking about upgrading to TFS2013, this is an opportunity you really should not miss. How often do you get a chance to have someone standing by just to help you, and free at that? You provide six fields of info, a TFS Server to upgrade and they provide the stand by experts if you need help or support.

Wednesday, August 21, 2013

Taking the Bus to the next stop... Why you, Dev and IT, should be looking at the Windows Azure Pack.

In the Cloud - What’s New in 2012 R2: Enabling Modern Apps with the Windows Azure Pack

Don’t let the title fool you – this post is critically important for Developers and IT pros.

The reason I call out this warning up front is that often, when I’m speaking at conferences around the world, as soon as I start to discuss the developer perspective and developer tools, many IT Pros in the room starts playing Angry Birds while they wait for the developer section to be over.

Why is it so important for IT Pros to understand how modern applications are built? The answer is simple: IT Pros are the ones who build and operate the infrastructure that hosts these applications, and, the more you know about how these applications are built, the better you will understand their platform requirements.

That’s the tactical reason. There is also a strategic reason.

If your organization is not already in the process of defining it’s cloud strategy – it soon will be. You need to be a contributor and leader in these conversations. By mastering today’s topics, you can become a part of the conversation and define the long-term solution, rather than someone who is simply reacting to decisions they were not a part of making.

The future of the IT Pro role will require you to know how applications are built for the cloud, as well as the cloud infrastructures where these apps operate, is something every IT Pro needs in order to be a voice in the meetings that will define an organization’s cloud strategy. IT pros are also going to need to know how their team fits in this cloud-centric model, as well as how to proactively drive these discussions.

These R2 posts will get you what you need, and this “Enable Modern Business Apps” pillar will be particularly helpful.

Throughout the posts in this series we have spoken about the importance of consistency across private, hosted and public clouds, and we’ve examined how Microsoft is unique in its vision and execution of delivering consistent clouds. The Windows Azure Pack is a wonderful example of Microsoft innovating in the public cloud and then bringing the benefits of that innovation to your datacenter.

The Windows Azure Pack is – literally speaking – a set of capabilities that we have battle-hardened and proven in our public cloud. These capabilities are now made available for you to enhance your cloud and ensure that “consistency across clouds” that we believe is so important.

A major benefit of the Windows Azure Pack is the ability to build an application once and then deploy and operate it in any Microsoft Cloud – private, hosted or public.

This kind of flexibility means that you can build an application, initially deploy it in your private cloud, and then, if you want to move that app to a Service Provider or Azure in the future, you can do it without having to modify the application. Making tasks like this simple is a major part of our promise around cloud consistency, and it is something only Microsoft (not VMware, not AWS) can deliver.

This ability to migrate an app between these environments means that your apps and your data are never locked in to a single cloud. This allows you to easily adjust as your organization’s needs, regulatory requirements, or any operational conditions change.

A big part of this consistency and connection is the Windows Azure Service Bus which will be a major focus of today’s post.

The Windows Azure Service Bus has been a big part of Windows Azure since 2010. I don’t want to overstate this, but Service Bus has been battle-hardened in Azure for more than 3 years, and now we are delivering it to you to run in your datacenters. To give you a quick idea of how critical Service Bus is for Microsoft, consider this: Service Bus is used in all the billing for Windows Azure, and it is responsible for gathering and posting all the scoring and achievement data to the Halo 4 leaderboards (now that is really, really important – just ask my sons!). It goes without saying that the people in charge of Azure billing and the hardcore gamers are not going to tolerate any latency or downtime getting to their data.

With today’s topic, take the time to really appreciate the app development and app platform functionality in this R2 wave. I think you’ll be really excited about how you can plug into this process and lead your organization.

This post, written by Bradley Bartz, a Principal Program Manager from Windows Azure, will get deep into these new features and the amazing scenarios that the Windows Azure Pack and Windows Azure Service Bus enable. As always in this 2012 R2 series, check out the “Next Steps” at the bottom of this for links to additional information about the topics covered in this post.\

...

We’ve listened closely to our customers and focused on improving the following 3 core scenarios with the Service Bus 1.1 for Windows Server and the Windows Azure Pack:

  1. Application Messaging Patterns with Service Bus
    With Service Bus we support basic as well as advanced messaging patterns for use in modern applications. With this release we’ve also added new messaging capabilities, additional protocols, and simplified APIs to enable developers to write better applications faster.
  2. Manage Messaging entities across clouds
    Whether you’re developing for the public cloud, private cloud, or a hosted cloud (with your service provider), developers will be able to write applications once and then use it anywhere within these clouds – without needing to recompile. This can be done by simply changing an entry in the configuration file.
  3. Offering Alternatives with Service Bus
    Whether you are an Independent Software Vendor developing software and services for others, an enterprise which deploys home-grown applications, or a developer looking for an easy to deploy messaging component, you can use Service Bus in your topology. With this release we’ve improved the hosting capabilities for enterprises and service providers enabling new hosting topologies.

imageimageimageimage

Don't usually see this kind of dev depth on TechNet. And also since it's on one o f my favorite topic's, Private Clouds, couldn't resist... If you're build LOB app's, take a peek at this article. It's take the bus to the next stop... (title!)

Related Past Post XRef:
TechEd NA 2013 Day 1 Announcement Round-up - VS 2013, TFS 2013, InRelease, SQL 2014, Server 2012 R2, BizTalk Services, Azure-in-a-box and even more Azure...

Trie in C# - Example of prefix string search and substring search to implement auto-completion/Intelli-sense like features

George Mamaladze - .NET Data Structures for Prefix String Search and Substring (Infix) Search to Implement Auto-completion and Intelli-sense

Background

Typing a complete word in a search box is out. So if you are implementing a modern user friendly peace of software you will very probably need something like this:

image

I have seen many questions about an efficient way of implementing a (prefix or infix) search over a key value pairs where keys are strings (for instance see: http://stackoverflow.com/questions/10472881/search-liststring-for-string-startswith).

So it depends:

* If your data source is a SQL or some other indexed database holding your data it makes sense to utilize it’s search capabilities and issue a query to find matching records.

* If you have a small amount of data, a linear scan will be probably the most efficient.

* If you are searching in a large set of key value records you may need a special data structure to perform your search efficiently efficiently.

Trie

There is a family of data structures referred as Trie. In this post I want to focus on a c# implementations and usage of Trie data structures. If you want to find out more about the theory behind the data structure itself Google will be probably your best friend. In fact most of popular books on data structures and algorithms describe tries (see.: Advanced Data Structures by Peter Brass)

...

imageimage

I came across this via George's CodePlex project today, https://trienet.codeplex.com, and thought it pretty darn interesting and cool. Now to see how I can use this in my code. I've cobbled together some much simpler and lamer, so I'd love to see if this will let me provide something much more polished.

Avoid virtual stagnation - "INFOGRAPHIC: Top virtualization skills to boost your career"

pluralsight - INFOGRAPHIC: Top virtualization skills to boost your career

Are you a dev pro who dabbles in IT? If so and you’re not building up your virtualization skills, what’s holding you back? It’s possible you’re not sure where to begin your training, and if that’s the case, we’re here to help.

If you haven’t heard, we recently acquired TrainSignal, the leading provider of IT training online. Over the next few months, we’re working to get TrainSignal’s entire library in our platform, so you’ll have access to more training at the same low price, including the virtualization courses below.

Save this infographic for when you’re ready to start training!

SNAGHTML20671cec

imageSNAGHTML20695682

The best part, IMHO, is the roadmap at the bottom...

Free eBook #2 for the day: Dependency Injection with Unity

Microsoft Downloads - Book Download: Dependency Injection with Unity

Unity is a dependency injection container. It is full-featured, with support for instance and type interception and custom extensions. Unity 3 also supports Windows Store apps.

Version: 1

Date Published: 8/20/2013

DependencyInjectionWithUnity.epub, 1.0 MB

DependencyInjectionWithUnity.pdf, 3.3 MB

Authors: Dominic Betts, Grigori Melnik, Fernando Simonazzi, Mani Subramanian.
Foreword by Chris Tavares.

Over the years software systems have evolutionarily become more and more complex. One of the techniques for dealing with this inherent complexity of software systems is dependency injection – a design pattern that allows the removal of hard-coded dependencies and makes it possible to assemble a service by changing dependencies easily, whether at run-time or compile-time. It promotes code reuse and loosely-coupled design which leads to more easily maintainable and flexible code.

The guide you are holding in your hands is a primer on using dependency injection with Unity – a lightweight extensible dependency injection container built by the Microsoft patterns & practices team. It covers various styles of dependency injection and also additional capabilities of Unity container, such as object lifetime management, interception, and registration by convention. It also discusses the advanced topics of enhancing Unity with your custom extensions.

The guide contains plenty of trade-off discussions and tips and tricks for managing your application cross-cutting concerns and making the most out of both dependency injection and Unity. These are accompanied by a real world example that will help you master the techniques. Keep in mind that Unity can be used in a wide range of application types such as desktop, web, services, and cloud. We encourage you to experiment with the sample code and think beyond the scenarios discussed in the guide.

In addition, the guide includes the Tales from the Trenches – a collection of case studies that offer a different perspective through the eyes of developers working on the real world projects and sharing their experiences. These chapters make clear the range of scenarios in which you can use Unity, and also highlight its ease of use and flexibility.

Whether you are a seasoned developer or just starting your development journey, we hope this guide will be worth your time studying it. We hope you discover that Unity container adds significant benefits to your applications and helps you to achieve the goals of maintainability, testability, flexibility, and extensibility in your own projects. Happy coding!

While I use Unity, I'm not really very good with it (and dare I say it's mostly "bing-code"?). I'm looking at this book hoping it will help me become one with Unity.. :P

 

Related Past Post XRef:
Enterprise Library 6 and Unity 3 are out today... (Semantic Logging and Transient Fault Handling Application Block added, other Blocks updated)

Free eBook #1 of the day: Windows Azure SQL Reporting Succinctly

Syncfusion - Windows Azure SQL Reporting Succinctly

image

Windows Azure SQL Reporting provides a flexible platform for managing and viewing reports. Its cloud-based architecture means that its services are instantly scalable for any number of users—adding and removing servers through Windows Azure is significantly simpler than managing on-site servers—and maintenance costs are kept to a minimum. With Windows Azure SQL Reporting Succinctly by Stacia Misner, you'll learn how to set up a SQL Database server, migrate your existing data to the cloud, design report items, and deploy complete reports to the server. Instruction is also provided for managing user roles and creating reusable report parts.

Table of Contents

  1. Introduction to SQL Reporting
  2. Getting Started
  3. Report Development
  4. Report Management
  5. Report Parts
  6. Security
  7. Report Access

NOTE: They ask for your name, email address and phone. Based on past experience, have a care with what information you provide (which is not validated or really used for the download) [cough... possible spam alert... cough] But remember, free isn't free...

 

Related Past Post XRef:
Need some help up the WPF learning curve? "WPF Succinctly" from Syncfusion is now available (and free :)
TypeScript Succinctly - Free [Name/email-ware] eBook
Getting sharp with F# with the free "F# Succinctly" eBook [reg-ware]
Syncfusion helps shed a little succinct light on LightSwitch with "LightSwitch Succinctly" (Reg-ware)
"JavaScript Succinctly" - Another free (reg-ware) eBook from Syncfusion
Get into sync with HTTP with the new free (reg-ware) Syncfusion Succinctly eBook, "HTTP Succinctly"
Spelunk the technical details of the PDF format with "PDF Succinctly" from Syncfusion (Free/reg-ware PDF/Mobi ebook)
"Git Succinctly" Free/reg-ware PDF/Mobi ebook)
jQuery Succinctly - Free eBook (reg-ware, PDF and/or Mobi)

Monday, August 19, 2013

Paul Thurrott shares his latest Windows Phone 8 book online (and free) (651 pages, all about using WP8 and many of its app's...)

Paul Thurrott's Windows Phone 8 - Windows Phone Book - Version 1.02

I've embedded the SkyDrive version of Version 1.02 above, IFrame style. If it doesn't come through, click through and you can get it via his Skydrive/DropBox/Google Drive links.

Here's a snap of it in SkyDrive (which seems to be a pretty darn nice web representation of the PDF)

image

Here's some snips from the book (page 3)

Who this book is for

Paul Thurrott’s Windows Phone 8 was written for current and future users of Windows Phone 8. It was written for real people—users—not technical experts, or those who need to manage mobile devices in a corporate environment.

The book makes no assumptions about your experience with prior versions of Windows Phone, but by this point in time, I do assume that you have at least some experience using a smart phone in general.

If you are already at least passingly familiar with Windows Phone, you can use the book as a reference and pick and choose from the various topics. Otherwise, you should read the first two chapters in sequence and then branch out from there. There’s no need to read the book in sequence, though you may of course do so if you wish.

For the few times in which you need to connect your handset to a computer, I assume that the computer will be a Windows-based PC, preferably using Windows 8 or RT. Those with older versions of Windows should be able to follow along. (Those with Macs are on their own. Just as in real life.)

This book is…

Free. Paul Thurrott’s Windows Phone 8 is free, my gift to the Windows Phone community. You should never pay for this book, nor should you acquire it from any source other than its author and copyright holder, Paul Thurrott. Updated versions of this book are available from Windows Phone Book and Paul Thurrott’s SuperSite for Windows. In the future, versions for Kindle and various e-book platforms will be made available as well.

Not complete. This book is comprehensive but it is never complete. That is, I will continue updating the book to address ongoing changes to the platform and to add more content. I will keep providing these free updates to this free book for as long as Microsoft and Nokia, its primary platform partner, provide updates to Windows Phone 8.

Original. Paul Thurrott’s Windows Phone 8 is an original work, written solely by its author.

Not perfect. If you find any mistakes or omissions, or have suggestions for future versions of the book, or ideas for future books, please email me: This book should be as useful as it is up-to-date.

Specifically about Windows Phone 8. When Microsoft finally moves forward with a new version of the operating system (Windows Phone 8.1, 9, whatever), I’ll provide new editions of the book (Paul Thurrott’s Windows Phone 8.1 or whatever). These future editions will not be free, but will be priced as low as possible. Think less than a dollar. 

Fuzzy Lookup Add-In for Excel (Insert lame "Fuzzy, wuzzy was an Excel..." snip here)

Microsoft Downloads - Fuzzy Lookup Add-In for Excel

The Fuzzy Lookup Add-In for Excel performs fuzzy matching of textual data in Excel.

Version: 1.0.0.0

Date Published: 8/16/2013

FuzzyLookupAddInForExcel.zip, 1.5 MB

The Fuzzy Lookup Add-In for Excel was developed by Microsoft Research and performs fuzzy matching of textual data in Microsoft Excel. It can be used to identify fuzzy duplicate rows within a single table or to fuzzy join similar rows between two different tables. The matching is robust to a wide variety of errors including spelling mistakes, abbreviations, synonyms and added/missing data. For instance, it might detect that the rows “Mr. Andrew Hill”, “Hill, Andrew R.” and “Andy Hill” all refer to the same underlying entity, returning a similarity score along with each match. While the default configuration works well for a wide variety of textual data, such as product names or customer addresses, the matching may also be customized for specific domains or languages.

Supported Operating System

Windows 7, Windows Server 2008, Windows Vista

  • Preinstalled Software (Prerequisites): Microsoft Excel 2010
  • ...

Sounds like something I might be able to use... Now it would be even better if this were a .Net assembly that I could use. Will have to look at this and see what my programming options are...

Oh Concierge, can you NuGet me [a related package recommendation?]... Hello NuGet Concierge...

NuGet blog - Introducing NuGet Concierge

Twelve weeks ago, Microsoft’s Azure Applications Platform & Tools team welcomed three 2nd-year college students, Jaspreet Bagga, Jeremiah Jekich, and Melissa McNeill, and gave them an opportunity to contribute to NuGet.

Package Discovery

Discovering NuGet packages can be a daunting process. The best way to do so is either via word of mouth or online search. However, your friends aren’t always available when you’re looking for a new package at 3:00 in the morning. You could try to search online, but you’d need to spend unnecessary amounts of time sifting through the results before finding a package that may be helpful. We recognize that this time is better spent actually developing software. We wanted to create an accessible service to deliver package recommendations using real world data about how developers use packages.

NuGet Concierge

Thus was born NuGet Concierge, a package recommendation service that recommends packages to developers based on the packages currently being used in their project. We envisioned developers being able to upload their project’s packages.config file to the NuGet Concierge website, which would then present them with a list of packages they may find useful. Something along the lines of “Most projects that use Package A also use Package B.”

So, at the beginning of the summer, we put out a call to the community via Twitter, asking for developers to upload their projects’ packages.config files to help seed our newly conceived recommendation service. We asked, and you delivered! Armed with a collection of over 350 packages.config files, the NuGet Concierge project was brought to life.

Implementation

The first step was to translate the collected .config files into a structure that would allow us to analyze the relationships between packages. How often are individual packages used? But, more importantly, how are packages used together?

So, we took the community’s .config files and parsed them, using them to construct a graph. In doing so, we tracked the number of times a package was used, a value we referred to as the package’s “popularity.” We also tracked how many times two packages were used together, which we referred to as the packages’ “pairing frequency.”

Determining Relationships

Let’s say we have two packages, EntityFramework and jQuery...

...

NuGet Concierge’s Potential

NuGet Concierge is just a conceptual prototype at the moment. But if the concept proves to be valuable, we imagine NuGet Concierge as a fully integrated part of NuGet, having a presence in the Gallery, Visual Studio’s Manage NuGet Packages dialog, and the Package Manager Console. The greatest part of NuGet Concierge is the data powering it. The ability to reference real data about how packages are actively used together opens up a world of opportunities that can potentially help NuGet better serve developers.

Until then, please feel free to try out NuGet Concierge at http://concierge.nuget.org and let us know if you like the concept and/or the recommendations. You can also see the code for NuGet Concierge at http://github.com/NuGet/Concierge.

image

Interesting... But more, I love how it's OSS.

North by Northwest [Cadence] - Up coming casts from Northwest Cadence

Northwest Cadence - Upcoming Events and Training Courses

Northwest Cadence hosts regularly-scheduled events designed with our clients and community in mind. Come ready to ask hard questions, gain new knowledge, and be part of the social occasion.

What’s more fun than talking about tough technical topics, showing amazingly cool demos, and sharing insiders tips learned through years in the trenches?

...

  • Aug. 27. 13 | 9:00AM PT | Webcast | Register | Agile Development using Visual Studio ALM
  • Sep. 3. 13 | 9:00AM PT | Webcast | Register | Deliver Early, Often, and Exceptionally with Visual Studio Premium
  • Sep. 10. 13 | 9:00AM PT | Webcast | Register | Automating your Software Delivery Pipeline
  • Sep. 11. 13 | 9:00AM PT | Webcast | Register | Enterprise Dependency Management with NuGet and Chocolatey
  • Sep. 17. 13 | 9:00AM PT | Webcast | Register | Introducing the New Git Integration with TFS 2012
  • Sep. 18. 13 | 9:00AM PT | Webcast | Register | Continuous Delivery with Team Build and Octopus Deploy
  • Sep. 24. 13 | 9:00AM PT | Webcast | Register | Automating your Software Delivery Pipeline
  • Sep. 25. 13 | 9:00AM PT | Webcast | Register | Enterprise Dependency Management with NuGet and Chocolatey

...

Bunch of free webcasts from the boys and girls at Northwest Cadence.

What's with the dupe's? That's a feature, not a bug... It's a great chance to interact with the presenters for the given session if you missed the first one.

Get the Getty... Getty Trust opens 4600 free (and original resolution) images in its Open Content Program...

groovy post - Getty Trust Launches 4600+ Free Images in Open Content Program

Are you a fan of classic art? John Paul Getty was also. And this week the Getty Trust launched a new Open Content program that is making available high-res digital reproductions of all classical artwork which the Getty Trust holds the rights to including works from the J. Paul Getty Museum collections, Getty Research Institute and the Getty Conservation Institute. The collections are some of the best in the world including featured pieces by Monet, da Vinci, van Gogh, and Rembrandt. All free of charge to anyone on the planet!

Click here to view all 4,689 entries in the Open Content program.

The best part of this announcement is that the full original resolutions of these images are already up and publicly available to download, completely free of charge. This brings some of the file sizes end up quite large, some over 100 MB in size. The full resolution doesn’t have a link on the gallery page however, to access it you’ll have to visit the individual record (page) for each piece of art.

...

The J. Paul Getty Trust Home - Open Content Program

The Getty makes available, without charge, all available digital images to which the Getty holds the rights or that are in the public domain to be used for any purpose. No permission is required.
Please see the related press release and Getty president and CEO Jim Cuno's announcement on The Getty Iris for additional information.

Why Open Content?
The Getty adopted the Open Content Program because we recognized the need to share images of works of art in an unrestricted manner, freely, so that all those who create or appreciate art—scholars, artists, art lovers, and entrepreneurs—will have greater access to high-quality digital images for their studies and projects. Art inspires us, and imagination and creativity lead to artistic expressions that expand knowledge and understanding. The Getty sincerely hopes that people will use the open content images for a wide range of activities and that they will share the fruits of their labors with others.

Access to Open Content Images
Initially, the images available through the Open Content Program are of works in the J. Paul Getty Museum's collections. Over time, images from the Getty Research Institute and the Getty Conservation Institute will be added. Museum images can be found on the Museum's Collection webpages or on the Getty Search Gateway. Those available as open content images are identified with a "Download" link. Images provided are JPEG files at a minimum of 300 DPI. See the Guidelines for Successful Printing (PDF) for more information on file format.
If you need new photography, resizing, or color correction, you can request those services by Contacting Museum Rights & Reproductions. A fee (PDF) will be charged for this service.

Public Domain and Rights
Open content images are digital surrogates of works of art that are in the Getty's collections and in the public domain, for which we hold all rights, or for which we are not aware of any rights restrictions. Rights restrictions are based on copyright, trademark, privacy and publicity laws, and contractual obligations. If an image you want is not designated as an open content image, it is because one or more of the above identified legal rights restricts our ability to make that content available under this program. While the Getty reviews the metadata about each picture before making it available as an open content image, there may be some underlying rights that were unknown to us. For that reason, we strongly recommend that users consider the possibility that rights of third parties may be involved, and permission for those rights may need to be obtained by the user for the proposed use.

Fair Use
Open content images can be used for any purpose without first seeking permission from the Getty. Images of many other works in the collections are also on our website in varying formats. The Getty supports fair use of images when the applicable legal criteria are met. For more information on use of digital images of works in the Getty's collections, please refer to the Getty's Terms of Use.

...

Open Content Search

image

Now I didn't see an API, but still think an app or Getty Paper of the Day or thing would be very possible... :)

Free Payment icon's for your online web purchasing...

Six Revisions - Free Online Payment Icon Set (PSD and PNG)

This free set of icons contains the logos of top online payment solutions and credit cards like PayPal, Google Wallet, Visa, and MasterCard. This icon set contains 12 icons and is perfect for use in e-commerce websites. We have also included the PSD file in case you want to make changes to the icons.

This free icon set is brought to you by Responsive, a design and development studio in Bucharest, Romania.

image

If you've been looking for a free set of these, well here you go! (and if not, well they might come in handy in the future...)