Welcome to MSDN Blogs Sign in | Join | Help

WPF Chart Controls!!!

NOTE: This was cross posted from here.

YES!  WPF officially has charting controls now:).  There’s a new release of the WPF Toolkit:

WPF Toolkit - June 2009 Release

Bug fixes PLUS CHART CONTROLS!

Web-based mapping tool gets government data via API from OGDI: http://visualfusion.cloudapp.net

Microsoft partner IDV Solutions has created a terrific mapping overlay tool that can get map data from any KML source.

Since OGDI natively emits KML, its a great demonstration of web standards enabling open government data.  They’ve included DC data from OGDI, and some national data (parks, earthquakes), but you can easily add any KML data set just by entering a URL.

Go to http://visualfusion.cloudapp.net to see it in action!

As always, we’re ready to work with any government organization that wants to take our OGDI code and implement their own version of http://ogdisdk.cloudapp.net, send an email to askogdi at microsoft dot com and we’ll hook you up.

If you have any questions or comments about OGDI, use the askogdi address, we’d be happy to hear from you!

-Keith

FOLLOW UP: Developer Dinner on OGDI

NOTE: This was cross posted from here.

Thanks to everyone who attended Developer Dinner showcasing our work on the Open Government Data Initiative (OGDI).  Here are the follow up links we promised:

OGDI Developer Dinner.pptx

FlexEntities.zip

-Marc

Microsoft Developer Dinner Series for Partners Presenting: Microsoft Open Government Data Initiative – Cloud Computing, REST, AJAX, CSS, oh my! - June 24, 2009 - Reston, VA

Speakers

Marc Schweigert, Developer Evangelist 

James Chittenden, User Experience Evangelist

Vlad Vinogradsky, Architect Evangelist

Microsoft Corporation, US Public Sector Developer and Evangelism Team

 

Venue:

Microsoft Innovation & Technology Center

12012 Sunset Hills Road

Reston, VA 20190

 

Date:

June 24, 2009 6:00PM - 8:00PM

Register today!!

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032417570&Culture=en-US

 

Abstract

As data becomes both increasingly necessary and readily available in response to demands for transparency, collaboration and participation within government agencies and organizations, methods need to be developed to allow for interaction with that data. To help public sector entities meet these demands, Microsoft announced the Open Government Data Initiative (OGDI) on May 7, 2009. OGDI provides an Internet-standards-based approach to house existing public government data in Microsoft’s cloud computing platform, called Windows Azure. The approach makes the data accessible in a programmatic manner that uses open, industry-standard protocols and application programming interfaces (APIs).

Typically, federal, state and local government data is available via download from government Web sites, which requires citizen developers to host and maintain the data themselves. Through OGDI, Microsoft is highlighting the importance of programmatic access to government data (versus downloading the data). When government agencies provide programmatic access to data, people who want to build solutions that use that data will benefit from these capabilities:

 

The ability to write programs that access data via Web-friendly programming methods without having to download or host the data

The ability for governments to automatically refresh data without having to buy and maintain servers

The ability to write applications using any technology via open standards

Easier access to a broad array of government datasets, which will enable them to build new and unique applications

What you will learn

OGDI uses the Azure Services Platform to make it easier to publish and use a wide variety of public data from government agencies. OGDI is also a free, open source ‘starter kit’ (coming soon) with code that can be used to publish data on the Internet in a Web-friendly format with easy-to-use, open API's. OGDI-based web API’s can be accessed from a variety of client technologies such as Silverlight, Flash, JavaScript, PHP, Python, Ruby, mapping web sites, etc.  Join the development team for pizza, soft drinks, and a recap of OGDI design decisions and implementation highlights. You will also learn about some of the technologies used on the project, such as Windows Azure, ADO.NET Data Services, ASP.NET AJAX, jQuery, CSS development using Visual Studio 2008, Virtual Earth, and code generation with T4 templates.

Who Should Attend

Architects, Developers, Designers and anyone who is interested in building innovative applications, visualizations and mash-ups that empower citizens with improved access to government information and help make transparent, collaborative and open government a reality!

 

-Nandita

WEBCAST: Microsoft and IDV Solutions at Work for the Enterprise

NOTE: This was cross posted from here.

Jerry asked me to help spread the word.

“…

Visual Fusion from IDV Solutions combines with Bing Maps, SharePoint and other Microsoft technologies to create a visual mashup platform, empowering organizations to unite data from otherwise incompatible sources - enterprise data stores, Web feeds, spreadsheets and more - into rapidly-built, interactive and collaborative applications that provide a single view of the data.

