“You Really Should Be Using NuGet” and other links…

This article by Justin Etheredge shows that NuGet has a graphical and a command-line interface.

“Why We’re Going With HTML(5) Instead Of Silverlight”

Davy Brion: “The first thing you might be thinking is ‘how can Silverlight score so badly when it comes to User Experience?’. The answer to that is quite simple: if your users aren’t using a desktop/laptop with Windows or OS X on it, there is no experience to be had at all. Users that require assistive technology are out of luck as well since accessibility support in Silverlight is still very poor. If you hold those factors into account, it really doesn’t matter much that you can easily make Silverlight applications incredibly flashy (pardon the pun). Besides, most people get bored and annoyed with excessive animations rather quickly, so you’re often better off not to overdo it. With that in mind, jQuery UI and HTML5 will easily meet your needs for that kind of stuff.”


“Lightweight DataTable for your Silverlight applications”

Vladimir Enchev: “Since there is no DataTable in Silverlight I’ve created small class that can be used to generate columns and rows in runtime in similar to the real DataTable…”

An Oldie Classic: “Silverlight 4 Screencasts—the Managed Extensibility Framework (MEF)”

Mike Taulty: “One of the interesting things about Silverlight 4 is the inclusion of the Managed Extensibility Framework (MEF) and I think it really helps to build the case for Silverlight 4 as a great platform for business applications. …Silverlight applications are rich internet applications – the deployment model is strongly angled towards web deployment as the only way to install a Silverlight application is to start on a web page and run the application – the deployment is intended to be simple, quick and secure.”

“Expression Gallery: Download Useful Bits, Share Yours with the Community”

“Many of our website visitors haven’t discovered the Expression Gallery yet. We provide a one-stop place for community members to download and share Expression-related items, like Blend Behaviors, Website Templates and Code Snippets, Silverlight Samples and Themes, and free and trial versions of Tools and Utilities.”

“Authentication in Silverlight using WCF and ASP.NET Membership Provider”

Mahesh Sabnis: “Open the web.config file, add the connection string for the database which contains user credentials and also define ASP.NET membership provider. Configure this provider in the service behavior so while verifying, the caller WCF service will load this membership provider. Also use ‘CustomBinding’ with https transport and define its ‘authenticationMode’ to ‘UserNameOverTransport’ so that the caller has to send the user credentials for making a call to WCF service.”

“Working with the Silverlight Rich Text Box control”

“In this article, we’ll take a look at the Silverlight Rich Text Box control. The Rich Text Box was one of the new, and highly requested controls introduced in Silverlight 4. …The Rich Text Box has a content property, Blocks, which is a collection of Paragraph elements (Paragraph derives from Block). These Paragraph elements can in turn contain elements that are derived from Inline, like Run (we know that one from the regular Text Box), Span, Bold, Italic, Underline, Hyperlink and the InlineUIContainer (which can contain UIElements).”

WordWalkingStick.com Launches Songhay Studio Server

I reserved WordWalkingStick.com to have a domain available for a hosting plan with Internet Information Server (IIS). WordWalkingStick.com sounds like some kind of commercial play for my open source project on CodePlex.com for Microsoft Office Word. But, as of today, consider the similar names a ‘coincidence.’

Instead of having a personally useless “code gallery,” my Songhay Studio Server at WordWalkingStick.com is built to be a part of my active, work-week-daily workflow. Whenever I learn something new about Silverlight, WPF or ASP.NET MVC, it should show up on the Studio Server. This Studio Server concept is a self-educational tool (beyond my relatively passive Funky KB at SonghaySystem.com) that often serves as a co-worker educational tool.


Songhay Studio Server at WordWalkingStick.com

This Studio Server concept, by the way, is direct descendant from my intranet-based ‘Development Server’ concept that I’ve used in the workplace since the early 2000s. I thought it was cool to take a slice out of my Desktop and point it at this ‘Development Server.’ The rise of the SharePoint “My Site” makes this work habit largely obsolete in the average Microsoft-based enterprise.

I have avoided Microsoft-based hosting on the public internet for years because Microsoft technology simply was not designed for the “shared” hosting model. Phil Haack led the way here and I followed him into a deal with Newtek Web Hosting.

As of this writing, the Songhay Studio Server contains:

  • Active Web Designs—page layouts for the few web sites I maintain.
  • Live Samples—CSS, jQuery and Silverlight samples online; I use these to keep current—so studying these carefully covers my current skill set.
  • Hosted Source Code—active CodePlex.com projects and legacy SourceForge.net projects (in Java).
  • Utilities—stuff for me, dating back to my Intranet days.

So, after I showed Scott Hanselman my Silverlight BiggestBox live sample, he politely asked for something more interesting. In reply to his prompt reply, I told him (I think this came across—because Twitter is terse) that he was looking at a blank canvas. In the specific Silverlight case, I had to spend quite some time getting the plumbing to work to my satisfaction. The problem is that most people can’t see the plumbing—often I lose myself in the plumbing!

This new Songhay Studio Server allows me to see an IT executive summary of what the hell is going on! I can look at the home page and click though the index and see:

