6 ms·
Unit is a general purpose visual programming system
- deleted 2y ago[deleted]
- bobajeff 2y agohttps://web.archive.org/web/20240702210034/https://unit.software/ https://web.archive.org/web/20240702210034/https://unit.soft...
- thomastjeffery 2y agoNot working for me...
- mkl 2y agoSame on mobile. None of the captures seem to work after a domain parking notice in 2021. It partly worked on a computer.
- deleted 2y ago[deleted]
- paulhart 2y agohttps://github.com/samuelmtimbo/unit/ https://github.com/samuelmtimbo/unit/
- leke 2y agoThanks. The linked site is dead.
- DrMiaow 2y agoI love the look of it. Can't wait until it recovers from the attention to be usable.
- deegles 2y agoLooks promising. I would love to see a tool to convert existing programs to Unit. This readme gives a much better idea of how it works: https://github.com/samuelmtimbo/unit/blob/main/src/docs/start/README.md https://github.com/samuelmtimbo/unit/blob/main/src/docs/star...
- brabel 2y agoLooks like a fancy Ladder logic editor, which is how industrial PLCs (machine controllers) are normally programmed. Example: https://github.com/leofds/iot-ladder-editor https://github.com/leofds/iot-ladder-editor Fiddle: https://www.plcfiddle.com/ https://www.plcfiddle.com/ Real world: Siemens SIMATIC for S7 PLCs (this lets you interchange between an Assembly-like language and the visual Ladder logic): https://cache.industry.siemens.com/dl/files/395/18654395/att_33349/v1/KOP_e.pdf https://cache.industry.siemens.com/dl/files/395/18654395/att...
- andsoitis 2y agoPrior discussion: 10 months ago; 30 comments https://news.ycombinator.com/item?id=37156337 https://news.ycombinator.com/item?id=37156337 Related: A personal history of visual programming environments (Dec 2022); 27 comments https://news.ycombinator.com/item?id=34094223 https://news.ycombinator.com/item?id=34094223
- benzguo 2y agoLove unit, long time admirer. If you're into this, you might also be into Substrate - a non-visual but also graph-based programming model, for multi-step ML programs https://www.substrate.run/ https://www.substrate.run/
- mdaniel 2y agohttps://guides.substrate.run/changelog#june-20-2024 https://guides.substrate.run/changelog#june-20-2024 > Added `If` Uh, that's a pretty weird thing to add in a second release
- dmkolobov 2y agoIs it? At work we added conditionals to our expression language some four or five years after the first version was released.
- benzguo 2y agoSecond release since our public launch – we've been around in private beta for a bit and have had different versions of conditional support for a while!
- leetrout 2y agoI discovered Unit in the latter half of 2022 and found it very interesting. I always loved Fusion and Houdini for the flow based programming aspects. I think in Houdini's case it is notable that is has such a long history it dates back to earlier research in visual computing... Anyway, I used Unit as an excuse to play with OBS and stream a bit... if you'd like to see a video of how I figured out some bits about how it worked since I couldn't find anything close to a tutorial I have a video on YouTube: https://www.youtube.com/watch?v=vwknTfGVDq8 https://www.youtube.com/watch?v=vwknTfGVDq8
- crdrost 2y agoThank you for posting this! It confirms my suspicion that Unit is probably not reinventing the meaning of computation to match the new visual medium? But still quite interesting how it is laid out.
- DrMiaow 2y agoI have seen dozens of these things and have made a few myself. Beyond some specific use cases, they don't seem to scale cognitively. The tangle of connections is a problem. The previous HN link from @andsoltis has a better critique than me. Don't get me wrong. Besides being experientially cynical about these things, I'm also firmly in the camp of "one more UI breakthrough, bro and we might crack it!" This one has some deep design that definitely attempts to extend the state of the art but still struggles with that aforementioned problem. TBH though, the coolest feature is that widget that focuses on what you are doing. There is something there with it, I'm just not sure what the "there" or "it" is, but I do know I like it.
- vidarh 2y agoI spent a lot of time on this too, many years ago, including working on a language designed specifically for it, and my conclusion was that I couldn't find a way to make it work without making the visual representation "just a tool" for working with a textual representation, because we still need to be able to communicate about code in all kinds of context where a largely visual system would mean being forced to share screenshots, as well as being able to handle e.g. diffs and source control. And once you still need to know and understand and work with a textual representation it feels like a lot of the potential evaporates, and that made me gradually lose interest. I'd love it if someone found a solution to that, but it feels like an intractable problem beyond some specific use cases as you say. I really hope I'm wrong.
- adastra22 2y agoThat’s fine though? Ultimately everything you do on the computer is just a representation of bits being shuffled around. That doesn’t diminish its meaning or effective’s of a better user interface.
- vidarh 2y agoThe problem becomes if the form you're used to working with the code in is very different from the form you need to communicate about it in. In practice every attempt I've looked at either become hard to communicate about the code in, or the visual aspect tends to end up just becoming a secondary visualisation of code that you still treat as textual first. In the latter case, turning it into a better UI is an unsolved problem, because round tripping reliably between something readable as text and a meaningful visual representation is really hard. As I said, I hope someone solves this, but most attempts aren't even pushing the boundaries into uncharted territory - a lot of attempts have been made over the years.
- celdon25 2y agoThis is quite comparable to the vision I had in 2012 for NuzzGraph, but there was no way I was going to realistically make any real progress given the complexity and my lack of experience at the time. Also it was clearly a solution in search of a problem. I was a believer in the idea that graph databases would enable a new paradigm of application development in the way that relational databases did, and wanted to try to pioneer something. That was (so I thought) what college dropouts like myself in my early 20s needed to do to get ahead in tech, as I was only a mere data analyst at the time, with no connections to the tech industry, scraping by while living inside a garage. It was a good exercise though and it somehow out of sheer luck caught the attention of Manning Publications as it likely came up in the search results for OrientDB. My project page included a sort of roadmap to integrate with OrientDB. They signed me on as a co-author of the book OrientDB in Action as the other author(s) IIRC weren’t native English speakers and they needed one. The book was never released but a different author released a similar book without publisher backing which was good enough for OrientDB. If a publisher ever approaches you to help write a book, no matter how ridiculous of a candidate you think you are, your initial response should always be yes. You don’t have any obligation to actually finish a book unless it’s in the contract. You won’t make a dime but you’ll get world-class training on writing technical documentation. They only required that I complete a draft of one chapter within a shorter timespan for the first phase. https://code.google.com/archive/p/nuzzgraph/wikis https://code.google.com/archive/p/nuzzgraph/wikis https://code.google.com/archive/p/nuzzgraph/wikis/NuzzGraphBenefits.wiki https://code.google.com/archive/p/nuzzgraph/wikis/NuzzGraphB...
- webprofusion 2y agoPro tip: before launching on HN stick your site behind Cloudflare first so they can cache most of your traffic.
- remon 2y agosolution > problem
- wangii 2y agoThe flow based visual programming has always being challenging field, and the problem remains: what are the values added comparing with the text based coding? I really want to love it, please give me a strong reason.
- bmitc 2y agoDebugging is quite nice. Clicking on a wire and being able to visually see its value at runtime and even present it in a custom UI, like a graph or chart, is awesome.
- otabdeveloper4 2y agoIt's easier to parallelize a flow graph than a sequential series of instructions. (This is why visual flow programming caught on in embedded hardware and IoT.)
- imtringued 2y agoSo what are the applications for this? Writing video game mods in-game? Text is dense and we have ten fingers. It is pretty obvious why text won.
- williamcotton 2y agoI think the future is in mixed modal computing environments. Text is superior in some architectural paradigms and inferior in others. Box and noodles can be more descriptive and interactive for some parts of a system but probably not for all parts of a system. Configurations for parts of applications can be better in a GUI than a yaml file. Embedding one language like SQL in another could have an integrated GUI subeditor complete with language server.
- beefnugs 2y agoVisual/graphical like this I think should be layer of abstraction above traditional text code. With the express purpose of search/reuse (especially by less skilled computer users) 1) So a user creates a couple of nodes in a graph: a button, his specific hardware, a text node saying he wants to calcuate clicks per day. 2) This graph is then used to find published graphs by people who have used these nodes in a completed/deployed instance. 3) The user can easily browse and pick an exact complete graph to deploy himself. (layers here such as preventing private wifi passwords from getting to the published graphs) 4) If the graph is complete in terms of pointing to his exact hardware, exact code chunks as nodes, exact sdk versions then it transforms this graph into typical source code, and can be compiled and deployed, and after confirming it works, then shared again to the public graph collection to let others know it works. 5) if the graph isn't complete, you might have to write some code chunk nodes, connect things properly, or else use AI (har har) or even mark nodes as "todo: can someone please implement this code, or pledges/bounties for someone to help implement" 6) People need to be able to jump into any level they are comfortable with, the code, the graph shape, the public list of TODOs. Then there is translation/generation into the other levels. This makes a tool for higher level collaboration, that should be able to converge on finishing off desired solutions. The whole point being a new level of abstraction that makes code reuse possible if someone has implemented the same thing in the past already. (but even if it was on different hardware/sdk there should be reusable stateless functional-style code that can be stitched together a bit easier)
- rickcarlino 2y agoDNS is not resolving for me. Is this an HN hug of death? Anyone have a link to GitHub or similar?
- jimmySixDOF 2y agoThey are pretty active on xTwitter if you want to see some samples : https://x.com/io_sammt/status/1792251421154316516?t=Glk0hVvoa3MAXgWq5HP9HA&s=19 https://x.com/io_sammt/status/1792251421154316516?t=Glk0hVvo...
- everythingabili 2y agoHi, I've probably mentioned this a few times on here, but Prograph was a GREAT example of a visual language, that solved a LOT of issues (spaghetti code) etc. It's worth a look if you're interested in visual programming * object oriented * scrunching of code - tha could be turned into functions (local-to-opers) * you could edit code and values whilst it was running * FAST! Here's an ole video of some server software I made, that at the end shows me rustily doing some Prographing. https://youtu.be/MtECJw59elc?si=svRbd5_IA4cAFhVa&t=1429 https://youtu.be/MtECJw59elc?si=svRbd5_IA4cAFhVa&t=1429 p.s A free version of Prograph (Marten) used to exist, but when the genius creator died, the project, sort of lost its way too.