Join the Microsoft Bing Maps team, IDV Solutions and Directions Media for a complimentary webinar that discusses how the Bing Maps and Visual Fusion technologies can help you plan, predict and respond quickly, plus efficiently manage and analyze the overwhelming amount of data that flow through your agencies and departments on a daily basis.

…”

Details here.

-Marc

SnagL: Visualizing Government Data using Silverlight

NOTE: This was cross posted from here.

My job at Microsoft is to focus on developers building software for the U.S. Government (directly or indirectly).  When talking to folks about Silverlight, I get asked quite often whether it is being used on U.S. Government networks (including classified networks) all the time.  You can imagine, due to the potential sensitivity of the customers/question, this is hard to answer other than “Yes, in many places.”  That’s why I am excited to have published an interview with Berico Tailored Systems about their product called SnagL.  Here is the interview description:

SnagL, from Berico Tailored Systems, is a thin client collaborative link analysis tool, which can be integrated with any existing tool or data repository.  Advanced analytics, like clustering and ranking, enables users to intuitively navigate massive amounts of data through a thin client in a web browser.

SnagL is used by U.S. Government customers to help visually analyze, determine relationships in, and make decisions based on data.  Watch the interview with members of the team to learn about the product, see a demo of it in action, and how it uses Silverlight to deliver compelling data visualizations that go beyond what you might expect from a browser based application.  The team also gives you a history of their early adoption of Silverlight, evolution of SnagL, and how Silverlight enabled them to “see things you wouldn’t normally see just looking at the data.”  They also talk about how Silverlight gave them a level of performance and visualization in the browser unmatched by their previous approaches.  Finally, the team shares their excitement to start incorporating capabilities coming in Silverlight 3.

You can watch the interview at http://tinyurl.com/Ch9SnagL.

-Marc

