DEREK HOIEM

LEADERSHIP | UX | CREATOR ECONOMY | XR

Add Play Button MiniApp for Farcaster / Base

Add Play Button MiniApp for Farcaster / Base

Add Play Button MiniApp for Farcaster / Base

|

I talk to design students about the difference between, utility, usability, and aesthetics. All are important, but utility wins every time. Even Jony Ive said, “If a product doesn’t do what you want it to do, it is ugly.” 

I also love decentralized platforms, and when I found the decentralized social media platform “Farcaster” I got excited. When I found out that Coinbase was going to use it as the protocol for their new Coinbase Wallet app, and rename it “The Base App”, I got even more excited and wanted to develop for it. Farcaster / Base allows social media posts to contain an image and action in a post that launches a “miniapp window” where you can use apps to interact with the timeline and user’s profile. This enables all kinds of interesting possibilities. I saw that the platform lacked the ability to embed a wide range of media into posts, and so I add a “Play” button to a post and then the media plays in the miniapp window, effectively creating media embeds.

You can try it out by going to farcaster.xyz and then typing addplaybutton.xyz into any cast, or launching the “Add Play Button” app from the miniapps catalog.

Visual Studio 17 with solution explorer
Visual Studio 17 with solution explorer

My app reached #3 in the Utilities category on the Base app, and it’s in the top 100 of all apps available on Farcaster (top 5%).

Visual Studio 17 with solution explorer
Video Security Platform

Video Security Platform

Video Security Platform

I was contracted to design a ground-up security platform for large scale events that leverages video and device data. Here are several of the key screens and views.

Visual Studio UX

Visual Studio UX

Visual Studio UX

|

I designed several cornerstone aspects of the user interface of Microsoft Visual Studio, including the dynamic menu system, dynamic help window, and the window tiling and autohide system that subsequently influenced Windows.

Prior to my changes in Visual Studio, Microsoft Windows apps that supported multiple documents being open at the same time, had a design pattern called “multiple document interface” (MDI).  In MDI apps, the child windows were contained within the parent window and they were unruly and made it difficult to manage the number of files that developers often had open. After watching developers, I realized that maximizing the document space and then making it easy for them to split and tile, to view a C++ file and it’s header file at the same time, for example, would be a much better approach.  So, I decided to toss out MDI and replace it with a tabbed document system.  Additionally, you can grab and move the tabs and dock them within the application frame using a visualization of drop zones.  At the time, this was all new and no one had done this before. Eventually, this design pattern was picked up by the Windows team, and then it’s also now appeared in the Adobe family of apps as well.

Visual Studio 17 with solution explorer

Then I also wanted to do something to maximize screen space for developers. In addition to document windows, we had the concept of “tool windows” which are permanently installed windows that operate upon the open documents. As the number of products inside Visual Studio increased, the number of tool windows that could be open became unmanageable. We had the concept of auto-hiding tool windows, but they would just disappear and you wouldn’t know which ones were open and where they were located. So I introduced the idea of a vertical channel where we could place the auto-hidden windows. By releasing the “pin” icon on a tool window, it would go into auto-hide mode and show up in the vertical channel.

Visual Studio 17 with solution explorer

Once a window is “unpinned” then the tool window tucks into the vertical channel, alongside the other tool windows with which it is docked.

Visual Studio 17 with solution explorer

The final state is a wide-open document space that maximizes working area for coding, even on smaller screens, such as laptops.

Visual Studio 17 with autohidden tool windows