Hacker News new | ask | show | jobs
Flowhub is now in Public Beta (flowhub.io)
57 points by svetly 4421 days ago
23 comments

I can not, for the life of me, tell what this is from the website. The video seems like a parody from the HBO's Silicon Valley show. I even clicked through to the app http://app.flowhub.io/ which wants me to log in and then clicked on the "Docs" Button and finally got to this:

Flowhub is a web-based IDE for flow-based programming. It is built on NoFlo.js for both client and server. It can connect to any language or environment that can talk the FBP Network Protocol.

Which is kind of nonsense unless I'm already clear what "flow-based programming" was. Which I wasn't until I google'd that. Maybe its me. It seems if you're going to promote a new tool with for a obscureish programming paradigm you might want to explain the paradigm as well.

> I can not, for the life of me, tell what this is from the website.

This makes me feel a little better. I couldn't tell what this is, either.

I scrolled all the way down and eventually found a FAQ link that helps: http://flowhub.io/documentation/flowhub-faq/

May be worth putting that somewhere more prominent.

Similar. I watched the video, read all the copy too, which I usually wouldn't do. Sucks these things are hard to fix on announcement day...
Would this help too? http://bergie.iki.fi/blog/noflo-kickstarter-launch/ (from back when it was still called NoFlo UI)
You're not the only one who had no clue. I still don't. I watched the video. I made this comment. And I'm not wasting another second of my time on flowhub..
You're not alone. Even the wikipedia page on flow-based programming doesn't help me much.

I'd love to see something like todomvc implemented with this, to give it some grounding.

An implementation of TodoMVC is really a good idea! There is already a (re)implementation of Jekyll using NoFlo that you might find interesting: http://bergie.iki.fi/blog/noflo-jekyll/
Not to mention the app itself seems very broken. I think they're in much to early a stage to launch a public "beta."
We built on Polymer, so that imposes quite strict browser requirements. See http://flowhub.io/documentation/flowhub-faq/#browser-require...

However, if you're having one of the supported browsers and still have problems, we'd love a ticket at https://github.com/noflo/noflo-ui/issues

Granted that dataflow programming (DFP) is probably a bad idea for general-purpose software development, I still think there are some great use cases for it.

For example, I think it could be a great fit for business intelligence and data analysis, since DFP really is a pretty natural way to think about data transformation and aggregation, and most people that would not be able to understand a map/reduce function or a complex Python notebook would probably be able to understand a flowchart-like diagram showing the transformations applied to the incoming data.

Business process automation could be another great use case for this technology, since it's also natural to think of a business process as a flowchart.

The advantage of these specialized use cases is that you don't have to reinvent programming from scratch to make them work.

Enterprise ETL, process automation and service integration is a massive market, it'd be cool to see them buddy up with someone like Mulesoft. I tend to think these kinds of services aren't really suited to general consumers but there's definitely a place for it in the enterprise space.
Sure, there's space for graphical flow-based programming to wire enterprise components together—but there also a slew of established enterprise products occupying that space.
Woah, I have no relationship whatsoever with this guys, but I am quite disappointed with the kind of responses in this thread.

In my opinion there should be no destructive critics in any "Show HN" thread.

If you find some mistakes or whatever, you could make a constructive critic, ie: Hey guys, IMHO you should add more info in the landing page, because I am not understanding what your project does.

On the other hand, as someone posted in this thread you could tell them: "You're not the only one who had no clue. [...] And I'm not wasting another second of my time on flowhub.."

Is that the kind of answer that a fellow hacker deserves?? I don't think so.

Remember that people do not post projects at HN only to reach a big audience, but also to get a great feedback from smart people. So before giving impolite answers, we should remember that we are all in the same boat, and the next "Show HN" thread could be your project. Think about the kind of answers you would like to get.

PS:I know that most of the people at HN is great people, but I think this needed to be said today.

If you Show HN, and someone takes enough time to give it, that's valuable to you no matter the tone.

"Didn't get it, not wasting any more time" is an incredibly valuable comment to receive because it helps you understand the most common occurrence for your home page, someone landing and immediately moving on. You'd normally never get feedback from that traffic and not know why they bounced. Now the builders know what to fix to increase engagement.

I am elderly enough to remember IRIS Explorer on SGI Workstations way back in the 1990's, when having a 2Gb hard drive was just about unimaginable.

Here is a quickly Googled screenshot:

http://wwwasdoc.web.cern.ch/wwwasdoc/lhcpp/irisexplorer.gif

IRIS Explorer was awesome, but hardware was not really up to the job in those days. There was also a rich market in GIS and other applications that did what you needed so there was no way you were going to roll your own with IRIS Explorer.

However, the scope and ambition to do stuff with it was incredible. It was far beyond the flat (as in non-3D) internet we have ended up with.