Education data set now on OGDI (http://ogdisdk.cloudapp.net)

The OGDI sample site now contains education data from the Federal Education Budget Project sponsored by the New America Foundation.

In this case, we just re-hosted the data that they already have for viewing, but now its available for API access so that people *and* software can query it, mash it up, etc.

To see the data, just navigate to http://ogdisdk.cloudapp.net/DataCatalog.aspx, and choose New America Foundation from the combo box.  Pictured below:

image

Win a ‘Govie Award’ – Submit an Innovative Gov 2.0 Application

Build innovative applications and help make transparent, collaborative and open government a reality!

Gov 2.0 Expo Showcase is scheduled to take place on Sept. 8 in Washington, D.C., in conjunction with the Gov 2.0 Summit, an ‘invite-only’ brainstorming get-together of technology and government leaders. The events are co-produced by O'Reilly Media and TechWeb. Federal CIO Vivek Kundra, Army CIO Jeffrey Sorenson and Microsoft Chief Strategy Officer Craig Mundie will be among the featured speakers at the Gov 2.0 Summit.

The Government 2.0 Summit and Expo showcase will focus on the principles of participation, collaboration, and transparency to help reshape the way government business is conducted by enabling citizens to participate in government deliberations and decision making through the effective use of technology. The Gov 2.0 Expo Showcase encourages government-technology architects, developers, IT managers, and other leaders to showcase their real-world projects. Gov 2.0 Expo Showcase will feature 20 projects, in five categories: process, provider, partner, protector, and peacemaker. Information on the event and how to submit your proposals for consideration can be found here. Speakers selected for the Gov 2.0 Expo Showcase will give five-minute presentations, and a "Govie Award" will go to the top project in each category.

If you are interested in participating in this event and are looking for some ideas to develop applications to showcase, you are welcome to explore the Open Government Data Initiative (OGDI) from Microsoft at http://www.microsoft.com/industry/government/opengovdata/ . Check out a cloud based reference application built using the Azure Services Platform at http://ogdisdk.cloudapp.net/ . OGDI is a free, open source ‘starter kit’ that can be used to publish data on the Internet in a Web-friendly format with easy-to-use, open application programming interfaces (API's). OGDI-based web API’s can be accessed from a variety of client technologies such as Silverlight, Flash, JavaScript, PHP, Python, Ruby, mapping web sites, etc.

-Nandita

Talking Points: Building App Using .NET Workflow

Windows Workflow Foundation

Windows Workflow Foundation first shipped as part of .NET Framework 3.0, and allows you to add workflow capabilities to your applications. Workflow can be described as the ability to describe some set of coordinated work with minimal of fuss/description. In other words, declaratively. It is especially well suited to apps that are long-running and stop and start execution.

There is a runtime, programming model, and tools/designers for adding workflow capabilities to your applications. You can visually design and debug your workflow in Visual Studio and you can also re-host the workflow designer in a different application. Workflows themselves consist of a set - or tree - of activities defined either in terms of .a NET class or as XAML. Each activity can be thought of as a program statement similar to those you use in code. There is a built-in activity library that includes the IfElse, While, Throw, and Sequence activities, etc. but you can also define your own custom activities.

The WF runtime is in charge of workflow execution, creating and managing running instances of workflows. It is dependent upon a set of services, such as the persistence service, that can save workflow state when a workflow is idle, and the tracking service that enables you to track a running workflow. The runtime can be hosted in any .NET AppDomain, including IIS and WAS.

The .NET Services Workflow Service is yet another environment where you can host the WF runtime and execute workflows, only this is not running on-premise but in the cloud, on machines and data centers operated and maintained by Microsoft. Running your own servers gives you full control but it can be challenging. For example, how do you make sure no workflows are “lost” when doing machine maintenance. What the workflow service provides is a means to execute workflows with high availability and scalability with a very low bar to entry.

Service Bus Workflow

Service is a reliable and scalable host for workflows that runs in the cloud. Workflows run across a distributed overlay fabric in the Microsoft data centers and workflows are persisted using of SQL Services. You can upload and manage workflows using the workflow portal.

You can use a subset of the Windows Workflow activities available in .NET Framework 3.0 and 3.5 plus some new activities provided as part of the .NET Services SDK.

Besides the portal, there is a client API and a SOAP API that enable you to do all your maintenance of workflow types and instances programmatically as well.

Once you have a workflow in the cloud you can connect to it from anywhere on the Internet using the Service Bus. This can be from inside your enterprise but you can also allow your partners and customers to have access. Like the Service Bus, the Workflow Service is integrated with the Access Control Service so you can determine exactly who has access to the workflow.

There are new activities for the Azure Services Platform. In the current CTP there are 7 new activities. For example, there’s one for sending a message to the Service Bus. There is a subset of WF activities that you can use in cloud-based workflow. In the coming CTPs we will be adding to this set of activities. Note, however, that currently it’s not possible to create custom activities and run them in the cloud. We will be adding this ability later.

The workflow designer is the same as you use for WF - you use the same tools in Visual Studio and you create a sequential workflow the same way as you do for WF. There is not yet support for state machine workflows. You could also just create the XAML by hand or using some other tool.

Once you have built your workflow in the workflow designer, you can deploy, run and manage that workflow in Service Bus Workflow using Visual Studio, the portal and the management APIs.

Building Workflows (Activities)

Here is the complete list of workflow activities available in the current CTP, from the Microsoft.Workflow.Activities namespace:

  • CloudDelay: This activity provides the logic to establish a timer and wait asynchronously for the timer expiration.
  • CloudHttpReceive: This activity receives an HTTP request at the URI http://workflow.windows.net/workflowsHttp/<SolutionName>/workflows/<WorkflowTypeName>/instances/ <InstanceId>/<ActivityName> and returns a response. The HTTP listener uses Access Control Service and the operation name "Send".
  • CloudHttpSend: This activity sends an HTTP request and returns the response.
  • CloudServiceBusSend: This activity sends a message to the Service Bus and returns a response if appropriate.
  • CloudServiceBusReceive: This activity subscribes to a Service Bus URI address. This causes all the messages sent to that topic to be forwarded to the activity.
  • CloudXPathRead: This activity reads the result of executing an XPath expression on an XML string.
  • CloudXPathUpdate: This activity updates an XML element's value in an XML string based on an XPath expression.

The reason there is a CloudDelay rather than using the WF Delay is that there are issues – to be corrected in WF 4.0 – in the scalability of the Delay activity and it is tied to the Timer service. This is in essence what we have to do for all the WF activities – make sure that when they run in the cloud they scale appropriately and work correctly in a multi-tenant environment.

The Xpath-based functions enable you to do message inspection and therefore content-based routing.

There is a CloudWorkflow project type added to Visual Studio when you install the .NET Services SDK. You use this to create a Cloud Sequential Workflow Root activity (in which all the other activities are contained) using the Visual Studio template. Workflows and rules are described in terms of XAML – not as a .NET type as is possible in WF – and it is this XAML that is deployed to Service Bus Workflow .

Deploying Workflows

There are three ways to deploy workflows:

  • The Workflow Service portal
  • Workflow client API installed with the .NET Services SDK
    • Both of these use the SOAP API for the Workflow Service. The client API is a proxy for the web services.
  • The third option is to use the Visual Studio one click (right) deploy (or deploy and run)

Scenarios

Let’s look at some scenarios to illustrate what we can do with the Workflow Service today.

Service Orchestration:

The first scenario is where we’re calling a collection of services, sending a message and getting results back. Currently, there are two activities you can use for this: CloudHttpSend and CloudServiceBusSend.

CloudHttpSend Activity

The CloudHttpSend activity sends an HTTP request and returns the response. It has 6 properties:

  • Method: the HTTP method (GET or POST)
  • Request: the request body content (ignored if the method is GET).
  • RequestContentType: the request content type (ignored if the method is GET).
  • URL: the URL for sending the HTTP request to.
    • And when the activity completes the following properties are populated and you can bind the values to the next activity:
  • StatusCode: the activity sets this value to the returned HTTP status code.
  • Response: the activity sets this value to the returned HTTP content.

CloudServiceBusSend Activity

The CloudServiceBusSend activity sends a message to the Service Bus and returns a response if appropriate. It has 5 properties:

  • Action: the Action SOAP header for the Service Bus message.
  • Body: the XML content to include within the SOAP Body of the message.
  • ConnectionMode: the connection mode to connect to the Service Bus. The connection mode can be either Multicast or Tcp.
  • URL: the Service Bus URL to send the message to.
  • Response: the activity sets this value to the returned SOAP response body, if any.

CloudServiceBusReceive Activity

The CloudServiceBusReceive activity subscribes to a Service Bus topic. Messages sent to that topic are forwarded to the activity.

  • The message property contains the message received from the service bus.
  • The queue name property contains the name of the queue to which the host will route messages

Message Content Inspection

The workflow service has a couple of activities that enable us to inspect the contents of a message and thus make decisions on how the workflow proceeds (content-based routing). For example, a workflow receives messages containing student test scores. We can search the message for a score and decide whether to pass or fail the student based upon that score. At that point we send a message to the Service Bus, using CloudServiceBusSend, saying whether student passed.

CloudHttpReceive Activity

For the workflow to receive a message we use the CloudHttpReceive activity. This activity receives an HTTP request at this unique URI and returns an HTTP status code and a response. The HTTP listener uses the Access Control Service and so the header of incoming messages needs to contain an Access Control Service authentication token.

The 3 properties on the activity are:

  • Request: the content of the received HTTP request. This property is set by the activity when a request is received.
  • StatusCode: the HTTP status code to return in response to the HTTP request.
  • Response: the HTTP content to return in response to the HTTP request.

It is the Request property that contains the XML we need to parse to decide whether a student passes. We bind to this property using the standard activity binding in the next activity and process the contents…

The activity that parses the XML is the CloudXPathRead activity, which executes an Xpath expression on the incoming XML. Its properties are:

  • InXml: the input XML to read a value from.
  • InXPathExpression: the XPath expression to be used in querying the InXml property.
  • OutReadValue: the result of executing the XPath expression. So we bind the request property of the CloudHttpReceive activity to the InXML property of the CloudXPathRead activity and then execute our Xpath expression against that, using the OutReadValue to determine whether the student passed.

Summary

Service Bus Workflow is a WF host that provides a simple, scalable cloud-based environment for running workflows. You use existing, familiar tools such as Visual Studio and the WF designer to create your workflows and then upload and manage those workflows using the Workflow Service portal or by using the underlying APIs.

References

Joel Reyes

Technorati Tags: ,

Webcast Schedule for June 2009

Register today for our upcoming webcasts!

Date

Time

Location

Title and Registration

Presenter

Audience

June 18, 2009

16:00 – 17:00 EST

Webcast

Software Design Tools in Visual Studio 2010

Jose Luis Manners

Developers

June 24 2009

14:00 - 15:00 EST

Webcast

Building Applications Using the .NET Service Bus

Joel Reyes

Developers

-Nandita

Open Government Brainstorm - Check it out and endorse an idea!

Participate in the Open Government Brainstorm that is occurring currently which the Obama Administration is sponsoring as part of the President’s Directive released last week.  If you support the goals of having a participatory, collaborative and transparent government, this is your chance to be heard. As a start, check out this idea under the category of making data accessible and voice your opinion: http://opengov.ideascale.com/akira/dtd/3604-4049

 

There will be three phases of structured public dialogue:

  1. Brainstorming (May 21-May 28) - This phase will be hosted by the National Academy of Public Administration and use an innovative brainstorming platform to elicit ideas for the Open Government recommendations.
  2. Discussion (June 3-June 14) – This phase will deepen the conversation about compelling topics raised during the brainstorming via a weblog hosted by the Office of Science and Technology Policy and the General Service Administration.
  3. Drafting (June 15-June 19) – This phase will invite the public to use a wiki to draft language for recommendations collaboratively. These three phases will build upon one another and inform the development of recommendations on open government.

Participate and help make a difference! 

-Nandita

Open Government Data Initiative (OGDI) complements Data.GOV

My colleague Vlad Vinogradsky, who is the lead architect on OGDI has done a great job of describing how OGDI relates to Data.GOV.

1) OGDI is a (government) data publishing solution not a place or location (data.gov today is a place that federates data published and hosted by government entities)

