Friday, January 27, 2012

Going beyond demo-ware with "Real World Windows Azure Guidance" from MSDN

JrzyShr Dev Guy - Found: Windows Azure Document Treasure Trove!

"Often when I talk to developers, they tell me they can never find anything on Microsoft’s websites. “It’s too big” or “it’s too complicated.” “Stuff gets buried”. And on and on, and so forth…

Having been here a while, I can testify to the truth of that. Luckily, the advent of search engines like Google & Bing make this a little less of an issue (if you know what you’re looking for).

But, it would be nice to have an easy to navigate guide to the Microsoft Universe handy. With over 90K employees, a gazillion products, and product websites, keep dreaming! It’s just not going to happen.

Although, in December, the new WindowsAzure.com website took a pretty good stab at the problem. The new site re-organized all of the Azure documentation into one place that makes it easier to navigate and surface various content. This includes the new Developer Centers I wrote about recently. Kudos to the Azure team on that!

But, as good as the site overhaul is, there is still good stuff that gets buried. Every now and then, you find a gem via Google or Bing and then the next thing you know, you’re hot on the trail of good information like Fred and Velma connecting all the dots at the end of a Scooby Doo episode! You bookmark the gem, and then look for similar content from the author or the location it is published.

...

Zoinks Scoob!!! Real World Azure Guidance?! That sounds cool. I thought, “What else is around here?” and navigated up a level. That tipped me off to a whole treasure trove of ‘top secret’ Windows Azure documents. Really impressive stuff in there, like:

SNAGHTML1f5c4196

As I navigated through each of these topic areas, I felt like Julian Assange stumbling upon something I wasn’t meant to see, and now it’s my job to tell the world about it! Except, I think I was meant to see it?

You see, there’s nothing “secret” about these documents at all! They’re all publicly available documents buried within the bowels of MSDN. Not sure why they’ve been hidden away like top secret sensitive information, but hopefully this post can shine a little light on them!

..."

Real World Windows Azure Guidance

"Updated: December 9, 2011

Welcome to Real World Windows Azure Guidance.

In this section, find valuable and interesting articles based on the real world experience of Microsoft customers developing applications for Windows Azure. These articles are written by members of the community, who have developed subject matter expertise working with Windows Azure.

image..."

Another place to look for Azure information if you're wondering about it and the "real world" (i.e. beyond demo-ware)

Open Data, Open Government and Microsoft

Public Sector Developer Weblog

FAQ: Microsoft Open Government + Open Data (Part I)

    1. What is Open Government?
    2. What Countries Have Open Government Initiatives?
    3. Is Open Government the Same as Gov 2.0?
    4. What is Open Data?
    5. Does Open Government or Open Data Require Open Source?
    6. What Can Open Data Be Used For?
    7. Does Open Data Contain Personal or Private Information?
    8. Why Have So Many Cities Launched Open Data Initiatives?
    9. What Cities Have Launched Open Data Catalogs?
    10. What Terms of Use are Required for Open Data?

FAQ: Microsoft Open Government + Open Data (Part II)

    1. What Licensing is Required for Open Government Projects?
    2. What Applications Have Been Developed Using Open Data?
    3. Why Do Governments Hold Competitions for Open Data Projects?
    4. How Does the Cloud Benefit Open Data Projects?
    5. What Tools Does Microsoft Provide to Help Start an Open Data Project?
    6. Where Can I Find More Information on Microsoft’s Open Government Data Initiative (OGDI)?
    7. Are there any OGDI Projects in French language?
    8. What Open Data Projects Have Been Developed Using Microsoft Technologies?
    9. Are any National Governments Using Microsoft Technologies for their Open Data Portals?
    10. Are There Any Microsoft Open Data Applications Available for iPhone?

FAQ: Microsoft Open Government + Open Data (Part III)

    1. Are There Any Open Data Applications Available for Windows Phone 7?
    2. Do Open Government or Open Data Technology Projects Require Open Source Software (OSS)?
    3. What Costs/Resources Does a Typical Startup Open Data Catalog Require?
    4. What Alternative Technologies Exist in the Open Data Arena?
    5. Can Microsoft and Alternative Solutions be Combined?
    6. What Tools and Frameworks Are Available to Enable Development of Customized Solutions?
    7. Are there Any Partner Solutions for Open Government and Open Data Projects?
    8. What Are the Partner Opportunities for Open Government and Open Data Projects?

I like the idea of "open government data" giving us a chance to get at some raw government data to turn it into information. The hard part is that there's so much data and in so many different places that it's not easy to mash it all up. But initiatives like this look to help make that just a bit easier...

 

Here's some other links you might find interesting

Infragistics shows off their new Undo/Redo Framework CTP

Infragistics  - Infragistics Undo/Redo Framework CTP

"Did you know we CTP'd a new Undo/Redo framework with our last release? Well, we did!

And we'd love to get feedback from you--do you think it's useful? How would you use it? How would you change it? That sort of thing.

Here's a quick rundown of the key features:

  • Undo/Redo History Stacks –...
  • Built-In UndoUnits – ...
  • Delegate UndoUnit – ...
  • ObservableCollectionWithUndo – ...
  • Transactions – ...
  • Custom UndoUnits – ...
  • Commands – ...

image..."

I dig seeing ISV's providing something new, something also that keeps me from having to built it myself, when they look beyond their now space...

David Pallmann takes us on a fresh look at the Windows Azure development

Fire and Ice: David Pallmann's Web and Cloud Blog - Taking a Fresh Look at the Windows Azure Development Experience

Windows Azure has grown up over the years since it first debuted in late 2008. In this article we're going to take an updated look at what the cloud developer experience is with Windows Azure today. Here's what we'll cover, which will include a walk-through of developing a cloud application:

  • Key Online Resources
  • What You Need for Cloud Development
  • The Cloud Development Lifecycle
  • Application Development Walk-through

...

Well, there you have it. The Windows Azure development experience has come a long way since its debut a few years back and it is constantly being improved. I encourage you to get the 90-day Windows Azure Free Trial and take it for a spin!

image..."

Looks like allot of content doesn't it? Well, funny that because it IS allot of content, about 19 pages worth! Now that's a blog post!