IRIS Explorer was 'flow programming'. You did not have to use it to overlay a vegetation map over a terrain map to render it in 3D and step through the seasons, with widgets to control al aspects of the show, you could use it to render something lame if you wanted to.

Despite the awesome-ness of IRIS Explorer it failed in the marketplace. This was not because of hardware or that there weren't milliions of code modules to casually wire up. For me, trying to do things with it, the problem was because of the 'black boxes'. Sure they had pretty controls on them and you could pump your data in and out of them with a few mouse clicks. However, at some stage you had to go inside those black boxes and work out what was going on. A box could have '2 + 2 = 4' inside it but there was all kinds of toolkit code to take the inputs and set the outputs. A couple of lines of code would do, but those black boxes had a lot of cruft with them. All very off-putting. So, if 'flow programming' with flowhub is to get anywhere, there needs to be an easy gradient between the 'as per the video' way it works and the reality, i.e. inside the black boxes.

IRIS Explorer seems really interesting! I agree with you about that "loose of control feeling". I think it is a common effect that happens every time we go to a higher level or alternative paradigm. We have to create ways to easy go trough those levels and back again.

With Flowhub you can always go inside the 'black boxes' creating your own components as reported in the "Component Editor" section of http://bergie.iki.fi/blog/flowhub-beta. It is also possible to create and remix subgraphs that is another way to abstract a complex group of components.

I believe the British 'NAG Group' bought IRIS Explorer and that it is still being used in academia. You should approach them, explain what you are doing and try to get a demo.

Reason being that wheels get reinvented, and, in IRIS Explorer, there were lots of ideas that were far ahead of its time. Some of those ideas have been lost and some bright spark just needs to pick them up again...

I agree wholeheartedly with being able to go inside the black-boxes, and the transition be smooth. In NoFlo, one of the the main runtimes for Flowhub, the components are JavaScript/CoffeScript|. They can be viewed and modified from within the UI. The API is pretty simple, and was improved further with NoFlo 0.5. I'm experimenting with some ideas from the functional and automata/finite-state-machine world on how we can improve things further. I also think it is important that people can freely chose how much and on what level you use text/code OOP and which level you use nodes/graphs FBP. Embed NoFlo as a DSL for a particular problem area, use as general purpose language, or just as a coordination layer between your high-level modules.

| In MicroFlo, another runtime for microcontrollers, they are C++

I think well-structured and designed landing pages are too infrequent, so I like the OP on that alone...and being an optimist, I'm always a little excited when I hear of a new paradigm, or an iteration of it...because that means that there is a (slightly) new way of thinking about and doing things...maybe even better than my own. Either way, I like that the opportunity exists (even if I never get around to thoroughly investigate it).

And I know a lot of this is promo-copy, but this kind of stuck out to me:

> Focus on the right areas without fear of constant conflicts, code reviews and lengthy onboarding processes.

Again, I'm not experienced in the flow-paradigm...but I just have to guess that the need for code reviews is not because traditional code is not visual enough. In fact, I'd argue quite the opposite... a visual diagram offers some great big-picture benefits, but at the loss of granularity...if anything, I'd think a flow-based paradigm would require as much code review as before, but perhaps with a different mindset.

I also think the background image for "Drag, Drop, Connect, Build" is...not inspiring to me. I mean, it's useful in some respects for overview of dependencies, maybe...but dragging-dropping and interpretation of visual symbols is not always more efficient than pure textual concepts. In fact, I'd argue that it can be even less efficient. How easy is it to examine the underlying abstractions behind connecting one pipe from one icon to another?

How easy is it to examine the underlying abstractions behind connecting one pipe from one icon to another?

Depends on the runtime you're talking to. For example MicroFlo on an Arduino behaves quite differently from NoFlo on Node.js

In NoFlo each connection is basically connecting an event emitter to an event listener. So, what happens is a JavaScript addEventListener operation.

how do ya'll handle errors? Is this primarily built on Node?
Errors are generally sent as a data packet to an error port (convention), or thrown if there isn't a connection to that.

NoFlo is running in three environments: Node.js, browser, and GNOME's JavaScript env

If the website's performance is a promise of the performance of the application, I don't really feel tempted to try it.

I'm using the latest Firefox Aurora release and I am getting very sluggish scrolling and slow loading on the main page. I wish this trend of gigantic slide-able pictures and animated transitions would stop. Yes, it feels like I'm browsing through a tablet/phone app, but I'm on a desktop, I'd love to have a desktop experience.

Sorry for the rant, the application itself seems nice though.

EDIT: also please don't force people to register and login to try the app, if I can't just get on the page and try it without giving away some private data, I don't really feel tempted to try it at all.

