I've recently used a bit of TOPs for the first time and while I can see it's got a lot of potential, it's been hard. I'm a pretty experienced Houdini user, but figuring out how TOPs works for me has been rather confusing. I've talked about it to people I work/have worked with and their responses have generally been along the lines of “seems like it could be cool, but I had a look and I'm not touching it again”.
This is a shame because IMO it's small generalist studios without established pipelines or lots of technical R&D staff who can potentially get the most value out of TOPs, however it's just not very accessible to them.
I'm confident that the tech behind it is solid but the usability and discoverability is letting TOPs down right now. On top of this there are quite a few inconsistencies with the way the rest of Houdini works, which adds to the confusion. Here's a few ideas on things that can and should be improved, and potential solutions.
Discoverability
TOPs should have its own top level context but that's been mentioned before already. But at the moment, if you do put down a TOP network and start poking around in the tab menu adding nodes, nothing works. It's very confusing! Turns out you need to add a scheduler, which is non-obvious and inconsistent (other networks in Houdini don't work like this).
At the very least there should be a local scheduler added by default when you create a TOPnet (like the copnet inside /img). Seeing this unusual floating scheduler node immediately would go some way towards communicating how TOPs works differently to other Houdini networks.
Discoverability (Execution)
Also on discoverability, it's also very unclear at a glance how to make the TOP network actually do anything. Other networks in Houdini have a visual UI element which triggers a cook, but there's nothing like that for TOPs. These are the most important actions, which are needed to actually making TOPs work, but they're hidden away in right-click menus and hotkeys. No other networks in Houdini work this way either (you never RMB to cook a SOP or render a ROP) which makes it even less likely that people will stumble across it.
TOPs really needs a consistent, visual, obvious way to trigger a cook. For SOPs this is the display flag (kinda), and ROPs have the Render button which is easy to find, right at the top of every ROP node. TOP nodes could have something similar on every TOP, which would be easy to understand for people already familiar with ROPs (eg. see image attachment)
Terminology
The idea of ‘dirtying a graph’ is a highly technical programming/graph theory term which means absolutely nothing to a huge proportion of Houdini users.
Can we please change ‘Dirty’ to something like ‘Reset’ or ‘Clear’? Eg. ‘Reset and Cook Selected Node’?
UI/Parameter Layout
Usually Houdini's parameter panes are organised top to bottom, with the most important often used parameters at the top, and lesser used (or parameters dependent on higher ones) further down the bottom. This is good since when you're trying a new node, you have a sense of what's important and what you should start poking at.
Many of the TOPs on the other hand have the ‘Work Item Generation’ and/or ‘Cache Mode’ parameters always at the top. These seem rather obscure to me - maybe these were more important in earlier versions of TOPs but with the ‘Automatic’ mode it seems like something that rarely if ever needs to be used in the course of day to day work. These parameters could then be sent down the bottom or to a consistent secondary tab so they're not always the first thing you see when you select a TOP node.
There are also a few cases where things could be clearer with better parameter naming. One thing that I didn't understand immediately was ‘Evaluate Using’ on the ROP Fetch, which didn't mean much to me. Perhaps this could be changed to something like ‘Generate Work Items’: ‘One per Single Frame’ / ‘One per Frame Range’
Anyway, that's just a few things I came across initially, will mention more as I get deeper. I also want to make clear that I do like TOPs and the potential for what it can do. Some of the other UI bits like the visualisation of work items is fantastic, I just would love to see it more accessible and easier to get into and make use of.