Coming soon will be my Adobe Flex-based BiggestBox! Ideally I’ll have Silverlight and Flex parity. This new tool called Tofino allows me to work on Flex in Visual Studio, which is currently very convenient for me.

So, am I spread too thin? Am I “over preparing” and getting “lost” in the technology? What this new Songhay Studio Server does for me is allow me to consolidate, summarize and simplify. The work of the last two years finally comes to the surface.

“Microsoft Word 2010 Developer Building Blocks” and other wordy links…

Eric White: “The altChunk functionality of the Open XML file formats enables easy merging of documents.  You can merge content from multiple sources (other Open XML documents, HTML, plain text, and more) into a single document.  After using the Open XML SDK to set up the document that imports alternative content, if you want to convert the document so that the new content is transformed to typical Open XML WordprocessingML, you need to open and save the document using Word 2010.  Alternatively, you can use Word Automation Services to process the document and import the alternative content.”

“For your OOXML Conspiracy Theories”

Miguel de Icaza: “The energy that went into stopping OOXML could have been better used in actually completing the formula spec for ODF, which almost four years later is still not part of the ISO spec. In the eyes of the ISO world, it remains an "implementation specific" work. But "advocacy" is a little bit like watching the TV, it is relatively easy. While actually working on improving open source, or open standards is equivalent to going to work. It requires skills, time and longs hours of difficult work (particularly if you are working on the OpenOffice code base).”

listsync.codeplex.com

Sync between file folder and SharePoint list for large file scenario. Huge file ( such as media file, cad etc.) was not recommended to be directly stored in SharePoint document library. This project is focused on Huge file storing problem.”

writers.stackexchange.com

Writers is a collaboratively edited question and answer site for people who love writing. It’s 100% free, no registration required.”

“Better Handwriting For You: Book 4”

I was raised on this book!

You can’t just open a System.Windows.Controls.Window in any Assembly you like…

I regret not catching up with Chris Sells and his previous push for WPF. Chris has moved on… I was even selected to review one of his books years ago but my horrid commitments to time-consuming programming tasks swamped me. I am almost sure that errors like this:

The type 'System.Windows.Markup.IComponentConnector' is defined in an assembly that is not referenced.

or

The type 'System.Windows.Markup.IQueryAmbient' is defined in an assembly that is not referenced.

The above error is simply saying that I’m trying to open a WPF Window inside of a DLL and not an EXE. Then, there’s this error:

The component 'Songhay.Wpf.WordWalkingStick.Views.ClientView' does not have a resource identified by the URI '/Songhay.Wpf.WordWalkingStick;component/views/clientview.xaml'.


Amazon.com product

The above error came (past tense) from my WordWalkingStick pet project on CodePlex.com. This boils down to the absence of a facility that associates WPF Window XAML with the WPF “code” (an instance). This facility is associated with WPF EXEs and not WPF DLLs. Visual Studio auto-generates a WPF EXE class called App.g.cs (in your \obj\Debug folder) with this call in it: System.Windows.Application.LoadComponent(this, resourceLocater) where resourceLocater is a badly named variable containing a System.Uri pointing to the XAML like ClientView.xaml mentioned above.

I’m sure Chris Sells has a whole chapter written on how WPF depends on System.Windows.Application for its very life. It is my loss (quite literally of time) for not having read about it.

I have shown myself a little something with this unit test:

[STAThread]
[TestMethod]
public void ShouldOpenWindow()
{
    Application app = new Application();
    app.Run(new Window());
}

Failing to wrap a new Window in the System.Windows.Application.Run() method will throw an error from the land of COM talking about, “Why did you pull the rug from underneath me?”

Word 2010 Allows Nesting of Content Controls!

The shot below shows a Word 2010 Rich Text Content Control, nesting a Plain Text Content Control:

This idea of nesting content controls comes to me from Eric White’s “Using Nested Content Controls for Data and Content Extraction from Open XML WordprocessingML Documents.” Eric mentions this very important bit:

Important note: In order to nest content controls, the containing content control must be a rich-text content control.  You create one of these using the upper-left button in the Controls section of the Developer tab.  Thanks, Darin.

Another important bit: you cannot nest content controls in Word 2007 or earlier! This new feature in Word 2010 effectively replaces the functionality of “Custom XML” that has been removed by a court order from Word 2010. I daresay nested content controls are not as conceptually embarrassing as some critics of Microsoft have claimed. The Content Control does not require the use of an external schema file (which was technically entertaining to me—but not to many, many others).

It is very, very important (to me) to see nested content controls in Design View (above). However, most writing about this subject shows them in print/layout view (below):

Without the news in Eric’s article, I would be essentially doomed. Yes, ‘doomed’ is a strong word so let the research of Peter Sefton help me be a bit more articulate. He has a 2008 article entitled “Embedding metadata and other semantics in word processing documents” and the title speaks clearly to  me. Modern word processing file formats need a standard way to store metadata. And, no, there is no quiet, elegant Open Source program out there that saves the day. Anyone out there who considers their documents first-class entities for any data management system cannot dismiss Word 2010 with a bunch of Microsoft player-hating. I keep trying to get rid of Word and I keep going back.

BTW: In case you can’t get that Peter Sefton article, try the slide deck “Embedding Metadata In Word Processing Documents” (or the PDF).