If you've yet to jump on the Azure bandwagon, not knowing where to start, start with this article...

Don't look down... Well, okay only if to check out this awesome Street Art...

3D Buzz - Some awesome pavement art

image

Woondu - Amazing 3D Street Art Paintings

"Most famous artists are Julian Beever, Edgar Müller and Manfred Stader, men who are famous for their art on the pavement of England , France , Germany , USA , Australia, Argentina and Belgium they give to drawings an amazing 3D illusion. Using a projection called anamorphosis to create the illusion of three dimensions when viewed from the correct angle, these artists create some of the finest 3D pavement illusions. Remember, paintings in reality are flat on the pavement

...

SNAGHTML1f3f0918

..."

In a word... Wow.

People with this kind of skill and vision just amaze me.

Thursday, January 26, 2012

MetroSky - End to end Windows Phone 7 SkyDrive sample code and app

Microsoft Developer Network - MetroSky - A Complete SkyDrive Sample for Windows Phone

"Introduction

This is a “Realworld-Sample” showing, how to implement a complete application to manage and view your files on SkyDrive, using the current version of the Live SDK 5.0 and the Windows Phone SDK 7.1.

...

Description

This application was published on Windows Phone Marketplace, just a few days ago, and allows the following operations on SkyDrive:

Manage your SkyDrive files in a effective, fast and simple manner:

    • Browse your files
    • Navigate folders
    • Delete files
    • Move files
    • Copy files
    • Browse your pictures
    • Take pictures and upload them to your albums
    • Copy pictures from your Windows Phone to SkyDrive
    • Edit Word and Excel files

    ..."

    Some more interesting Live SDK/SkyDrive related code to check out. This seems like one of the more complete samples I've run across...

    Related Past Post XRef:
    SkyDrive API Link Round-Up
    Code sample to access SkyDrive Photos API from WP7 (or any REST/OAuth/JSON enabled device/OS)
    More information on integrating Windows Live, Hotmail and SkyDrive with your App's

    FlightGear takes you into space...

    FlightGear - What would it be like to fly a rocket into space?

    "Do you want to earn your astronaut’s wings?

    Author: Thorsten Renk

    Real spaceships aren’t actually piloted into orbit. The risk that a human being, strapped to his acceleration seat and under a crushing acceleration of 4 g for a prolonged period of time is unable to fly with the precision required to reach orbit is far too great, and real spacecraft reach orbit on autopilot.

    But what would it be like? Welcome to a scenario in which a Russian Vostok spacecraft has been acquired by the USA and fitted for a manually flown mission.

    This is the launch vehicle assembled at Edwards Airforce Base. The actual capsule is hidden under an aerodynamically formed protective cover. Below it is the third stage of the rocket, with its exhaust nozzle visible. All this is mounted on top of the huge first and second stage. Unlike many US rockets, which use sequentially burning stages, the first stage of the Vostok launch vehicle consists of four boosters which burn along with the long, cylindrical second stage.

    ...

    SNAGHTML198ea105

    image..."

    Oh come on, you KNOW this is awesome!

    I knew FlightGear went beyond airplanes, but not like this. Now it's got me wondering when other like things it can do? For example, I wonder if a Project Orion type ship would be created? That would be uber-awesome... lol :)

     

    Related Past Post XRef:
    FlightGear, the open source flight simulator, releases version 2.4

    Lisa asks, "Can the audience read your scribble" [cough... not mine... cough]

    Speak Schmeak - Can the audience read your scribble?

    "Here's another topic speakers don't talk about enough: Your handwriting.

    You may have great content, smooth delivery, great audience connection, a sharp outfit, well-groomed eyebrows and a well-rounded sense of humor, but if you're going to write on a flip chart, white board or overhead, your handwriting better damn well be legible.

    I heard about a seminar recently where the speaker was all of the above. Then he started writing on a flip chart and his content went out the window. Interestingly, during that workshop, a video was shown of the speaker giving an earlier presentation, and his writing was equally illegible. So it wasn't just a one-time, guy-in-a-hurry type thing. His handwriting was always bad, and he just didn't care.

    If you're going to use a flip chart (and flip charts are great for recording audience interaction and saving notes to refer back to during the presentation), then print large, clear letters, and write slowly. If you know you have sloppy handwriting, make a conscious effort to write more neatly. If you think your handwriting is neat and tidy, STILL make an effort to write more neatly.

    ...

    image..."

    When Lisa, my favorite presentation coach, posted this I cringed, because it felt she had seen my last whiteboard session... :|

    When I present or honcho a meeting, nine times out of ten I seem to end up at the whiteboard, drawing stuff (badly). And writing horribly... Heck, I wouldn't call it writing. More like hieroglyphics that represent actual worlds. So note to self: reread her post and watch these two videos (again)

    Wednesday, January 25, 2012

    Free Microsoft Security tools and utilities

    The Irish IT Professional - Free Microsoft Security Tools You Should Know About . . .

    We provide a significant range of security tools for use by organizations and at home at a great price - FREE!

    The following list is from our complementary monthly 'Security Chronicles' publication available to enterprise customers.

    image..."

    Every so often I need the Safety Scanner or MSE or MSRT so I thought this round-up would be useful in the future.

    A early look at the "SQL Server 2012 Early Adoption Cook Book" (Think "Work in progress")

    TechNet Wiki - SQL Server 2012 Early Adoption Cook Book

    "Microsoft creates a lot of content designed to drive early adoption for new releases of SQL Server. We use this as a tool to arm trainers, consultants and evangelists with the content they need to introduce developers and IT Professionals alike to key improvements in a new release so they can help us drive adoption. We don't always do a good job of communicating what all of these content assets are.
    This wiki is intended to serve as a master index of some great SQL Server 2012 early adoption content being created by Microsoft. Rather than announcing new bits of content on various blogs, we will simply update this wiki so there is one place to find all the latest information about early adoption content assets. We hope you find this wiki useful, thanks for your interest in driving early adoption of SQL Server 2012!


    Sincerely,
    The Microsoft Data Platform Evangelism Team (sqldevx@microsoft.com)

    ...

    image..."

    This is a early look (i.e. Some of the referenced articles are live, some are placeholders....) at this resource, one that will hopefully grow and flesh out over time.

     

    Related Past Post XRef:
    SQL Server 2012 launches March 7th... with a free virtual launch event

    The officially easiest way to play with SQL Server 2012... The SQL Server Virtual Labs
    SQL Server 2012 RC0 is now available. Here's a download link round-up.
    Playing with SQL Server 2012 the easy way, via a Microsoft and Amazon partnership for SQL Server 2012 on AWS/EC2 (Think "5 Minutes to Denali")
    SQL Server 2012 Edition and Licensing Revamp Round-up
    SQL Server 2012 Data Quality Services Slide Demo
    SQL Server 2012 (fka Denali) Developer Training Kit Web Installer Preview (Updated)
    "Introducing Microsoft SQL Server Code Name 'Denali'" Free (draft two chapter preview) eBook
    Want Denali CTP3 (aka next version of SQL Server)? Here's a Hyper-V VHD just for you (in 36 parts, but I've also provided direct download URL's for use in your DM of choice...)
    SQL Server Denali Sequence Object Overview
    SQL Server Denali Feature Watch - FORMAT(), as in, "OMG we finally get .Net like Number/Date/Time formatting in our TSQL" Or "Saying goodbye to my old friend, Convert(103)..."
    Time to start thinking about, and providing feedback on, what you’ll need to upgrade to Denali (aka next version of SQL Server)
    Denali CTP3 introduces LocalDB - Think SQL Server Express crossed with SQL CE (or SQL CE grown up or SQL Express made as almost as easy CE)
    SQL Server Denali FileTables Feature - The fruits of WinFS? (Think "A FileStream enabled table that you can access as a network file share and other standard File IO API's" or "SQL Server File System in a Table")
    A couple SQL Server ColumnStore references...

    "New and Improved T4 Template for OData Client and Local Database" for Windows Phone 7.1(5)

    Writing...Data Services - New and Improved T4 Template for OData Client and Local Database

    "If you recall from my previous post Sync’ing OData to Local Storage in Windows Phone (Part 1), I had written a T4 template for my Windows Phone 7.5 (“Mango”) project to generate a proxy client needed to access both an OData service and local database on the device. My template was based on an existing T4 template,which was published in a blog post by Alexey Zakharov on Silverlight Show, that generated a generic OData proxy client. I had promised to publish my first stab a T4 template to generate this hybrid proxy. However, because my original template was based on Alexey’s OSS sample, it was taking a long time to get the go ahead to post it.

    A New T4 Template for OData Clients

    Fortunately, the other day I heard about a new T4 template written by the OData team to generate an OData client proxy to access an OData v3 data service.

    Perfect!

    With this new Microsoft-developed template, I have been able to port my previous LINQ-to-SQL additions into a new template without too much work. And, I have now updated my previously published project Using Local Storage with OData on Windows Phone To Reduce Network Bandwidth to now include the actual T4 template. To use this project on your computer, follow the instructions in the main page.

    Considerations for My New Hybrid T4 Template

    ...

    Installing The Hybrid T4 Template into a New Project

    In case you want to try out my T4 template in your own Windows Phone project, here’s how you would do it:

    ...

    image..."

    One of the key phrases is "...the other day I heard about a new T4 template written by the OData team to generate an OData client proxy to access an OData v3 data service...". This doesn't appear to be out yet, but I'll be keeping an eye open for it.

    "Building a large text file editor" Series - Part 1 of x

    Windows and .NET Programming - Building a large text file editor – Part I

    "The basic idea behind a large file viewer is that you can’t load a very large file into a TextBox or RichTextBox control because the memory usage as well as the time to load the file will be enormous. Moreover, the user can only see a very small portion of the file on the screen at once, so it doesn’t make sense to load all the data in the file at once.

    As such, what is needed from a large file viewer is to only display some small parts of the file in order to fill at least a screen. This is pretty straightforward and will be addressed in the second post. What is a bit more complex is to enable the user to edit the file (i.e. make insertions and deletions). The problem with editing the file is that edits need to be taken into account when computing the position in the stream. If the user deletes say the first 10 characters and then wants to read two characters at offset 4, what actually needs to be read is the two characters at offset 14 from the original file:

    • Original string: "0123456789abcdefgh"
    • String after deleting 10 characters: "abcdefgh"
    • Character at offset 4 (zero-based): "e"
    • Offset in initial string: 14.

    Obviously, things get more complicated when the user starts to randomly delete and insert text at various locations in the file.

    The solution I’m proposing is the class RevisionStream (see attached code). This class is wrapper around the FileStream class and supports four public methods:

    • AddDeletion – the caller signals that a deletion has been made by the user
    • AddInsertion – the caller signals that the user has inserted some text
    • Read – reads some bytes from the revised stream
    • SaveTo – saves revised stream to file

    The basic idea behind this approach is that normally the largest part of the text will remain identical to the original stream and only some minor changes will be done by the user. So it makes sense to leave the original text on disk and only load to memory the parts that we need together with the changes the user makes.

    ...

    image..."

    I saw this and thought, "Wow, what a cool series... I can't wait for the rest." What does thinking that say about me? LOL

    Anyway...

    I think this is a dev-cool sounding series and I appreciate that he's already attached the source code... ;)

    Let Alice help you teach and learn programming...

    Alice.org

    Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a teaching tool for introductory computing. It uses 3D graphics and a drag-and-drop interface to facilitate a more engaging, less frustrating first programming experience

    image

    Alice.org - What is Alice?

    "Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a freely available teaching tool designed to be a student's first exposure to object-oriented programming. It allows students to learn fundamental programming concepts in the context of creating animated movies and simple video games. In Alice, 3-D objects (e.g., people, animals, and vehicles) populate a virtual world and students create a program to animate the objects.

    In Alice's interactive interface, students drag and drop graphic tiles to create a program, where the instructions correspond to standard statements in a production oriented programming language, such as Java, C++, and C#. Alice allows students to immediately see how their animation programs run, enabling them to easily understand the relationship between the programming statements and the behavior of objects in their animation. By manipulating the objects in their virtual world, students gain experience with all the programming constructs typically taught in an introductory programming course.

    image

    Teaching with Alice

    image

    Here's a snap of Alice from the freeware genius  post, Learn programming with 3D video producer ‘Alice 3’,

    SNAGHTML146cf34e

    Looks interesting... Am more interested in Kudo, but still I think this is kind of cool and the price is just right for educators... :)

    (via freeware geniusLearn programming with 3D video producer ‘Alice 3’)

    "My Exchange is slow..." Some tips and performance counters to look it for Exchange Latency or Connection issues

    OpsVault - How To Troubleshoot Microsoft Exchange Server Latency or Connection Issues

    "This article is meant to be a hopefully useful guide to help Microsoft Exchange Server IT Operations teams understand, troubleshoot and remedy situations where users are experiencing issues connecting to the Exchange messaging service via Outlook or OWA. I’ve included information relating to Exchange Server 2003, 2007 and 2010. The following process helps rule out server latencies and helps determine whether a less than optimal messaging user experience comes from a client-side configuration, client-side performance issue or a server-side issue.

    • Step 1: Check the Application Log and System Log
    • Step 2: Check for Issues Using Key Performance Counters
      • Conduct Performance Analysis to Fine-Tune Exchange Components and Help Identify Issues
      • Key Exchange Performance Counters for Monitoring and Troubleshooting
      • Exchange Server 2007/2010 Key Performance Counters
      • Exchange Server 2003 Key Counters

    ...

    image..."

    I thought this a good companion piece to my early post, "Outlook is slow..." Here's some information on how to troubleshoot why.

     

    Related Past Post XRef:
    "Outlook is slow..." Here's some information on how to troubleshoot why.

    Monday, January 23, 2012

    "Outlook is slow..." Here's some information on how to troubleshoot why.

    Neil Johnson - a rock 'n roll nerd.... - Outlook Performance Troubleshooting including Office 365

    "I have been involved in a number of discussions recently regarding Outlook performance troubleshooting in the cloud. Mostly these discussions were in the context of why the customer didn't want to move to the cloud since they figured it would be impossible to troubleshoot Outlook performance afterwards

    Discussion Summary:

    When we have clients and Exchange on terra firma we can monitor some performance counters such as RPC Average Latency on Exchange and use the Outlook and client performance counters to establish if a poor end user experience is being caused by the Exchange Server, the Network or the Client machine. If we move the messaging service out to the Office 365 cloud we can no longer monitor RPC Average Latency so we don't know if poor performance at the client is being caused by network or the Exchange server.

    Outlook Performance

    This started me thinking about how to deal with this situation and what items make up the client experience from an Outlook performance perspective.

    The following items can both have a fairly dramatic effect on Outlook client performance and either could cause the end customer to pick up the phone to support and say that "E-mail is slow".

    • MAPI RPC Latency
    • Client system performance

    If we make the assumption that our service is running in the Office 365 cloud, how do we go about determining the actual cause of Outlook performance problems?

    ...

    • MAPI RPC Latency
    • Client System Performance
      • Client CPU
      • Client RAM
      • Client Disk I/O
    • HDD Usage
      • Physical Disk\Disk Queue Length
      • Contiguous OST File

    ...

    image..."

    Some good information and things to look for when troubleshooting Outlook performance issues.

    SQL Server 2012 launches March 7th... with a free virtual launch event

    SQLServerLaunch.com

    On March 7th, 2012 this online event will allow you to immerse yourself in the exciting New World of Data with SQL Server 2012. Engage not only Microsoft product teams, but with our partners and our most ground breaking customers. SQL Server 2012 is part of the broadest Data Platforms in technology today. Discover how it enables mission critical confidence, blazing fast performance, and stunning interactive data visualizations.

    Global Virtual Launch Highlights

    • Watch & Learn

      • Learn more about the new features of SQL Server 2012. Our experts will demonstrate how your business can go further, forward, faster by capitalizing on Mission Critical Confidence, Break-Through Insights, and Cloud on you Terms.

    • Experts at your Fingertips

      • Chat live with product experts and MVP’s to get the inside scoop. Our team will be on hand to answer your questions about SQL Server 2012, network with you in the virtual lounge, and engage with you about key topics.

    • Engage with the Community

      • Harness the power of the Microsoft SQL Server community. Connect, share, and learn from global stakeholders who care about SQL Server just as much as you.

    • Win Cool Prizes

      • Participate in virtual launch activities like the keynote speech, technical demos and networking lounge and collect points. Points earn you the chance to win cool prizes such as cash gift cards, SQL Server Gear, and Xbox’s. The more points you earn, the bigger your prize will be!

    image..."

    Registered... :)

    2012 is looking to be an exciting year for releases...

    (Dandy Weyn's Blog - SQL Server 2012 Virtual Launch Event - March 7)

     

    Related Past Post XRef:
    The officially easiest way to play with SQL Server 2012... The SQL Server Virtual Labs
    SQL Server 2012 RC0 is now available. Here's a download link round-up.
    Playing with SQL Server 2012 the easy way, via a Microsoft and Amazon partnership for SQL Server 2012 on AWS/EC2 (Think "5 Minutes to Denali")
    SQL Server 2012 Edition and Licensing Revamp Round-up
    SQL Server 2012 Data Quality Services Slide Demo
    SQL Server 2012 (fka Denali) Developer Training Kit Web Installer Preview (Updated)
    "Introducing Microsoft SQL Server Code Name 'Denali'" Free (draft two chapter preview) eBook
    Want Denali CTP3 (aka next version of SQL Server)? Here's a Hyper-V VHD just for you (in 36 parts, but I've also provided direct download URL's for use in your DM of choice...)
    SQL Server Denali Sequence Object Overview
    SQL Server Denali Feature Watch - FORMAT(), as in, "OMG we finally get .Net like Number/Date/Time formatting in our TSQL" Or "Saying goodbye to my old friend, Convert(103)..."
    Time to start thinking about, and providing feedback on, what you’ll need to upgrade to Denali (aka next version of SQL Server)
    Denali CTP3 introduces LocalDB - Think SQL Server Express crossed with SQL CE (or SQL CE grown up or SQL Express made as almost as easy CE)
    SQL Server Denali FileTables Feature - The fruits of WinFS? (Think "A FileStream enabled table that you can access as a network file share and other standard File IO API's" or "SQL Server File System in a Table")
    A couple SQL Server ColumnStore references...

    INotifyPropertyChanged for the VB Control Creating Guy

    Visual Studio Magazine - Integrating with the .NET Framework UI Controls

    "The .NET Framework team obviously assumes you'll build your applications and the classes that make up your application a certain way. If you leverage those assumptions you'll get lots of cool benefits (and, if you don't leverage those benefits…well, you'll get to do a lot more work).

    For instance, the user interface controls you can drag onto your WPF or Silverlight forms (TextBoxes, DropDownList, and so on) assume that you'll bind class properties to them. Those controls look for specific features in your classes; if you build those features into your code, you'll get a lot of functionality for free. The benefit is that you can build those objects independent of your UI, which supports automated testing, parallel development and loose coupling between application components.

    One example of how you can integrate your classes with a XAML UI is the INotifyPropertyChanged interface. Adding this interface (and some code) to your classes gives you some almost magical benefits. For instance, if you have an object whose property is bound to and displayed in some user interface control, the control will automatically update in your user interface if you update the property from code. There's no need to do anything to make the user interface display the property's latest value: you don't need to update the control or call a Refresh method on the control (or the form).

    Adding the INotifyPropertyChanged interface to your class is easy:

    ...

    SNAGHTMLa65018c..."

    Good to see VB get a little love. I also like the re-use message... (i.e. how components let you DRY, help the S in SOILD, etc)

    UDACity Presents "CS101 - Building a Search Engine" online and free class...

    UDACity

    CS 101: BUILDING A SEARCH ENGINE

    Learn programming in seven weeks. We'll teach you enough about computer science that you can build a web search engine like Google or Yahoo!

    Description: This class will give you an introduction to computing. In seven weeks, you will build your own search engine complete with a web crawler and way of ranking popular pages. You will understand some of the key concepts in computer science, and learn how to write your own computer programs. No previous background in programming is expected.

    Week 1: How to get started: your first program
    Extracting a link
    Week 2: How to repeat
    Finding all the links on a page
    Week 3: How to manage data
    Crawling the web
    Week 4: How to solve problems
    Responding to search queries
    Week 5: How programs run
    Making things fast
    Week 6: How to have infinite power
    Ranking search results
    Week 7: Where to go from here
    Exam testing your knowledge

    image

    While I don't really have the bandwidth to attend this, I think it's too cool to pass on too... (sigh... stupid slow brain... ;)

    While you're there also check out, "CS 373: PROGRAMMING A ROBOTIC CAR, In seven weeks you'll learn how to program all the major systems of a robotic car, by the leader of Google and Stanford's autonomous driving teams."

    (via Jason Haley - Interesting Finds: January 23, 2012)

    Saturday, January 21, 2012

    3D Food Printer (Chocolate!) now available for purchase...

    Gizmodo - A 3D Printer That Works With Chocolate? Now You’ve Got My Attention

    "Instead of the toxic smell of melted plastics, while the Imagine 3D printer is doing its thing, your workspace will be filled with the aroma of delicious confections. Because its printing head uses syringes that can be filled with chocolate.

    I understand that 3D printing is probably the future of manufacturing, but until now I've found it kind of difficult to really get excited about the technology. However, being able to print off a chocolate bunny whenever the craving hits?—even if it's not Easter?—now you're speaking to my needs.

    ..."

    Essential Dynamics

    The Imagine 3D Printer:

    1. Comes fully assembled
    2. Prints with a whole host of materials, including food, chocolates, silicone, cheese, epoxy, organics, etc.
    3. It is a syringe based design. If it extrudes, it prints.
    4. Imagine is only $2,995

    We have a very long pre-order list, but as a special during CES 2012, we have simultaneously initiated a second order list. If you order during CES 2012, your order will be placed in this batch and processed faster. Order Now!!

    We are developing a whole host of products to go with Imagine. Sign-up on our community website Mongasso.com to get all the latest details. 3D Printing is about to go personal. Join the Revolution. Sign up here!!

    image

    Now marry this up with the Kinect for Windows (to help create the 3D models) and a shopping mall kiosk and we're printing money... :)

    I wonder if I can talk my wife into "investing" in one of these? LOL

     

    Related Past Post XRef:
    Willy Wonka's factory coming to your home soon? A 3D Chocolate Printer...

    Speaking of Dev video resources... UserGroup.tv (with "State of .NET - The Road to Windows 8" now available)

    UserGroup.TV

    Welcome to UserGroup.tv!

    This week on UserGroup.tv

    • 108) 01/16/2012 The State of .NET - The Road to Windows 8 by Markus Egger

    UserGroup.tv is your 1 stop source for recorded User Group presentations and materials. Over the past decade that I have been involved in the software development community I have attended many wonderful presentations, just to arrive at work the next day forgetting a key piece of information, or wanting to share some of the content with a coworker. The goal of UserGroup.tv is to capture those presentations and post them online available for FREE for members of the community to watch. Providing this content will also provide exposure to groups and speakers that members of the community would not normally have access to, or know about.

    image

    UserGroup.TV - Videos

    SNAGHTML2dbdf2

    image

    UserGroup.TV - State of .NET - The Road to Windows 8

    SNAGHTML314bee

    Speaker: Markus Egger

    Abstract/Bio:

    The industry is in a state of flux. What does that mean for your software projects today and tomorrow? Will your skills be outdated? Will your current investment become obsolete? What should you focus on right now? And what will become important a year or two down the road? Will there be .NET in the future? And what other technologies do you need to learn?

    This free event attempts to answer these questions and more, by taking an unbiased look at current and future development with .NET and other relevant Microsoft technologies. This includes Visual Studio 2010 technologies as well as an in-depth look at what is coming in the next version of Visual Studio (“VS11”) and Windows 8.

    ...

    Topics Include:

    • Windows 8
      • Metro Development
      • The impact of Windows 8 on today’s development effort
      • The future of C# and VB
      • The future of HTML and JavaScript
      • The future of C++
    • WPF, Silverlight, and other XAML technologies today and tomorrow
    • Architecture to serve the needs of modern applications
    • The need for SOA (Service Oriented Architecture) today and tomorrow
    • HTML 5, CSS3, and JavaScript
    • ASP.NET MVC, Razor and jQuery
    • “Visual Studio Async”
    • Windows Phone 7 and other mobile devices
    • and more!

    This is a video resource that I've heard mentioned but never visited. Shame on me... Am following the video feed now to catch future additions and I'll also be back to catch up on the stuff that's already there...

    BTW, I caught this presentation when Markus gave it in Los Angeles. It's a pretty darn good session if you're thinking about Win8 dev.

     

    Related Past Post XRef:
    A Dev Girl's Dev Video Round-up

    Get your WiX fix now on WiXToolset.org

    RobMensching.com /Blog because setup isn't just xcopy - The wixtoolset.org online.

    "It is with great pleasure that I announce the WiX toolset's new home is fully operational: http://wixtoolset.org. This site is now our central hub for information about the WiX toolset. We will consolidate the WiX content that makes sense and link to the WiX content hosted elsewhere. The most important feature back online right now is the weekly releases.

    For a long time, the wixtoolset.org domain served as a placeholder for what finally launched today. ..."

    WiX Toolset 

    The WiX toolset builds Windows installation packages from XML source code. The toolset integrates seamlessly into build processes.

    image

    WiX Toolset  - About

    About the WiX toolset

    WiX--the Windows Installer XML toolset--lets developers create installers for Windows Installer, the Windows installation engine.

    • The core of WiX is a set of build tools that build Windows Installer packages using the same build concepts as the rest of your product: source code is compiled and then linked to create executables; in this case .exe setup bundles, .msi installation packages, .msm merge modules, and .msp patches. The WiX command-line build tools work with any automated build system. Also, MSBuild is supported from the command line, Visual Studio, and Team Build.

    • WiX includes several extensions that offer functionality beyond that of Windows Installer. For example, WiX can install IIS web sites, create SQL Server databases, and register exceptions in the Windows Firewall, among others.

    • With Burn, the WiX bootstrapper, you can create setup bundles that install prerequisites like the .NET Framework and other runtimes along with your own product. Burn lets you download packages or combine them into a single downloadable .exe.

    • The WiX SDK includes managed and native libraries that make it easier to write code that works with Windows Installer, including custom actions in both C# and C++.

    Good to see the steady movement and growth of WiX...

    Do you YouTube with Expression Encoder? Here's something that will help make that even easier...

    Expression - Gallery - Expression Encoder Publisher for YouTube

    This plugin provides the user the ability to upload videos to YouTube from within Expression Encoder 4.

    image

    This prompted me to check out what else is there in the Express Gallery... There's a good bit of cool looking stuff there.

    image

    (via Secret Microsoft Communications - Check out this plug-in for Expression Encoder)

    DrawingBoard2 - A .Net GDI+ Drawing component (with source)

    Nazmi Altun's Blog - .NET GDI+ Drawing Component : DrawingBoard2

    In one of my projects i have needed , a gdi+ drawing library for drawing simple geometrical shapes. So, found this graphical editor, KLONK Drawing Board . Its written in C# and GDI+ is used for drawing. It isnt a great component, but it was the most extensive open source project i 've found.It has many features , but it has no documentation and source code is a bit difficult to understand. I also couldn't find some shapes i need, such as Triangle . So , i've created my version , DrawingBoard2.

    DrawingBoard2 is recomposed version of KLONK Drawing Board . A few features are also added.

    image

    What's new in this version?

    • New polygon shapes are added : Triangles( Right triangle and , Equaliteral triangle) , Hexagon, Pentagon, Trapezoid and other polygons.
    • Pie shape is added.
    • Table is added.
    • 3D Cube shape is added
    • Cartesian Plane is added
    • XML Serialization feature. Now shapes can be serialized/deserialized in XML format
    • Bitmap export. Now , drawing board can be exported as bitmap file.
    • Source code is recomposed , and documented

    I thought this project and control pretty cool and the fact the source is available even cooler. This isn't the kind of control you see often...

    Here's a snap of the sample project

    SNAGHTML25493cb5

    And of it running (which ran for me the first time);

    SNAGHTML254a3871

    Here's just a taste of what can be drawn;

    image

    A Dev Girl's Dev Video Round-up

    Helephant.com - Places to get good developer videos

    "Part of the awesome that is where I work is an hour a week where developers can get together and chat about what we’ve been up to with the idea of spreading ideas around the different teams. One of the regular things we do is watch a video about a new technology, pattern or practice that we’d like to know more about. Right now I run the testing and automation stream and have found it a bit of a pain to always have something new to talk about, so I’ve put together a list of interesting places to find developer videos.

    This is just a starting point, hopefully I’ll keep updating it as I actually try out the videos and find more places to get good content.

    image..."

    Some free, some not... Found a couple new sites here myself. :)

    Friday, January 20, 2012

    [Humor] Sh.. um... Stuff Project Managers Say...

    Agile Scout - [Humor] – What Project Managers Say and Talk Like

    LOL... So, so, so true...

    Windows Phone 7 Game Development Starter2D and Starter3D tutorials available in the Marketplace, video and source too!

    Dark Genesis - The Starter2D and Starter3D tutorials now on the Marketplace

    "I finally managed to get my Marketplace account sorted for my own indie game studio ZenithMoon and while prepping to release my first proper app/game I thought it would be good to publish my 2D and 3D tutorial projects on the marketplace for FREE at the same time.

    What follows is a brief post about what it took to get these up there and my plans for the future of them, it will be brief because I’m currently in the middle of a release cycle for my proper app (I’ll mention that at the end)

    ...

    Now what makes these significant especially in light with my recent SilverXNA tutorial series is that I published both the XNA (GameStateManagement) versions of these app as well as SilverXNA variants of these as well.

    As expected all the source code is available for these projects on Codeplex as a separate project here.

    A few points though about each project.

    Starter3D and Starter2D games - XNA Versions

    I’d already dropped the 3D project into a GameStateManagement style game framework when I did the tutorial series and everything worked fine, I just had to prop up a few things for marketplace submission such as:

    • Audio – this was a common theme for all the apps so I constructed a separate audio manager I could use to manage Audio, the biggest thing for the marketplace if the “GameHasControl” variable. If your app/game does not have control, do NOT play background music (effects are ok)
    • Fast App Resuming – Granted while most will tell you do not have to do anything except recompile your app to enable Fast App Resuming, the reality is that if you don’t handle it correctly it will Frig up your app/game. The thing to watch for are the Activated and Loaded events and how you manage Loading Content. Just be sure to add the check on the “Activated” for “e.IsApplicationInstancePreserved” and basically do NOTHING if it’s true, also set a static flag in your code and test this against anything that needs to initialise or load content. (this includes playing background audio!, by default playing background music will not resume)

    ...

    Starter3D and Starter2D – SilverXNA Versions

    Now this is where the fun began. First off to begin with my initial objective was just to get the XNA games running under Silverlight using the Silverlight/XNA integration and a Silverlight Menu, I'll enhance the rest of the project overtime to use more Silverlight in the actual XNA game.

    I started with the 3D version as this was the easiest when updating the XNA version and it was a breeze, the problems faced were the same it just took a different approach to deliver them, no biggie. The main part of the work was putting in some screens for the menu options (no flair this time round) and launching the game plus handling the back button correctly while moving between them. I actually omitted one of the marketplace requirements about the Back button pausing the game however I explained this on submission and it passed anyway. but in your real game projects you should handle this!.

    ...

    image..."

    Starter XNA Game Projects

    Source code for the Starter XNA Game Project

    The Video tutorial for the 3D project can be found at the Dark Genesis blog hosted on XNA-UK.NET here:
    http://bit.ly/nWNiYD [AT&T Meet the Expert - Build a XNA Game in 60 minutes]


    The Tutorial series for the 2D project can be found at the Dark Genesis blog hosted on XNA-UK.NET here:
    http://bit.ly/gmivLx [ReCap–The XNA 2D “from the ground up” tutorial series]

    I thought this a very cool project, series and tutorials. If you're doing Windows Phone 7 game dev, this might be easily worth some checking out...

    I always wanted a racecar bed... Will today's kids want this kind of bed instead?

    Mashable - The Facebook Bed: Slumbering for Social Networking Fanatics

    For those so obsessed with social networking, behold the Facebook bed.

    This concept by Croatian designer Tomislav Zvonarić is only in model form right now, but his creative vision mixes comfort with functionality.

    The “F”-shaped bed touts a Facebook-logoed pillow and a comforter with familiar icons, such as Facebook’s birthday notification image. The logo also appears three times on the bed itself — one on each side, as well on the flat part of the upper curvature of the “F.”

    A work area is also built into the space, allowing users to check Facebook updates on their computer while sitting in the upper section of the letter. Other amenities include a keyboard holder, a shelf for a mouse and a slight indentation for a computer screen. In addition, a chair — with a red-colored cover, also featuring a Facebook logo — is nestled into the upper part of the “F.”

    ...

    image..."

    As a kid I always dreamed of having one of those really cool racecar beds. You know that ones I talking about right? Seeing this, I wonder if today's kids would dream of this kind of bed instead? :/

    [Awesome Rug] The demon is in the... rug...

    Winextra - The Demon rug is the perfect gag to punk your friends with when they visit

    "We all love to be able to pull a fast one on our friends at some point or another and while missmonster over on deviantART may just have wanted to have a really cool rug just think of how you could freak out your friends with it when they come to visit.

    The face, ears, claws, and teeth are all hand sculpted and hand painted. The head base is a foam taxidermy form and the fur, originally grey, has been airbrushed. This beastie measures 77″ long and 87″ wide; and I have to admit that the first thought I had when seeing this was someone had gone to Skyrim and back.

    image..."

    That's awesome and I so want one. Or maybe a rug of other famous movie/book/game monsters? hum... that's got to be a business someone is running already, right?

    (via Geekologie -> Demon Skin Floor Rug is Extraordinarily Evil and Incredibly Awesome -> Demon rug complete 3)

    Thursday, January 19, 2012

    A "Get right to work introduction to Lucene.Net"

    codeguru - Introduction to Lucene.Net

    "What is Lucene.Net?

    Lucene.Net is an exact port of the original Lucene search engine library, written in C#. It provides a framework (APIs) for creating applications with full text search.

    Lucene.Net can be downloaded from http://incubator.apache.org/lucene.net/download.html. Currently it is undergoing incubation at Apache Software Foundation (ASF).

    Why Use Lucene.Net?

    You can use Lucene.Net to add more power to an already existing search in your ASP.Net web application or website. It can also be used to index and search documents (word, pdf, etc.) within your application.

    This article describes how we can use Lucene.Net to add full text search in our ASP.Net applications. Any search function consists of two basic steps, first to index the text and second to search the text. We will use Lucene.Net to do both of the steps.

    In this example we will try to read the content of a text file and index it using Lucene.Net. First download the dll and add a reference to the project.

    ...

    image..."

    I liked this "get right to work" introduction to Lucene.net, pretty short sweet yet enough code to get started. Nice.

    Moving up in the world, from VirtualPC to Hyper-V? Here's how to keep your VM's happy.

    Stephen Kaufman's WebLog - Can you move a Virtual Machine from VirtualPC to Hyper-V?

    "I was recently asked if I could help move a virtual machine that had been setup and running in VirtualPC and move it to run under Hyper-V.

    The answer is yes it can be done. Movement from Hyper-V to VirtualPC is not as easy (and many times not possible) but there are a number of blog posts on this topic already so I won’t cover that here. One of the reasons that it is easier to move from VirtualPC to Hyper-V is that VirtualPC is only 32 bit.

    There are a number of steps that must be occur for a successful move.

    ...

    image..."

    I'm hoping to have to make this move in the coming year, to move my VirtualPC images (I do my VB6 dev in a WinXP VirtualPC image... sigh) to Hyper-V and so thought this post would come in handy then...

    Outlook Facebook Social Connector Updated (HTTPS added)

    Outlook Blog - Important: Update your Outlook Facebook Connector

    "Recently, we released a small update to the software that connects the Outlook Social Connector to Facebook. If you already use the Outlook Social Connector to connect to Facebook, you can get the software update in our download center.

    If you don't use Outlook Social Connector, you should try it out. It integrates your contacts and email messages in Outlook with status updates from social networks in one single place for you to view.

    The really good thing about the update is that it lets you connect to Facebook over a secure network connection--called an "https" connection. That's the kind of connection that banks use when you visit their sites. So get the update today." [GD: Post Leached in Full]

    Microsoft Downloads - Microsoft Outlook Social Connector Provider for Facebook

    "Connect your Facebook account to the Outlook Social Connector and stay up to the minute with the people in your network by accessing everything from e-mail threads to status updates in one single, centralized view.

    Version: 14.0 [GD: I think the full new version number is 14.0.6114.5003]
    Date Published: 1/17/2012

    OSCFB-x64-en-us.exe, 9.7 MB
    OSCFB-x86-en-us.exe, 12.0 MB

    The Microsoft Outlook Social Connector Provider for Facebook allows you to connect your Facebook account to the Outlook Social Connector and obtain information about your friends and colleagues. You can see status updates and recently posted items from your Facebook contacts.

    You can also use Outlook Social Connector to display a quick view of related Outlook content when you click on an email from a contact, such as recent e-mail conversations, meetings, and shared attachments to help you easily track your communications

    NOTE: The Microsoft Outlook Social Connector Provider requires Microsoft Outlook Social Connector and the related update (KB983403) to be installed. If these components are not already installed on your machine, the Microsoft Outlook Social Connector Provider for Facebook will download and install the necessary updates from the Microsoft Download Center before completing the provider installation.

    ..."

    I saw this update but there was nothing I could find, until today, that talked about WHY I should update, what the new features or changes were, etc.

    Using https for the Facebook connection is a big deal and it would have been nice if that was made clear on the download page. But I guess better getting the details late than never.

    Note that when I installed it, it's saying it's version 14.0.6114.5003

    image

    I'd say that if you have this feature enabled you should get this update. HTTPS is good...

    SkyDrive API Link Round-Up

    Secret Microsoft Communications - Free: Links to APIs and information about SkyDrive

    "Doing some research on how to build an app that uses Skydrive, think leaderboard for games, and the search for useful items turned up a bunch of flotsam (which is different than jetsam by the way). So here are some of the links I think might be useful, I have looked at most of them...

    image..."

    I've got a couple SkyDrive related projects in my mental queue and thought that once I get started on them that the links in this post would help me hit the ground running...

     

    Related Past Post XRef:
    Code sample to access SkyDrive Photos API from WP7 (or any REST/OAuth/JSON enabled device/OS)
    More information on integrating Windows Live, Hotmail and SkyDrive with your App's

    Wednesday, January 18, 2012

    One Dev's Top VS Extensions List (In case you're looking for recommended VS extensions for some reason... ;)

    Midnight Programmer - Top Visual Studio Extensions

    "Visual Studio comes up with loads of stuff making everyday life of a developer easy. But there are few extensions which Microsoft and other developers have created and are available for free to the community members. I have compiled a list of free and powerful extensions which will take your programming experience few more steps ahead with Visual Studio.

    ...

    image..."

    Most of the more common extensions but some you might not have seen before. And if you're looking for recommendations for extensions to install for some reason this is a nice round-up... :P

    Ding! Achievement earned. :)

    image

    (via Alvin Ashcraft's Morning Dew - Dew Drop – January 18, 2012 (#1,245))

    Comfortably numb... MVVM'ing Enums in ComboBox

    The Angry Programmer - MVVM ComboBox with Enums

    "I decided to write an MVVM version of binding enum values to a ComboBox for WPF. I know there are lots of examples of how to put enum values into combo boxes, but most of them either use ObjectProvider or derive their own class from ComboBox. I don’t like inheritance, I prefer extending classes, as it keeps things cleaner and lets you choose whether to use the facility or not.

    To that end, I have come up with a behaviour to populate the ComboBox with enum values.

    We’ll start off with the enum I’m going to use called JobTitles.

    ...

    image..."

    This is something I have to fight with from time to time and I liked seeing a different approach to solving this.

    Lots-O-emote's in WPCentral's complete WP7 emoticons list

    WPCentral - Exclusive: The complete Windows Phone emoji list

    Back in November, Windows Phone team blogger Michael Stroh teased users with some cheat sheets to many of the emoticons or emoji (Japanese) built right into the Windows Phone platform. He didn't share them all, though. Not content with waiting around for more blog posts, we decided to dig through the operating system, not stopping until we found the rare and beautiful emoji. And found them we did.

    WPCentral is proud to present the complete list of emoji present in Windows Phone 7.5 ("Mango").

    wpcentral_the_complete_list_of_emoji..."

    There an app for that? :P  (Sorry...)

    (via everythingwp - The Complete Windows Phone Emoji List)

    Learning RegEx - Grouping and Backlinks

    Switch on the CodeRegular Expressions - Grouping

    As we learned in our Regular Expressions Primer, regular expressions can be simple or extremely complex. However, there are a few concepts that were left out. Today we are going to cover one of those concepts... grouping.

    In regular expressions, grouping allows you to "chunk" parts of your expression and tell the regular expression engine to treat each "chunk" as a separate match. This allows you to, say, find the type of domain (com, eu, biz) of an email address, or possibly whether or not the uri is using encrytion (https). There are a whole lot of reasons you want to use grouping, but enough talk, let's get to it. Today we will be using PHP yet again, but grouping is supported by any self-respecting regular expression engine.

    The Basics of Grouping

    Grouping is implemented with ()s. Anything inside the parentheses are considered a group, and are tracked by the order in which they appear in the expression. So if I have two groups, whichever appears first (from left to right) will be marked as match one, and match two will be the one that appears next. Some engines even allow sub-groups, but for today we will stick to single-scope groups.

    ...

    Back References

    When we are talking about regular expressions, back-references are references to groups that you can reference when replacing matches. In order to use back-references, you have groups defined in your expression.

    Taking the example above, let's say we want to replace all the domains in a set of emails with "awesomesite". In PHP you use the preg_replace function, which uses regular expressions to replace text in a string. Let's check out how to use back-references to replace the domain in our email.

    ...

    image..."

    [Insert my usual, "I don't RegEx enough to remember this so I'm captuing this here so I can find it in the future the next time I have to RegEx" statement block here]