Nah, that is related to GSS stylesheets on the site making use of the matrix3d part of CSS. Unfortunately lots of (expecially Linux) 3D drivers are not exactly up to the task.

Edit: as for required login, that isn't needed to play with just the examples.

Photo booth: http://app.flowhub.io/#example/7804187

Animated clock: http://app.flowhub.io/#example/7135158

Canvas pattern generator: http://app.flowhub.io/#example/1319c76fe006fb34c9c9

I can play 3D videogames with lots of advanced shaders and even develop my own, perform very demanding computations on my 8-core machine and watch HD movies and stream from the web, yet I can't easily view a simple home page from the internet?

Is this the state of technology in 2014?

If you are indeed on Linux, you may have to enable hardware acceleration at chrome://gpu . Last time I checked it was not enabled by default on Linux.

edit: Ack, sorry, just re-read parent and you are using Firefox. I do not know whether they have similar issues with 3D acceleration on linux.

Also I am not saying the website couldn't perform better, you have a valid point there.

Yeah, it is a shame. I'm getting some checkerboarding there too as my Chromebook Pixel can't always keep up with rendering the surfaces when scrolling quickly.

Funnily enough my (a lot slower) Nexus 7 scrolls much better. That is what points me towards 3D drivers.

But anyway, shall we talk about Flowhub itself? ;-)

Welcome to the "open" web! It is build on "new" technologies such as HTML, CSS and JS.
> also please don't force people to register and login to try the app, if I can't just get on the page and try it without giving away some private data, I don't really feel tempted to try it at all.

I meant to fix that before launch, but now you can launch examples from the home screen before logging in. https://github.com/noflo/noflo-ui/issues/220

Hey HN guys ... you should read up on the Kickstarter page before dismissing this, it really contains a ton of information summarized: https://www.kickstarter.com/projects/noflo/noflo-development... (The videos are especially great!)

Bergie has a lot of content on his blog as well (http://bergie.iki.fi).

At first glance it shares a lot of similarities with Quartz Composer, which on Wikipedia is described as a node-based visual programming language.

http://en.wikipedia.org/wiki/Quartz_Composer

Also LabVIEW, albeit with much better design

http://en.wikipedia.org/wiki/LabVIEW

Flow-based programming is already common in enterprise finance. It's a large part of my job. Enterprise fbp solutions are extremely expensive and sometimes secretive (ex. Ab Initio), so it's interesting to see this become more mainstream.
I need a better introduction to understand how flow programming works, and how I might use it. Instead I see a (seemingly) complex graph which I understand represents a program, but it's not clear how this really works in relation to text programming. I could spend hours and hours digging to figure it out, but that could be a waste of time, so I won't do it.

I get text based programming. Find a way to quickly connect that experience with flow programming, and conversion rate on this site will improve.

This is still beta, so we're mostly trying to reach people who already are doing flow-based or other dataflow programming.

But agreed that we could probably explain things better! Does the description of the concept at http://noflojs.org/ work for you?

If anyone is in the mood to spend some time learning about flow-based programming works, there is a lot of material here: http://www.reddit.com/r/DataflowProgramming/
"This program requests read and write access to all of your public repos".

Can this be scoped better? I'm willing to give access to one public repo.

Not to my understanding. You either get access to all public repos, or all public/private repos.

If somebody knows a way to make more limited permission requests, please let me know! I'd be more than happy to make that more granular.

https://developer.github.com/v3/oauth/#scopes

At least advise people to create github accounts for their flowhub activity which they add as collaborators to their projects.
Interesting idea, even if it means having to jump through a bit more hoops than would be ideal.

I could maybe add that to http://flowhub.io/documentation/flowhub-faq/

Edit: here we go http://flowhub.io/documentation/flowhub-faq/#why-does-flowhu...

Looks great! I like the quartz composer like interface. Good luck with the projecT.
In Opera 12 i get only a black page on which i can scroll down a bit to more black.
Ah, come on, you sold out already? It's not even been an hour on HN, let me in dudes I wanna know what this is.

e: Tried example. I don't get it. It's like coding with a mindmap or something?

The initial batch of discounted pre-orders is sold out. We'll do another batch later this month.
I'm a backer, but I'm outraged with the paid plans. I'm not sure how people design their pricing models, but often they are completely disconnected from reality!
Well, there is also the free plan for open source and public projects. And the UI is open source for those who really don't want to pay for the service.

http://flowhub.io/documentation/flowhub-faq/#paymentslicense...

Is this like a LabView for building web applications?
I've installed the Chrome App, login and that's is all I can do. Creating a project fails...
Same here!
The examples are like a spaghetti code visualisation
Brilliant work guys
Children. Please relax. Not everything needs to be TL;DR. Feel free to do some research on your own as well.
Is this a joke? I am serious...
I found this to be helpful:

http://bergie.iki.fi/