2) OGDI-based repositories make data readily and efficiently query-able and mash-able by people and software

3) OGDI-based repositories render data in a consistent way in a small number of open formats, e.g. Atom, JSON, KML

OGDI, as it stands today, complements data.gov rather than competes with it. It empowers federal, state and local government customers to publish their data faster and cheaper.

Thanks, Vlad!

Data.GOV is a much needed ‘data portal’ which helps you find data, and takes you to the web site of the publishing agency where the data is made available.  OGDI is a data publishing solution which will help government organizations publish data.  A perfect compliment!

Any questions?  Send us an email at askogdi@microsoft.com

Keith

Microsoft Application Guides DoD Through Earned Value Management Compliance

To help the Department of Defense (DoD) and its contractors streamline compliance with earned value management (EVM) reporting requirements, Microsoft today announced a Project 2007 application tailored for Defense Contract Management Agency (DCMA) standards.

As the agency responsible for tracking EVM figures for DoD contracts, DCMA requires the use of the United Nations (UN) Centre for the Facilitation of the Administration, Commerce and Transport (CEFACT) standard, a worldwide standard for cost and schedule project information. An application available free of charge on Microsoft’s open source hosting site, guides users through the export of Microsoft Project 2007 data required by DCMA and translates the earned value output into the required UN CEFACT XML protocol. The application will provide significant cost savings for both DoD agencies and contractors by reducing the time and resources required to gather, analyze and format the data.

