Howstr

Putting the 'easy' in hardware.


Project maintained by matthewmaier Hosted on GitHub Pages — Theme by mattgraham

Quick Start

Thank you so much for giving Howstr a try. We're excited to share it with you. The thing about Howstr is that it's fun and just sort of feels "right" when you use it to capture a real project that inspires you. Mapping/modeling in Howstr takes the same amount of time (or less) than writing instructions the traditional way, but the benefits are so much greater.

First of all, Howstr's networks evolve over time. So you can just dive in with whatever piece of information comes to mind first. You don't have to plan ahead or consider the final structure. If at any point you remember that you need another tool, or decide to rearrange a couple steps, the change is fast and easy.

Here's an example using a grilled cheese sandwich.

The best way to use Howstr is to start out vague. Just kind of sketch out the project. If you need more detail you can always go back and add it later.

Also, since Howstr is based on NotionAll, the entire history of changes is preserved. If you start clicking undo you can literally roll the project back to a blank slate (if you wanted to do that, we don't judge). The undo-ability of the project is an inherent part of the data, so if you open someone else's project you could see everything they did with it if you wanted to (see, no judgment is important).

Let's start with the basics

The Howstr Desktop application is primarily an authoring tool. It's where you create maps/models of "how to" do something. Most people will never see the authoring tool. Instead, they'll see documentation that is rendered from the map/model created in this authoring tool. You create a network of information using Howstr and then algorithms create documentation for everyone else to read. Users don't see the network. That separation makes it easy to change stuff later.

The pieces

You'll spend most of your time dealing with the "precedence dimension." This simply means that A must come before C, and B must come before C, but A and B can happen in any order. You string relationships like that together in a chain. The twist is that Howstr has specific kinds of nodes that must alternate. "States" (with a black square) are things that do not change and "changes" (with a black triangle) are the differences between states. Together they create "action groups" describing how to get from one state to another. So 3+ nodes (state > change > state) make an action group and it's really the action groups which get strung together.

In the Grilled Cheese example above, we start out with (bread > assemble > cold sandwich) and (cheese > assemble > cold sandwich). Then we extend that with another action (cold sandwich > grill > hot sandwich). The meaning of each node should be pretty obvious in context and shouldn't require much explanation.

The approach

Howstr is extremely flexible and you should take full advantage of that. Just start describing the things you need and what they're used for. Don't think to hard about it. If the description seems intuitive to you then it's good enough. You don't have to start at the beginning, or the end. You don't have to list all of the tools/materials first. Just start at any action that is part of the project and work out from there.

It's safe to assume that you're not going to be able to think of absolutely everything relative to the project at first. That's why Howstr is flexible. For example, in the Grilled Cheese project, there was never any mention of how to actually grill the sandwich. That's fine. Add details only as you realize you need them. You don't have to work in any particular order.

The controls

The mouse is the primary way to use Howstr. The left button is used to click on all of the buttons. It's also used to add more elements to the graph. Left click on a node and drag the mouse around (hold the left button down). You'll see a preview of the alteration you're about to commit to the graph if you let go. If you see no preview, then nothing will happen when you release the button. The right mouse button creates a selection box. Drag it around and any hilited thing has become selected (if you select a node it always selects all of that node's links too).

It's important to note that you have very little control over how the graph is laid out on screen. The layout is automatic, but you can change which node the layout starts from. When the mouse returns to a node, after left clicking and dragging (without releasing), you'll see a new outline around the node. That's the focus preview. If you release the button the graph will be redrawn starting from that node. Also, nodes created more recently appear lower in the vertical stacks.

You can't reposition the links, but you can create links and hide existing links. About that, since every alteration is recorded, you don't really delete things so much as remove them (hide). There's also a thing with the little arrows in the upper corners of some nodes. Those are scope links and you don't have to worry about them right away.

Left click on a node to open up the details window. This is where you attach information "tags" to the nodes and links. At the moment there are only four kinds. Links have a "weight" tag which means multiply that link. Nodes have a title (140 characters), memo, and figure (attach a picture). Just click on the appropriate line in the list and the right side of the details window will change to show the appropriate controls. You can throw out any changes with the "X" icon or commit them with the "Check mark" icon.

There's a lot more detail in the dictionary . If you notice something missing or mistaken please let us know.