It's a beautiful vision but the UI does not work for me - I miss my outliner

what I like about anytype

  • offline first
  • data ownership
  • the promise of sharing in the future
  • types and templates

what I don’t like

I’ll disregard the bugs since it’s alpha.

anytype is inconvenient for data entry

Anytype compares unfavourably to my previous tool (logseq) in authoring and organizing data. I see this as a core competency of such a tool, this is a big disadvantage.

What I’d like is to work in an outliner, where:

  • basic outline operations are frictionless: creating items, nesting items, de-nesting, setting and changing types.
    – to me, “frictionless” means “few keystrokes, no mouse, no lag, no context-switching, no discontinuity of focus, no new window”
    – for reference, logseq achieves this, except for changing types which do not exist in logseq. You create a new item by pressing return, nest with tab, de-nest with shift-tab.

Types and relations are clunky

  • There should be a Hotkey for changing object type.
  • When I add a relation to an object, keyboard focus should move into the relation’s value so that I can set it.

blocks are not objects

Strategically, I think anytype made a mistake in distinguishing “blocks” from “objects”. This means the data model will be more complicated than necessary, when it comes time to write programs that work with this data.
There is a proposal to make everything a block: Everything is a… Block?. I’m in favour of the general line of thought there, though perhaps not all the details.

summary

AnyType has an exciting vision, but for me, it over-invested in aesthetics and not enough in ergonomics of structured data editing. It feels like maybe the team doesn’t actually use it a lot to write down their own thoughts and personal data. AnyType should take some good ideas about UI design from logseq, though I think AnyType probably has better tech, and certainly a more interesting vision, under the hood.

As it’s currently implemented, AT ijust isn’t an outliner and isn’t a replacement for Logseq or Obsidian (or any of their many equivalents). If the Obsidian/Logseq way of working is what you need, I don’t think AT is the solution.

AT’s current offering is more like Notion. Craft, Coda and the like. They’re just very different from the outliner-based apps. Not saying one is better than the other - they’re just different

I don’t know what AT’s future direction will be, but I think the differences are fundamental, so it might never fit your needs, sorry to say.

I think the same infrastructure can easily support either style. It’s not so fundamental IMO.

Obsidian is not an outliner btw.

It has lots of outlining capabilities and it stacks up directly against the likes of Roam and Logseq. Whether it’s called an “outliner” or a “note-taking app” doesn’t seem important to me

I think that many of the grievances can easily be improved over time, bearing in mind that we’re only in pre-beta… Nevertheless, @micklat got some solid, well-thought-out arguments.
Furthermore, I totally agree with him about the need for blocks to be functional objects. This feature should be seriously considered, as we mustn’t continue to build on limiting foundations.

I’d add that it’s sadly ironic that “Everything is an object” (one of their previous bold statement) was featured on their first slides and website, summarizing its absolute potential, only to refrain from making it a reality.

In a way, I have the feeling that I’m witnessing the premise of Notion all over again.
Namely, an innovative concept that has favored growth at the expense of a profound rethinking that should have led to the obvious decision to rewrite Notion in favor of an offline mode.
They publicly pretended they would, constantly delaying its arrival on the roadmap, until the day they simply stopped showing it, and never had the courage to admit that they had favored growth at the expense of the right to data sovereignty. And now, they’ll slowly but surely pay the price for this lack of courage.

If you want an outliner, maybe Anytype isn’t right for you. I am happy that Anytype is NOT an outliner. I enjoy Anytype’s flexible WYSIWYG canvas. Have you looked at Tana?

Apparently, you can make Anytype work the way you want. I also was a core outliner. But I found a way to use Anytype, toggle works, you can drag and drop, you can create objects as pages/links the options are boundless. Except for the visual displays of outliners. And hopefully the backlinks will be improved at some point. The only thing I really miss in my workflow is collapsing the Headings like in Obsidian and Capacities.

We should stop quibbling about the definition of an outliner, because it’s essentially a very broad one, since any text program that allows you to use an indentation level structure is an outliner, so Anytype, like Notion or programs that work exclusively with it, such as Dynalist, are all outliners.


It’s too bold and unrealistic an argument, just like this one displayed on the official website:


On the contrary, I think the borders have just been exposed. If this limitation in no way hinders your workflow, and if you don’t see the potential that its implementation could offer, then good for you, but many of us want to refer and add relations to blocks.


About that, I invite you to vote for this feature request :wink:
Implement toggle for headers and hiding content

Yet, Anytype’s proposal is to be the “Everything app”.

To me, it’s essential that my notes live alongside everything else. A big project usually emerges organically from a bunch of notes scattered around my PKMS. I don’t want any friction in this process.

By the way, being an Outliner doesn’t mean it can’t be WYSIWYG.

I got two replies suggesting “maybe anytype isn’t for me” because I want an outliner and not a rich text editor.

Nowhere in anytype’s presentations did I see that anytype’s mission is to favour rich text documents over outlines. And I don’t think it’s really an either-or thing. Anytype has an underlying object store with different ways to interact with it - structured text (“notes”), object graph, sets, and now collections. Anytype’s mission, as stated, is to be an operating system for sovereign people’s data. So the fact that the UI thus far is more similar to one thing rather than another should not preclude future features from supporting different styles of interaction.

Agree!

One suggestion: remove the term “UI” from the title of your post, as this is just the final layer between the system and the user. As you explain in your post, in order to be a proper outliner, Anytype would need to first fundamentally rethink their underlying data structure, moving towards a more granular one (having blocks as the smallest unit, rather than “pages”).

This. Any really successful product or service has to decide how it fits and, perhaps more importantly, who it doesn’t fit. It’s too early to say what the fit of AT will be, but it might not be outlining

I don’t know whether unifying blocks and objects is really necessary. I think it would simplify the data model, which is why I favour it, but with the right set of features, I could pretty much ignore blocks and use only objects. So I support unification for infrastructure simplicity, but don’t think it’s a requirement for having a good outliner in anytype.

It would be sad if anytype’s initial UI design restricted its range of applications forever because new applications would be frowned upon as “not being anytype”. Happily, I don’t think this is what the project founders and leaders want.

Ah sorry then I misunderstood. So you’d be OK with the current “page”-based system, as long as within a page you have Outliner features? How do you see that working? What would the individual “bullets” be (within AT terminology)?

I think I misunderstood your post because you mention “changing types” in the context of outlining (quote below). I guess you mean Block Types rather than Object types then?

Thank you for suggesting Tana, @Showing1528 . It is neither open-source nor local-first, so not for me.

@qualquertipo
If I decided to add what’s missing, then I would add a new kind of window (alongside the object editor and not in its place), which would be the outline editor. In the outline editor, you’d write an outline, and every node of the outline would be an object (not a block). Anytype might still have blocks, and they would still have their uses. But you’d be able to edit parts of the graph as an outline.

@qualquertipo And if we did that, then we might later decide to add a kind of block which contains an outline of objects.

Or we could instead make blocks objects as previously proposed, and that would be fine too.

Ah ok.

To me that seems too specific, and not worth the effort. Best to invest time implementing greater granularity (blocks as smallest unit), which would then naturally allow what you mention. But I’m not a developer, so this is just my personal view!