Read the press release http://www.microsoft.com/industry/government/news/Earned_Value_Management_Compliance.mspx to learn more.

-Nandita

CANCELLED: Developer Dinner in Reston, Va

The facility in Reston, Virginia had some unexpected audio/video failures.  Because of this, the developer dinner for next week has been cancelled.  I am really sorry for this inconvenience.  We will reschedule ASAP once the audio/video equipment is successfully repaired.  Stay tuned…

-Marc

Posted by Public Sector DPE Team | 1 Comments
Filed under: ,

Microsoft Developer Dinner Series for Partners: Presenting Azure: Building Applications Using the .NET Service Bus - Raleigh, NC June 18, 2009

Speaker

Joel Reyes, Senior Developer Evangelist, Microsoft Corporation, US Public Sector Developer and Platform Evangelism Team

 

Register today!!

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032416713&Culture=en-US

 

Date: June 18, 2009 6:00PM - 8:00PM

Venue

Microsoft Raleigh / Durham Office

4825 Creekstone Dr., Suite 190

Durham, NC 27703

 

Abstract

The Service Bus provides the communication infrastructure that protects developers from having to create the complex code necessary to achieve seamless connectivity. It allows you to expose a service to the Internet from behind your firewall or NAT. Several common application messaging patterns are supported allowing bi-directional, peer-to-peer communication, publish and subscribe and storing and forwarding of messages. The Service Bus is built on Windows Communication Foundation (WCF) and uses standard Internet protocols. Building applications using the Service Bus does not require a significant footprint within an organization and leads to more rapid deployments while keeping the local infrastructure intact.

 

What you will learn

In this evening session over dinner, you will learn how to:

·         Expose and consume a service through the Service Bus.

·         Authenticate a service and a client against the Access Control Service.

·         Service Bus bindings options.

·         Expose a MEX endpoint through the Service Bus.

·         Implement the Multicast message pattern through the Service Bus.

·         Use X.509 certificates for message confidentiality.

 

Who Should Attend

Architects, Developers, Designers and anyone who would like to learn about the Microsoft Azure Services Platform

 

-Nandita

More Posts Next page »
 
Page view tracker