Skip to content

Greg's Cool [Insert Clever Name] of the Day - Greg Duncan
Syndicate content This Feed Powered by FeedBurner.com
My technical, professional and sometimes personal blog.
Updated: 8 hours 52 min ago

Stop copy-n-pasting your pages... OneNote page templates are click-click easy...

9 hours 15 min ago

Tim Murphy's .NET Software Architecture Blog - Organizing Your Work With OneNote Page Templates

"If you have seen the Windows Phone commercial where the father is in the grocery store with the shopping list in OneNote you have gotten you first taste of the flexibility that can be had with OneNote. I like most consultants have a lot of fires going and once and I am finding that the templates in OneNote are helping me to get a handle on the different projects and tasks I need to track.

I started using OneNote to do simply what its name suggests: take and organize notes. Lately though I am finding ways that it can help to centralize things that I had been using multiple applications to accomplish. Having them all in one place, as with most things makes it easier to not miss something.

You may find using the tasks feature of Outlook works well for you, but I found that I was in and out of my email so fast that I ignored the tasks. As simple To Do List template in OneNote seems to be the solution for me since I spend so much time documenting projects. As an alternative you can use the Prioritized To Do List shown below or the Project To Do List which gives you a list per project.

...

image..."

I've become a pretty heavy OneNote user in the last year, but being a dev dude, I just started using it, figuring it out as I went along. And while this journey of discovery can be fun, it does lead to some holes, to missing some important features.

For example, Page Templates.

Until reading this post, OneNote Page Templates isn't something I thought about at all. Sure I use templates all the time in Word, PowerPoint, etc, but I always considered template to be a document level thing. So I knew there were OneNote Notebook templates (which you'd use once), but didn't even think there might be Page templates (which you can use over and over)... sigh

Using Page Templates isn't hard once you know the trick (which took me a little bit to find).

Funny enough, creating a new page based on a template or saving the current page as a template is done via New Page.

image

image

Select a template and pow, done.

imageimageimage

To save the current page as a template, it's just as easy. Have the page open that you want to save and then;

image

You'll name the template and again, pow, you're done. Your new template will now be available in your "My Templates"

Are there more OneNote Page templates available online? You, bet.

OneNote 2010 Page Templates

image

Yes, these are all OneNote Page templates (I know, I thought, "Charts? Letters? Invites?" But, yep, these are all OneNote Page Templates...)

Let's look at one, the Home Lists;

image

In short, if you're a OneNoter and you're not using Page Templates, you're missing out...

Categories: Blogs

From C# to C++, the short guide that isn't (all that short)

9 hours 42 min ago

Bob Taco Industries - C# to C++ – A Somewhat Short Guide

"This is a big post – over 12200 words – and so I’ve decided to make it available as a PDF download, which you can get here:

http://www.bobtacoindustries.com/Content/Devs/CsToCpp-ASomewhatShortGuide.pdf

It has bookmarks for easier navigation along with a Table of Contents and page numbers.

I expect that I will revise this from time to time and welcome any suggestions, feedback, and (especially) corrections. If so I will update the Last updated field at the top and will create a revised PDF as well. I hope this proves useful.

For those interested, the sessions from the GoingNative 2012 conference will be streaming live today (Feb 2) and tomorrow on Channel 9: http://channel9.msdn.com/posts/Announcing-the-GoingNative-2012-Full-Schedule . Sessions will also be available for download shortly after the show ends (I’d guess within 24-48 hours, but that’s just a guess). It looks fascinating so definitely check it out! (I know I will be watching it.)

Introduction

This is a somewhat short guide to the important things to know if you are a C# programmer and find yourself needing or wanting to work in C++, for example to create Metro style games for Windows 8 using C++ and DirectX. In fact, this guide is written with that goal in mind so it's not necessarily a universal guide for all platforms and purposes.

This guide is also going to be fairly utilitarian and pithy, with code standing in place of elaborate commentary. I'm expecting that you know how to program already and have a good understanding of C# (or of some sort of imperative, object-oriented language at any rate).

I'm also assuming you are fairly handy with navigating the MSDN library. Its Bing search box is really awesome; if you haven't used it before, do give it a try. I like how the search is tailored to not just MSDN but also other great programmer sites like the Stack Exchange sites, CodeProject, CodePlex, etc.

I'm sprinkling a fair bit of code throughout as I said above. This is both to show you a (pseudo) real example of something and also to help illustrate words with code so that each will hopefully help to clarify the other.

..."

When he said "Somewhat short" he wasn't kidding. The PDF is 38 pages.

image

Categories: Blogs

Basic Assembly Language Programming (yes, that Assembly Language)

9 hours 50 min ago

SecurityXploded Blog - Assembly Programming Basics Presentation & Updates

