Mike Norman Technical Writing Samples

I’m putting what passes for my portfolio here so that I have a link to post in online job applications.

A lot of my work has been confidential and proprietary. A lot of the rest has been subject to deprecation and bit rot. However, I’m able to put together the following.

Multinomial logistic regression conceptual blog article
A lot of my career has emphasized producing lots of API Reference documentation, and much of my conceptual output has disappeared. To address this for this portfolio, I produced an article entitled Multinomial Logistic Regression Basics and posted it on my personal blog. I installed MathJax and learned LaTex to present the equations. I’m a relative expert in multinomial logistic regression, as I once implemented it–in concert with a complete data pipeline, resource allocation tool, and custom Cython code to transform data in ways that pandas could not–to investigate whether horse betting markets in Hong Kong were still inefficient. I modeled my efforts on Bill Benter’s, who was famously successful at picking horses with a similar algorithm. At the time, I had to source my coding work from original research papers, as multinomial logistic regression was chiefly applied to sports betting and wasn’t widely known outside those circles. This article distills the basics down into a format that would’ve saved me months of effort had it been available to me then. I am, of course, the sole author. I used ChatGPT to smooth out and simplify a few of my more convoluted sentences, as well as to check and correct some adventurous punctuation. I’m still revising this document. For example, there is a section on the probability tree that could use an image, for example, and I need to locate some software to generate those. The coin toss example is not quite exactly repeated, but some of that could be tightened. However, the article works for now, and additional changes have low cost. It’s been a fun challenge to get this portfolio piece into shape! Perhaps it will be even more polished by the time your team sees it!


API reference work
In my most recent work in the API reference space, I have been functioning mainly as a reviewer of contributions from subject matter experts to the Microsoft Graph REST API documentation. However, it would be difficult to point to any one topic there as essentially my own contribution, though I’ve transformed some pretty rough contributions into polished reference topics.

A little farther back, I was working for Xamarin (through its acquisition by Microsoft) on the Xamarin.Forms API reference documentation, which was wholly under my purview, and the Xamarin.iOS API reference documentation, which I nominally shared with one other writer. All of the following work in Xamarin.Forms and Xamarin.iOS predated generative AI.

The following are some notable contributions to the Xamarin.Forms API:

  • Some developers were having trouble with the concept of bindings, so I provided a conceptual remarks section that contains extensive demo code samples: BindableObject
  • Situating developers with AbsoluteLayout and noting some common gotchas, with straightforward code examples: AbsoluteLayout
  • Explanations of the interesting bits for Xamarin Forms buttons, again with straightforward code examples: Button
  • Solution to a cross-platform issue with swiping interfaces. This one contains original screenshots that I produced, as well as C# and XAML code that I produced. It looks like the migration of this content has unfortunately flattened the indentation of the XML content: CarouselPage
  • A cute example to demonstrate the power of event triggers: EventTrigger

On the iOS side of the API reference work, shown below, the takeaway is the sheer annual volume. Thousands of API members landed every year, and we took pains to get the cross-platform .NET wrappers that comprised our product documented in the few months between the initial drop and WWDC.

I authored well over half of all of the content under: Xamarin.iOS

I apologize that it’s difficult to remember which of the thousands of Xamarin.iOS API reference pages I authored. It was all very dry, very repetitive, and very much forgotten as soon as I moved on to the next namespace. The terse nature of this text was due more to editorial constraints than to the time pressure. In spite of my sketchy memory, however, I do clearly remember writing all of the documentation for the following laughably nonexhaustive list of namespaces:

Interesting story: Xamarin was going to hire a team of 10-20 vendors to complete the body of documentation from which the above samples were drawn. Management sent me to evaluate their bid, and it became clear that their pace was not going to be sufficient. I had recently written some code to streamline the bug-fix cycle at check-in time, greatly increasing my own speed through the content. I was about to share that code with my co-author, and I was confident that we could save the $2 million we were going to pay this vendor, as unlikely as I know that sounds. I recommended we not go with them, and me and my coworker handily met the deadline every year.

Microsoft Graph REST API overviews
I recently had the refreshing opportunity to write a missing overview topic for the cloud printing area of the Develop section of the Microsoft Graph REST API documentation, and another for the calendaring API in the same section of the documentation.

For the cloud printing overview, I relied on the existing conceptual topic in the Learn section of the documentation in our information architecture, but I created the sections you see by manually sorting the APIs into functional buckets, researching use cases, and interviewing SMEs. I modeled the content on nearby overviews in order to maintain a consistent style, voice, and format. The product team repeatedly delayed technical review of the document. However, they indicated a generally favorable impression of the contents and structure of the doc. Eventually, I decided to inform the group chat that I was moving forward with publishing and that further PRs were welcome. There have subsequently been neither complaints nor PRs.

I followed a similar approach for the calendaring API, but with an emphasis on calling out use cases in tables for this much larger API.

Microsoft Dynamics POS boot camp handbook

A long time ago, I created a handbook of walkthroughs for exercises at a boot camp to introduce developers to the SDK for the Microsoft Dynamics Point of Sale (POS) product. This document was produced under a tight deadline and in response to an ever-changing beta API surface. I had no editorial backup. Consequently, the few typos and formatting mistakes in the document are my own. All participants informally reported having no problems completing the various Add-Ins during the time allotted in the bootcamp.

Adieu

I hope, despite the strictures of IP and the ravages of internet time, that this fragmentary and incomplete sampling of my work conveys the versatility, drive, and dedication to clarity and accuracy that I will bring to future roles that you might offer me.