on master help sign in
image links
commitf8e0f8daa08bf9285b5976ddb314dd67f9fac9f1 authorGalen Wolfe-Pauly <root@office-for.com> dateMon 30 Jan 2017, 15:05 (10 years ago) parent04c2da8
1 file changed+7−5
main/blog/2017.1-update.md+7−5
main/blog/2017.1-update.md+7−5
@@ -28,13 +28,13 @@ Galen will cover the design, and Curtis will show up later to talk about infrast
2828
2929Galen is the person around here who thinks about design, ‘product’ and things like that. Galen went to architecture school. He talks like it. We’ll be getting more specific about what this product will look like in future posts. For now, we recorded Galen secretly and came away with these notes:
3030
31−### Notes on designing a system
31+<img src="https://media.urbit.org/site/sketch-1.png" class="full-width inline" />
3232
3333- *UX*? As a kid it was just *design* or maybe *web design*. At some point I remember people talking about *user interface* or *UI*. But I truly don't understand where the *X* came from. It's like Monster Energy got involved in the branding.
3434
3535- An *experience* sounds like the kind of thing that's going to be littered with ads, or is going to manipulate me in some way. Something I passively consume. Not something I actively control. So I prefer *interface* to *experience*, and I think you should too.
3636
37−#### Computing is simple
37+<img src="https://media.urbit.org/site/sketch-2.png" class="full-width inline" />
3838
3939- Urbit has to be just as usable as any widely used app in 2017. For a personal server, the usability bar can't be Unix. A Unix server is an industrial tool. An industrial tool isn’t a consumer product. You can attach a blade to the end of a drill and use it as a blender, but it’s not quite as nice as the Vitamix.
4040
@@ -56,7 +56,7 @@ Galen is the person around here who thinks about design, ‘product’ and thing
5656
5757- But WeChat is just another giant shared-computing service. It's made out of the usual 2010s server stack mess. The visual and interaction design looks pretty dated. And the infrastructure is just the normal 2010s server stack mess. We can learn a lot from the idea of WeChat, but not from the implementation.
5858
59−#### Start with the whole system
59+<img src="https://media.urbit.org/site/sketch-3.png" class="full-width inline" />
6060
6161- Shared computing may have its problems, but at least it has an ethos. Almost anyone can copy and paste their way to an app on the app store.
6262
@@ -76,7 +76,7 @@ Galen is the person around here who thinks about design, ‘product’ and thing
7676
7777- The most important bottleneck in achieving this goal is winning the trust of the user. The user can't get lost or break the system, nor can they be prevented from exploring its furthest reaches.
7878
79−#### Reinventing the command line
79+<img src="https://media.urbit.org/site/sketch-4.png" class="full-width inline" />
8080
8181- As Neal Stephenson [tells us](http://cristal.inria.fr/~weis/info/commandline.html), the command line is the natural UI for any computer. It's especially the natural UI for a *network* computer, like a personal server. A command line scales way better than a GUI to a large selection of actions. And a network computer can do almost infinitely many things.
8282
@@ -90,7 +90,7 @@ Galen is the person around here who thinks about design, ‘product’ and thing
9090
9191- So what does a great command line look like? It's syntactic, not free-form. It can't be a constant test of your ability to memorize the phonebook. It's also not tethered to a piece of industrial equipment.
9292
93−#### We're already headed in this direction
93+<img src="https://media.urbit.org/site/sketch-6.png" class="full-width inline" />
9494
9595- Urbit already has the beginnings of a great command line. We parse your input with an actual grammar and correct errors (or erase them, at least) as you type.
9696
@@ -104,6 +104,8 @@ Galen is the person around here who thinks about design, ‘product’ and thing
104104
105105- It’s important to note that we’re not talking about ‘developers’ trying to tackle well known engineering problems. Urbit is meant to make building things on the web *fun* again. Welding a giant single-purpose app on top would me a mistake primarily because it’s inevitably kind of narrow and boring.
106106
107+<img src="https://media.urbit.org/site/sketch-5.png" class="full-width inline" />
108+
107109- The `:dojo` shell is built around the concept of a *generator*, a program that builds a noun. The idea is that how you build the noun is orthogonal to what you do with it. You could print it, send it as a command, etc. There are several kinds of generators -- simple scripts, prompting dialogs, HTTP scrapers, etc.
108110
109111- A generator is initialized with command-line arguments and options, in the classic Unix style (except typed). In the classic Unix style, Urbit at present provides no help at all in constructing a command line. You just have to know.