"Here comes the update from our last local security meet (sx/null/g4h/owasp) where Amit Malik & Swapnil delivered spectacular session on ‘Assembly Programming Basics’. This is part of our ongoing FREE ‘Reversing & Malware Analysis Training’ which has been started since our last meet.

Duo delivered superb one hour session to jam packed 40+ folks who listened keenly even though it was mid lunch hour. This Session started with talking about assembly basics, registers, flags, instructions, calling conventions, stack basics, MASM programming etc along with live demonstration.

Presentation of the session is already online on our Security Presentations page. For those who could not attend this offline session, it also includes demonstration video (http://vimeo.com/36198403). Video is not visible on live presentation (issues with slideshare). So you need to download it offline to view the embedded video in presentation.

In addition to this, we also recommend reading our ‘Assembly Programming: A Beginners Guide’ which will help you to quickly started with ASM Programming.

..."

I don't see many Assembly Language posts/guides/presentations anymore these days...

Categories: Blogs

If Chuck Norris were a programmer, here's what his resume preamble might look like...

Sat, 02/04/2012 - 17:44

Project 31-A - Updating My Resume

"The new preamble to my resume:

I piss excellence. Bill Gates retired from Microsoft only when I promised to work there. I don’t version my code because it only needs a single iteration. Intel optimizes their hardware to match my compiler – not the other way around. My code comments have won a Pulitzer Prize. My current code style will be consider a best practice in two years—at that time I will think it is obsolete. The programing languages that I don’t know I haven’t invented yet. I don’t submit to source control – it submits to me. Since I have never introduced a bug to the code base, my hiring can put the testing department out of work. I don’t require an office chair -- I levitate in front of my desk. ...

image..."

This made me laugh... As a hiring manager, this might get a resume a second look and the person in for a visit (as long as it WASN'T copy and pasted from the above post... only if their content was original. :)

Categories: Blogs

Making your app a better listener... Using multiple grammars to improve speech recognition and to allow for runtime, state based recognition configuration

Sat, 02/04/2012 - 00:55

Robert Lucero's Testing Blog - Speech Recognition - Using Multiple Grammars to Improve Recognition

"A difficult problem both users and developers face is recognizing words that are similar sounding, but wrong for the current context. An example of this would be the words “yellow” and “hello”.

Using the simple WPF app from the previous Exploring Grammar Based Recognition post, I will show an example of this confusion and a simple way to improve recognition based on a defined context. Specifically, a button to enable and disable grammars will be added to simulate context switching.

Check 2, 3
 Check


This is a continuation of the previous Exploring Grammar Based Recognition post. Please make sure that you’ve installed the Windows SDK as a prerequisite to both of these tutorials.

Step 1: Identifying Recognition Confusion

Using the Simple Speech Recognizer, add the word “hello” to the list of words to be recognized. Then repeat saying “hello” and “yellow” with various inflections. Depending on how I said it, I was able to get the wrong word recognized.

...

image

What Was Improved?

In this case, pressing the button changes the words that the Speech Recognition engine is listening for. If the grouping inside of grammar rules or grammars are clever, developers can enable and disable scenarios when the system moves into a specific state. It can give context and, in some cases, better accuracy for the words the system is listening for.

However, it doesn’t improve the more basic problem of confusion if someone says a word that sounds very similar to a word the engine is listening for. This process primarily helps by focusing or broadening the words available for recognition.

Summary

By dynamically enabling and disabling grammars, apps have another tool to help improve the recognition scenarios. Contexts that are provided and acted upon can make for a better recognition experience.

Here are some posts I found useful:

For more ideas or for more background on this post check out my previous post: Exploring Grammar Based Recognition. As always, if you have feedback or questions feel free to leave a comment or contact me through the MSDN blog dashboard tools!

This simple example shows how you can tweak speech recognition by the state of the app, to easily control what your app is listening for... Now if only I could turn off my internal Wife Grammar list (oh... did I really say that!? I mean turn it on! err... um... I mean... um... damn) :P

Categories: Blogs

Firefox Tilt turns page element visualization on its side...

Sat, 02/04/2012 - 00:34

ArtLung [Joe Crawford] - Firefox Tilt

"This is a screenshot of a somewhat useful, great looking web development tool. It’s called Tilt and it’s an add-on for Firefox. What it does is visualize the various elements, or tags on an HTML page in a 3-D space. You can interact with it and click to see what HTML and CSS makes each component. I find it useful sometimes to help me understand what’s why on the page.

image..."

Like Joe says, this is pretty much overkill, but cool as heck....

Categories: Blogs

How the Visual Studio ALM Rangers are dogfooding the next version of Team Foundation Server to help manage their projects

Sat, 02/04/2012 - 00:30

CodeProject - How the Visual Studio ALM Rangers use Team Foundation Service to Get Ready for Visual Studio 11

"This article is part of a series in which the Visual Studio ALM Rangers present guidance to assist you in solving complex, real-world environments. Our goal is to help you improve the consistency and quality of your solutions and your overall Application Lifecycle Management (ALM) process.

To recap, the Rangers are a group of experts who promote collaboration among the Visual Studio product group, Microsoft Services and the Microsoft Most Valuable Professional (MVP) community by addressing missing functionality (feature gaps and whitespace), removing adoption blockers and publishing best practices and guidance based on real-world experience.

Since the start of the Rangers program in 2006, we have delivered a mix of enhanced features and best practice guidance. Rangers and those who are familiar with our business know that we always select our projects by community vote. In other words, Rangers decide what is needed out there in the real world so you can do a better job. This has one side effect though. If you look at a set of such projects—like the Visual Studio 2010 wave—it looks like a random collection of content with lots of gaps. That brings us back to the future and our biggest Ranger “gig” ever, Understanding our Visual Studio 11 Readiness conspiracy. For the first time, we decided to go for full coverage, by design, which led to 20 new Ranger projects! With so many concurrent projects, we are breaking every record, but we know that it is worth the extra effort. What else has a higher priority for a Ranger than being technically ready for Visual Studio 11?

Teams that build software solutions have always had an expectation of an out-of-the-box, high-quality, and predictable application lifecycle management process and tooling. The biggest challenge in the history of Visual Studio and Team Foundation Server has been that technology usually precedes the practical guidance from the MVPs and Microsoft Services in the field. All products experience this dilemma and it often results in uncertainty of implementation, frustration, and blocking of product adoption.

The Rangers work hard to address this challenge; with Visual Studio and Team Foundation Server 2010, the ALM Ranger guidance was released shortly after the products were released. With the latest wave of Rangers Readiness, we are SIMultanously shipping the out-of-band tooling and guidance with Visual Studio and Team Foundation Server 11. Product teams call this SIM shipping or simultaneous shipping.

As shown in Figure 1, we deliver guidance on process and methodologies, Team Foundation Server planning and management, Visual Studio Test and Architecture tooling, Team Foundation Build and Windows Azure solutions, while working in close collaboration with Developer Product Evangelism (DPE), MSDN, and Patterns & Practices. Our goal is to eliminate overlapping guidance, duplication of deliverables and confusing messaging.

What makes the Rangers solutions different is that we are not focused on what the product features are, but how to best use those features, based on experience by those in the field such as Rangers in Microsoft Services, Microsoft Most Valuable Professionals (MVPs) and the ALM community.

...

image..."

I dig these kinds of articles, where we hear about real-world problems and solutions, learning the lessons from others so we can hopefully make different mistakes (and not the same ones they did). Plus it's cool seeing how these guys are using the TFS Preview... :P

Categories: Blogs

Any port in the storm... Sailing Orchard into AppHarbor ("How to setup Orchard on AppHarbor")

Sat, 02/04/2012 - 00:23

Eat Pray Code - How to setup Orchard on AppHarbor

"Orchard is an open-source (BSD license) CMS built on ASP.NET MVC 3.

That's really not much of an introduction. This post isn't meant to introduce one to Orchard or even how to use. I'll save those posts for later.

This post is going to be about how to setup Orchard on AppHarbor and get it up and running in minutes. This post was inspired by a post by John Zablocki over at dllHell.net. His instructions are pretty easy to follow but I disagreed with his methodology for working with Orchard on AppHarbor slightly and thought I'd show a my approach. Here's the plan.

Before we begin here are the pre-requisites:

That should be it. Why are we working with BitBucket rather than GitHub? Personally, there are lots of reasons but there's one problem GitHub has; no free private repositories. This is a dealbreaker for one very important reason. Orchard, for reasons not clear to me yet, keeps the connection string to the database in a plain-text settings file rather than in the web.config. AppHarbor has a way for you to set the connection string from its web interface but since the Orchard team decided to keep the connection string elsewhere, we're forced to commit the actual connection string of the actual production database along with our code. We obviously can't use the public repositories offered by GitHub in this scenario. Why not use SQL CE and avoid the issue? That's even worse since we'll have no access to our SQL CE database once our code reaches AppHarbor and the entire database will be deleted if another commit is made to our AppHarbor application.

I'll explain the need for the rest of the pre-requisites later on.

...

image..."

AppHarbor isn't something I've been watching for, but after seeing this and seeing that you can do this kind of hosting on it, I will be now... While hosting Orchard on AppHarbor doesn't look click-click-click easy, it doesn't look hard either and the price looks reasonable too (pretty much free)

(via http://www.reddit.com/r/dotnet - Here's a guide I wrote on how to setup Orchard on AppHarbor. It's written on Orchard and hosted on AppHarbor!)

Categories: Blogs

I'm from the Cloud and I'm here to help... No really, trust me... Looking at Microsoft Codename "Trust Services"

Thu, 02/02/2012 - 22:59

TechNet Articles - Microsoft Codename "Trust Services" Getting Started Tutorial

Table of Contents

  • Introduction
  • Prerequisites
  • Tutorial scenario
    • Step 1. Create certificates
    • Step 2. Create a Trust Server for your organization
    • Step 3. Install Trust Services SDK
    • Step 4. Create Data Policy using PowerShell
    • Step 5. Encrypt and decrypt data using PowerShell
  • Next Steps
  • Links
Introduction

This tutorial shows how to perform the basic tasks in Trust Services.

Trust Services is a collection of components and Azure Service that enables secure information sharing through the Cloud. It enables you to encrypt your data before uploading it to cloud storage, saving it on a disk or sending it to your partner.

In this tutorial, you will learn how to subscribe to Trust Services, define policies that enforce protection of data, and use the policies to encrypt and decrypt sample data.
The demo scenario involves four parties:

  • Trust Services Administrator (TSA) manages account for his organization, creates a subscription for his organization and manages set of users (also known as principals) that can access Trust Services.
  • Trust Services Policy Administrator (TSPA) defines and manages security policies about the data that his organization owns.
  • Data Publisher is a user that runs an application that encrypts the data based on the policies defined by the TSPA.
  • Data Subscriber is a user that runs an application that decrypts the data encrypted by Data Publisher based on the policies defined by the TSPA.

...

Links

image..."

Learn More about Microsoft Codename "Trust Services"

"Protect your data in the Cloud

Trust and Security have been hot topics for the public cloud since its inception. Corporate IT departments and CIOs have repeatedly expressed concerns over the loss of control associated with moving various levels of sensitive data to a public cloud. At the same time, the overall benefits of a public cloud are tremendous and continue to gain momentum. This means that many organizations have a pressing need to migrate to public cloud infrastructure in spite of ongoing concerns about security.

Encryption is one of the fundamental required tools for protecting data in the cloud. However, encrypting the data in the cloud, and then storing the encryption keys in the cloud in order to be able to access the data, provides only a very minor improvement over simply storing the data in the cloud in the first place.

Trust Services provides a unique combination of end-to-end application level encryption and power of the cloud to roam encryption keys in a totally secure way. It enables data driven applications to work with sensitive data, securely stored in different cloud-based storages while continuing to maintain control over access to this data.

..."

I've not seen much in my stream on this, but really like the idea behind it, end to end encryption, encrypting my data before it hits the cloud. Since data privacy/security is one of the main roadblocks I'm seeing/hearing when "cloud" discussions come up, this project is very timely and one that I'll now be watching for more news on...

Categories: Blogs

I'm from the Cloud and I'm here to help... No really, trust me... Looking at Microsoft Codename "Trust Services"

Thu, 02/02/2012 - 22:59

TechNet Articles - Microsoft Codename "Trust Services" Getting Started Tutorial

Table of Contents

  • Introduction
  • Prerequisites
  • Tutorial scenario
    • Step 1. Create certificates
    • Step 2. Create a Trust Server for your organization
    • Step 3. Install Trust Services SDK
    • Step 4. Create Data Policy using PowerShell
    • Step 5. Encrypt and decrypt data using PowerShell
  • Next Steps
  • Links
Introduction

This tutorial shows how to perform the basic tasks in Trust Services.

Trust Services is a collection of components and Azure Service that enables secure information sharing through the Cloud. It enables you to encrypt your data before uploading it to cloud storage, saving it on a disk or sending it to your partner.

In this tutorial, you will learn how to subscribe to Trust Services, define policies that enforce protection of data, and use the policies to encrypt and decrypt sample data.
The demo scenario involves four parties:

  • Trust Services Administrator (TSA) manages account for his organization, creates a subscription for his organization and manages set of users (also known as principals) that can access Trust Services.
  • Trust Services Policy Administrator (TSPA) defines and manages security policies about the data that his organization owns.
  • Data Publisher is a user that runs an application that encrypts the data based on the policies defined by the TSPA.
  • Data Subscriber is a user that runs an application that decrypts the data encrypted by Data Publisher based on the policies defined by the TSPA.

...

Links

image..."

Learn More about Microsoft Codename "Trust Services"

"Protect your data in the Cloud

Trust and Security have been hot topics for the public cloud since its inception. Corporate IT departments and CIOs have repeatedly expressed concerns over the loss of control associated with moving various levels of sensitive data to a public cloud. At the same time, the overall benefits of a public cloud are tremendous and continue to gain momentum. This means that many organizations have a pressing need to migrate to public cloud infrastructure in spite of ongoing concerns about security.

Encryption is one of the fundamental required tools for protecting data in the cloud. However, encrypting the data in the cloud, and then storing the encryption keys in the cloud in order to be able to access the data, provides only a very minor improvement over simply storing the data in the cloud in the first place.

Trust Services provides a unique combination of end-to-end application level encryption and power of the cloud to roam encryption keys in a totally secure way. It enables data driven applications to work with sensitive data, securely stored in different cloud-based storages while continuing to maintain control over access to this data.

..."

I've not seen much in my stream on this, but really like the idea behind it, end to end encryption, encrypting my data before it hits the cloud. Since data privacy/security is one of the main roadblocks I'm seeing/hearing when "cloud" discussions come up, this project is very timely and one that I'll now be watching for more news on...

Categories: Blogs

Daddy, tell me a story of how VB, WP7, Azure and my photos can be combined in the cloud to create a video story...

Thu, 02/02/2012 - 22:49

Microsoft Developer Network - Samples - (1code.codeplex.com/) - Story Creator Sample Application for Windows Phone 7 (VBWPAzureVideoStory)

Summary

This sample solution is a story creator for Windows Phone 7. You can use it to create photo stories on your phone, and send the stories to a Windows Azure service to encode them into videos. The Windows Azure Service includes a REST service built with WCF Web API, a simple HTML5 browser client that allows you to see encoded videos, and a native component encodes videos using WIC and Media Foundation.

While individual pieces of technologies are very interesting, the true power comes when the platforms are combined. We know most developers need to work with the combined platform rather than individual technologies. So we hope this sample solution will be helpful to you.

Use the Application

When you launch the client application, on the first screen you’ll find 3 buttons. They allow you to create a new story, or working on an existing one.

...

image

A pretty darn cool sample from one of my favorite sample sources, the All-In-One Code Framework team. That and I like sharing some VB love... :)

Categories: Blogs

Daddy, tell me a story of how VB, WP7, Azure and my photos can be combined in the cloud to create a video story...

Thu, 02/02/2012 - 22:49

Microsoft Developer Network - Samples - (1code.codeplex.com/) - Story Creator Sample Application for Windows Phone 7 (VBWPAzureVideoStory)

Summary

This sample solution is a story creator for Windows Phone 7. You can use it to create photo stories on your phone, and send the stories to a Windows Azure service to encode them into videos. The Windows Azure Service includes a REST service built with WCF Web API, a simple HTML5 browser client that allows you to see encoded videos, and a native component encodes videos using WIC and Media Foundation.

While individual pieces of technologies are very interesting, the true power comes when the platforms are combined. We know most developers need to work with the combined platform rather than individual technologies. So we hope this sample solution will be helpful to you.

Use the Application

When you launch the client application, on the first screen you’ll find 3 buttons. They allow you to create a new story, or working on an existing one.

...

image

A pretty darn cool sample from one of my favorite sample sources, the All-In-One Code Framework team. That and I like sharing some VB love... :)

Categories: Blogs

Umbraco v5 released (The "OMG, it's really fast now" version)

Thu, 02/02/2012 - 22:43

Umbraco - Umbraco 5.0 RTM is on CodePlex, ready for download

Today is a pretty big milestone for the Umbraco 5 team. It's the end of January 2012, we've had seven progressively stable preview builds over the past months, and now it's time to put a stake in the ground.

After a lot of hard work, late nights, and invaluable help from the community testing our many preview builds, we've hit our first production milestone.

Umbraco 5.0 RTM is on CodePlex!

Please do grab a copy - take two, if you like - it's free after all!

...

Features

This is called "version 5 of Umbraco", but it's important to remember the history of the v5 project. We always intended to respect the vibrant culture and history of the Umbraco CMS as it has gone so far, and make a product that was on a fresh & rewritten technology stack but enabling the same common goals.

Our target for "5-point-0" out of the box is the most commonly used features of 4.7. We have a lot of features in 5.0 that enable you to go into production for the vast majority of site builds, and we have taken an approach of getting the core features done first - and stable.

We are now going to be iterating quickly with new features as the months progress, so that we reach feature parity with 4.7 and move beyond that quickly. So, yes it's like a "1.0" in some senses, but it already has a tonne of features that we think make it a great CMS.

  • Design and produce templates quickly using the excellent Razor syntax
  • Access your content in those templates using an intuitive dynamic API for both querying and walking up and down your content structure
  • Tailor content types with a variety of customisable fields, meaning you can focus on your content structure without a hard link to its layout
  • Use multiple templates with pages so you can easily adjust to your site's needs, do A/B testing, cater for mobile handsets, or generate RSS feeds
  • Have document types that inherit from one or more other types, making it simple to organise common fields for things like SEO that are shared across all of your articles
  • Create, preview and publish content in a naturally organised way using folders that can automatically create your site navigation, if you like
  • Create, preview and publish media and other types of assets
  • Store those assets on your server or in the cloud
  • Use a rich set of permissions to tailor backoffice access for your editing team
  • Plug in your own existing data in a way that Umbraco natively understands, rather than the only option being to migrate everything under Umbraco's control
  • Plug in your own backoffice editors, dashboards, and custom trees
  • Expose the underlying MVC stack for mixing in your own application, controllers and views with the content-managed portion
  • Share common pieces of functionality like Macros with your team
  • Share your own data providers, common templates, handy helpers and more using NuGet packages
  • Have those packages dynamically add configuration to a user's website so that uninstalling rolls back configuration seamlessly

There are many more, but you didn't come here for a list of bullet points - here's that download link again!

...

SNAGHTML4ebfcde..."

If your thinking about building your own CMS (why? Do you really need to write your own? But that's besides the point...) or are looking to run one that's free/cheap and OSS, you might want to quickly click over and check out Umbraco. It's stood the test of time, has a very active support community and constant check-ins...

Categories: Blogs

Umbraco v5 released (The "OMG, it's really fast now" version)

Thu, 02/02/2012 - 22:43

Umbraco - Umbraco 5.0 RTM is on CodePlex, ready for download

Today is a pretty big milestone for the Umbraco 5 team. It's the end of January 2012, we've had seven progressively stable preview builds over the past months, and now it's time to put a stake in the ground.

After a lot of hard work, late nights, and invaluable help from the community testing our many preview builds, we've hit our first production milestone.

Umbraco 5.0 RTM is on CodePlex!

Please do grab a copy - take two, if you like - it's free after all!

...

Features

This is called "version 5 of Umbraco", but it's important to remember the history of the v5 project. We always intended to respect the vibrant culture and history of the Umbraco CMS as it has gone so far, and make a product that was on a fresh & rewritten technology stack but enabling the same common goals.

Our target for "5-point-0" out of the box is the most commonly used features of 4.7. We have a lot of features in 5.0 that enable you to go into production for the vast majority of site builds, and we have taken an approach of getting the core features done first - and stable.

We are now going to be iterating quickly with new features as the months progress, so that we reach feature parity with 4.7 and move beyond that quickly. So, yes it's like a "1.0" in some senses, but it already has a tonne of features that we think make it a great CMS.

  • Design and produce templates quickly using the excellent Razor syntax
  • Access your content in those templates using an intuitive dynamic API for both querying and walking up and down your content structure
  • Tailor content types with a variety of customisable fields, meaning you can focus on your content structure without a hard link to its layout
  • Use multiple templates with pages so you can easily adjust to your site's needs, do A/B testing, cater for mobile handsets, or generate RSS feeds
  • Have document types that inherit from one or more other types, making it simple to organise common fields for things like SEO that are shared across all of your articles
  • Create, preview and publish content in a naturally organised way using folders that can automatically create your site navigation, if you like
  • Create, preview and publish media and other types of assets
  • Store those assets on your server or in the cloud
  • Use a rich set of permissions to tailor backoffice access for your editing team
  • Plug in your own existing data in a way that Umbraco natively understands, rather than the only option being to migrate everything under Umbraco's control
  • Plug in your own backoffice editors, dashboards, and custom trees
  • Expose the underlying MVC stack for mixing in your own application, controllers and views with the content-managed portion
  • Share common pieces of functionality like Macros with your team
  • Share your own data providers, common templates, handy helpers and more using NuGet packages
  • Have those packages dynamically add configuration to a user's website so that uninstalling rolls back configuration seamlessly

There are many more, but you didn't come here for a list of bullet points - here's that download link again!

...

SNAGHTML4ebfcde..."

If your thinking about building your own CMS (why? Do you really need to write your own? But that's besides the point...) or are looking to run one that's free/cheap and OSS, you might want to quickly click over and check out Umbraco. It's stood the test of time, has a very active support community and constant check-ins...

Categories: Blogs

Are we actually better mentally wired for Agile? "Your Brain on Scrum"

Thu, 02/02/2012 - 22:33

InfoQ - Your Brain on Scrum

Agile relies on the belief that individuals and interactions are more important than tools. It turns out that this belief is much more than just that. Individuals do work more productively in teams. Social cognitive neuroscience research strongly suggests that there are good brain-based reasons why agile is so effective.

The agile software development framework has been with us for over a decade. The classic principles were stated in 2001 in the Agile Manifesto (agilemanifesto.org):

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

These principles identify agile’s differences with the standard top-down waterfall method of creating software. The waterfall method requires a large overall plan and a set of processes and standard tools to use in following the plan. The execution of the plan is the immediate purpose. Unstated, but clear, is that managers are needed to supervise the execution of all the steps of the plan, including the intermediate steps, in the proper order. The actual working software comes only at the end of the waterfall.

In sharp contrast, agile gives control to individuals, where people on the agile team, interacting and responding to changes, take responsibility for producing the software.

The same meeting that produced the Agile Manifesto also produced these Twelve Principles:

  1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
  3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  4. Business people and developers must work together daily throughout the project.
  5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
  7. Working software is the primary measure of progress.
  8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  9. Continuous attention to technical excellence and good design enhances agility.
  10. Simplicity–the art of maximizing the amount of work not done–is essential.
  11. The best architectures, requirements, and designs emerge from self-organizing teams.
  12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Interestingly, five of those 12 principles mention time, which to me shows that speed, timing and rhythm were Agile’s focus from the start.

II. Agile methods are supported by cognitive neuroscience

Now let’s turn to the science. The Agile Manifesto established a milestone in the world of work.

...

image..."

I started reading this because the tile, but kept reading it because of its content... Very interesting...

Categories: Blogs

Using the Group Project Toolkit, Office Web Apps and SkyDrive to take some of the coordination nightmare out of group projects...

Wed, 02/01/2012 - 00:29

Tech Notes for Higher Education and K12 Institutions -Group Project Toolkit + Office Web Apps

"Make group work a breeze with the Group Project Toolkit and Office Web Apps. Microsoft's Group Project Toolkit consists of a group paper outline in Word, a group presentation outline in PowerPoint, a tracker for assigning group tasks in Excel and a notebook for group research in OneNote. Users are encouraged to view the document in Office Web Apps, download it to their PC and make their edits. Upload it to SkyDrive and share with the rest of the group.

[GD: I've reordered the below items...]

GROUP PROJECT MANAGEMENT

This Excel doc will help you track your project, assign tasks to group members and upload the document to SkyDrive so everyone always knows what to work on.

GROUP RESEARCH

A great project starts with great research. Get started with this notebook and share with the group on SkyDrive so everyone can contribute and see each other’s notes

GROUP REPORT

Hate consolidating and reformatting your group’s work before turning it in? Start everyone off on the right foot by using Word Web App and save the hassle.

GROUP PRESENTATION

Ready to share your work? This PowerPoint doc has what you need to start—everyone can work on the final deck together from almost anywhere.

 

image..."

Note: You can find the "Group Project Toolkit" here, http://office.microsoft.com/en-us/web-apps/microsoft-office-web-apps-group-project-toolkit-FX102800126.aspx?CTT=1

GROUP PROJECT TOOLKIT + OFFICE WEB APPS

image

If you've ever done a group project (who hasn't?) you'll recognize how these free templates and hosting might be able to help save a little of your sanity (in short, STOP the emailing documents around nightmare!)

Categories: Blogs

Get the Gang of Four in your Visual Studio... At least as UML Toolbox items...

Wed, 02/01/2012 - 00:06

Microsoft Visual Studio UK Team - Visual Studio 2010 UML Design Pattern Toolbox Items Extension

"I presented at the Black Marble Architecture Forum in the North event in December and one of the things I showed was how to create a toolbox item extension to add a UML design pattern into Visual Studio’s UML toolbox. Having done this I checked and couldn’t find any extensions that covered the Gang of Four design patterns, so I thought I’d create an extension to do just that. Let’s start at the end with where to download them and what they give you


What do you get?

The toolbox items extension gives you some extra toolbox items that cover the majority of the core Gang of Four design patterns. Once installed, if you open a UML class diagram you should see the following additions under Structural, Creational and Behavioural (yes, British spelling) Patterns:

image

Then open or create a UML modeling project and once you have a class diagram you should see the new toolbox items.

Codeplex

I’ve added the Visual Studio solutions that I created this extension from to Codeplex here. You can download the solutions, take a look at the projects and update/improve/extend/adapt the toolbox items to suit your needs.

How do you build this?

Take a look at the Codeplex project if you want to download the full solutions but as an overview this is essentially simple. It breaks down into 4 key aspects:

UML Profile

I wanted to create a UML profile in order to define the stereotypes that I would use in the design patterns. As an example I wanted to have <<Singleton>> stereotype so that any class that you wanted to implement the Singleton pattern could be identified as such without having to rely on naming conventions, and the name can be independent of the stereotype. A secondary reason is that if I wanted to generate code from the design patterns this would allow the T4 templates to generate the appropriate code for the specified stereotype. I haven’t got round to this part but using a profile means that this will be possible in the future.

The documentation on creating a custom profile is here. This is what I followed but a summary is:

...

image..."

Why is this cool? Because not only do we get a pretty cool package of UML toolbox items, but we get the source AND a walkthrough for how they were created! That's cool...

NOTE: If I remember right, you'll need Visual Studio 2010 Ultimate to use these (since UML projects can only be created/authored/edited in that SKU)

Categories: Blogs

How to keep Nuget from getting the latest version of an assembly/dependent assembly (for example, Log4net 1.2.10 and not 1.2.11)

Tue, 01/31/2012 - 23:53

Krzysztof Kozmic - How to force Nuget not to update log4net to 1.2.11

"That’s a quick one. There’s been a new release of log4net recently that’s signed with a new key, and therefore is incompatible with old version 1.2.10.

Therefore, due to near-ubiquity of the library in .NET space, it may cause some problems if you happen to have a dependency (direct or indirect) on it.

The matters are made worse by Nuget’s default of getting the latest available version of the package. I dealt with this problem the other day, and I saw a few people in my twitter stream struggling with the same issue.

The solution is quite simple. It’s not specific to log4net and I’m not picking on log4net here. Here’s how you can restrict Nuget’s package to specific version in your solution.

...

image..."

Thought this a good tip and reminder how how to deal issues like this, where getting the latest version of an assembly isn't what you really want Nuget to do...

Categories: Blogs

"Introducing SQL Server 2012" second draft of free eBook now available (6 of the 10 final chapters)

Tue, 01/31/2012 - 23:48

Microsoft Press - Free ebook: Introducing Microsoft SQL Server 2012 (second DRAFT preview)

"Everybody interested in learning about what’s new in SQL Server 2012, today’s a good day because we’re releasing our second DRAFT preview of Introducing Microsoft SQL Server 2012, by Ross Mistry and Stacia Misner. (Please remember that “draft” means we haven’t completed our editorial/production work on the content.) This version updates the two chapters that appeared in our first DRAFT preview release and adds four more chapters. It contains the boldfaced chapters below:

PART I DATABASE ADMINISTRATION (Ross’s part)

1. Denali Editions and Enhancements

2. High Availability and Disaster Recovery Enhancements

3. Scalability and Performance

4. Security Enhancements

5. Beyond Relational

PART II BUSINESS INTELLIGENCE DEVELOPMENT (Stacia’s part)

6. Integration Services

7. Data Quality Services

8. Master Data Services

9. Analysis Services and PowerPivot

10. Reporting Services

This release is available in PDF only. In March, we’ll release the final, full, and, yes, free 10-chapter ebook in three formats: PDF, MOBI, and EPUB. ..."

And my usual PDF snaps;

image

imageimageimage

The Chapter I need right now is #1... lol

Still, hard to beat the price on this. But remember, this is a Draft version and not the final.

 

Related Past Post XRef:
Free, as in free, eBook - Introducing Microsoft SQL Server 2008 R2 (direct download, no reg required)
Categories: Blogs

Debugger Canvas v1.1 now available...

Tue, 01/31/2012 - 23:36

Kael Rowan - Debugger Canvas 1.1 is Released!

"Hi everyone, we are pleased to announce the release of Debugger Canvas version 1.1. This version includes a number of bug fixes, new features, and improves performance. Some of the new features are:

- Easily turn Debugger Canvas on or off, even in the middle of a debug session.
- Quickly navigate up and down the call stack in the canvas using the keyboard or the mouse.
- See Multiple threads together on the canvas, each thread identified by its color.
- See recursive calls side by side.
- The option to edit code directly in the code bubbles is enabled by default.

This last "feature" is actually nothing new. You could always edit code directly in bubbles by checking the checkbox in Tools -> Options, but some users didn't know that option existed so we frequently heard the feedback that you wished you could edit code directly in the bubbles. This time we just simply enable that feature by default if you're installing Debugger Canvas for the first time.

To install this updated version of Debugger Canvas you must uninstall the previous version of Debugger Canvas first. (Or install QFE 2581019 from http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=38654 before installing the update.) This is because Visual Studio 2010 SP1 has a bug which prevents signed VSIXes from being updated. I will also post a sticky thread in the forum since I'm sure many of you will attempt to install version 1.1 on top of 1.0 without reading the instructions first. I would do the same thing! :)

..."

Note the install instructions...

That said, this got me at "turn it on/off even in the middle of a debug session..." :)

 

Related Past Post XRef:
I wish there was a way debug my app visually, a diagram of what’s going on and where I am, a canvas like view of the call stack
 Something like the “Debugger Canvas” from Microsoft DevLabs!
Categories: Blogs