[HN Gopher] Show HN: Free hosted open-source alternative to Zapi... ___________________________________________________________________ Show HN: Free hosted open-source alternative to Zapier/Airflow Author : newcrobuzon Score : 234 points Date : 2020-09-08 12:26 UTC (10 hours ago) (HTM) web link (cloud.titanoboa.io) (TXT) w3m dump (cloud.titanoboa.io) | j45 wrote: | Being a JVM friendly tool, it would be great to unlock other JVM | syntaxes to allow scripting in any lanugage.. Jython for Python, | Quercus for PHP, JRuby for Ruby, etc. | newcrobuzon wrote: | yes, I am considering this and it should not be _that_ hard | (also Kotlin, Nashorn javascript...), but at this stage | Titanoboa is just a one-man-show - so patience, I might get | there ;) | j45 wrote: | For sure. Being a one man army has it's perks and challenges. | I hope this project has a community form around it. | | The JVM is more underrated/unknown than it should be in the | startup space, tools like what you're making make it far more | accessible. | ramon wrote: | newcrobuzon you're a genius my friend someone should give you | an award I loved your idea and how you approached it it's | fantastic for developers. I'm a root Java dev and I have to | say you did fantastic work to make developers life easier, | you didn't take any approach you made your own this is | awesome. If you get Javascript working I feel like I'm | getting back into AppJet days! This is fantastic stuff. If | you show me how I can help get the javascript stuff going I | would be glad to help you in this initative since I have | adopted NodeJS recently like you said, being a one man army | you have to be efficient and JS makes me more efficient. | mdaniel wrote: | FWIW, I would have to check all the ones listed but if | they're sane scripting languages on the jvm then they'll | implement the JSR-223 interface allowing one to pick them at | runtime without a huge amount of drama: https://jcp.org/about | Java/communityprocess/final/jsr223/inde... | ramon wrote: | I liked the video demo really nice and I would say this should be | called not low-code or no-code but rather aPaaS which is | Application Platform as a Service. | | So the title should be "Host your own aPaaS" instead. | PascalW wrote: | Nice work! | | How does it compare to n8n? [0] | | n8n is the closest OSS alternative to Zapier I've seen so far. | | [0] https://n8n.io/ | lulzx wrote: | It's license (fair code) sucks. | j1elo wrote: | Why exactly? I myself have been researching the options that | exist to write open source software but at the same time | prevent industrial leeches from benefiting from it (aka. | avoiding Amazon playing an Elasticsearch move EDIT - or was | it Mongo?). | | So far I've stumbled upon using dual AGPL + commercial for | those who don't like the copyleft; using something like | Mongo's SSPL; MariaDB's BSL; and now, Commons Clause. | | On the surface (I didn't yet study carefully the intricacies | of all options) all these look to me as a great way to | publish code and contribute to the whole of our common | knowledge, while at the same time being able to maybe make a | living from it, something for which it's important to prevent | some bad actors from bundling it and profiting from it on | your behalf. Otherwise that code wouldn't really exist at all | to start with... | | I might write an Ask HN becaude this topic is complex. | newcrobuzon wrote: | That is a fair criticism, I am aware of the AGPL license | shortcomings. | | I just picked up the more restrictive license at the | beginning - being a sole funder and not working on this full | time etc. I simply did not want somebody (e.g. a big company | with a big team) grabbing my code along the way and running | away with it. | | Since now Titanoboa got to the shape I envisioned it to be in | I am starting to focus more on adoption, so yes I am | definitely thinking about switching to less restrictive | license since it will probably help. | | Also at the beginning I was not aware how badly AGPL is | perceived (I always thought if it was good for Mongo it could | work for me, but I may have been wrong). | [deleted] | cstuder wrote: | You misunderstood, it's not you who's being criticized. | | n8n used to write "open source" on their webpage while | publishing the product with a proprietary license. A lot of | discussions ensued. | | https://github.com/n8n-io/n8n/issues/40 | newcrobuzon wrote: | Oh really? Wasn't aware of that. Thanks for the link! | newcrobuzon wrote: | A bit similar, but on JVM. The main focus of Titanoboa is | however as follows: | | - make rapid prototyping of new steps possible during runtime, | without any need to restart/redeploy | | - focus on distributed processing, where in master-less | Titanoboa cluster you can have pretty much any number of nodes | jchook wrote: | @newcrobuzon you have some kind of comment string output at the | top of your html body tag. Looks like something you do not want | exposed. | | Congratulations on reaching public beta and for submitting to HN! | Looks very promising! | newcrobuzon wrote: | Thanks! If it is the recapcha string then it is just an old | public string for local testing. | | But I would upvote you 100x or send you a medal or something if | I could, this is really super nice of you letting me know! | ForHackernews wrote: | How does this compare to Prefect? https://medium.com/the-prefect- | blog/why-not-airflow-4cfa4232... | newcrobuzon wrote: | To be honest Prefect just got on my radar last week, so I will | need to look at it more closely, I was not aware of them till | then. | | Obviously this is for JVM, plus I am not sure how Prefect | addresses following two points I mainly focus on: | | - make rapid prototyping of new steps possible during runtime, | without any need to restart/redeploy | | - focus on distributed processing, where in master-less | Titanoboa cluster you can have pretty much any number of nodes | ramon wrote: | Prefect is like an hour just to put up the kubernetes | environment required for it. The way you have it you can just | do a simple docker run and start coding this is the | comparison and you're coding on the web no need to steup | VSCode or nothing it's fast. | bambam24 wrote: | I stop watching it when he said "here I can add any Maven | dependency" | newcrobuzon wrote: | Well yes, this is for JVM, so maven ecosystem, sorry. | | I have been contemplating also doing a clone on node.js | (titanoboa is written in clojure so it would just be a move | from clojure to clojurescript), but I did hear that the npm | ecosystem is a bit uninviting too... | | What dependencies tools would you like to see? | sixhobbits wrote: | I've used Zapier a fair amount and I wrote an article about | Airflow so I have a fairly good understanding of that too. | | I would never really consider them alternatives though? To me | Zapier is a low/no code tool that offers a bazillion integrations | and Airflow is a workflow orchestration tool. | | So comparing to both of them confuses me and I guess choosing one | would give you a more nieche audience but one that you can | connect better to as well. | mrweasel wrote: | There's also a problem with describing your product as "an | alternative to". I don't know what Zapier and Airflow is, but | now I want to find out, which pushes me towards the | competition, rather than just explaining what your product does | and have me view the competition as the alternative. | newcrobuzon wrote: | This is a very good point. | | My current line of thinking is: _A workflow is a workflow is a | workflow_. Titanoboa is built the way that pretty much | everything it shuffles is data - and either it can be big | (Airflow) or the steps can have side effects (iPaaS /Zapier). | | The "no code" is achievable since adding more predefined steps | is not that hard (there's not that many at the moment though) - | see for instance | https://github.com/mikub/titanoboa/wiki/Getting-Started-with... | - you dont code, you just fill in properties, so it is very | straightforward, pretty much like Zappier. | | My aim in the iPaaS space is more at the enterprise level, | where the predefined steps won't do anymore and you have to | custom develop them anyway - so in that are I think Titanoboa | shines since you really can rapidly prototype steps on the fly, | a bit like Repl.it and Zapier together... | | I agree that it might be good to pick one audience, at this | stage I am just experimenting if somehow I can market to both | and don't mess up and confuse both groups. | j45 wrote: | Keep converging and building. | | I have been experimenting with combinations of huggin, | camunda, airflow and others to try and achieve an integrated | workflow/state/process management. | | There exists a gap in the enterprise space between all these | tools.. and it has been further exacerbated by the disruption | introduced to many industries by covid. There is a real | opportunity for small and medium businesses to be able to | access tooling that is beyond what a base line Zap, etc can | accomplish. | | Would be happy to connect offline. | newcrobuzon wrote: | Thanks! Will reach out when the traffic subsides :) Or feel | free to shoot me an email, my email address is on the web | page. | lewisjoe wrote: | Very true. We really should stop overloading the term | _Workflow_ in software. | | As of now these are the broad categories that abuse the term | workflow. | | 1. State Machines | | For example in Jira a bug/ticket moves through different states | to reach a final stage. This type of state-machines can be | found in a lot of different softwares - most CMS/bug- | trackers/CRMs where the entity is different | (document/bug/lead). | | The motive of these systems who call themselves as workflow | engines - is to provide a structure to an otherwise ad-hoc | movement of entities so that a lead/manager is able to ensure a | process and collect statistics. | | 2. Automations | | For example "apple workflow" app or Zapier or Zoho Flow. These | softwares define a sequence of steps that are triggered when an | event occurs in the system. | | The motive of these systems are to enable automation and | integrations between different software components with zero | code (thus, no-code). | | 3. Process Designers (Bad term but can't think of anything | better at the moment) | | For example Airflow/Camunda. These systems are not necessarily | low-code but they mostly deal with arranging individual | components of code such that a process can be assembled as | quickly as possible. These systems usually are accompanied by a | visual designer like what Zapier has, but the intentions are | mostly to ease out the process, than being a complete no-code | tool to create automations. However, their marketing tries to | sell themselves as no-code platform for business folks. | | The motive is not yet very clear to me but from my initial | intuition they can be used to initiate some data-processing | pipeline, I guess? If anybody can throw more clarity, please | leave a reply. | | Now as you can see, much like how a "Process" can mean many | things in many different context, the term "Workflow" can mean | a lot depending on the context. Any software that calls itself | the ultimate workflow solution is just a lie. It's like calling | something an "ultimate process engine" - doesn't make sense. | zacwest wrote: | I'd like you to listen to this file, which is your first | 'headline' read by `say`: | https://www.dropbox.com/s/fanpqs8lv2d9nvl/say.m4a?dl=0 Now | imagine yourself in the shoes of a vision-impaired person | relying on a technology like VoiceOver. Do you understand how | unbelievably frustrating that is? | lewisjoe wrote: | Thanks for pointing this out. Never knew this would break | screen readers. Sorry. I'm changing the font right now. | samstave wrote: | > __ _Now imagine yourself in the shoes of a vision- | impaired person relying on a technology like VoiceOver_ __ | | --- | | Yeah - thats "frustrating" for like what, 'dozens'? As | opposed to just the other problems in the world that dwarf | this? | | Now imagine you are a % of the population of the globe who | actually requires this to be a thought. | | Yeah - personally, i see this as a statistical straw-man. | | Sure, why dont you imagine yourself as a gay queer trans | java programmer from ohio that moved to silicon valley for | more acceptance and is going to try to make it in FAANG | based on the fact that youre gay queer trans as opposed to | say, your ability and then blame people on the hostility of | the environment to you because you choose to only wear | naturally harvested wool and eat kale. | | Yeah, nobody gives a shit. | | Either be a good person and do good work, or GTFO - nobody | really cares about anything else. | Grimm1 wrote: | "However, their marketing tries to sell themselves as no-code | platform for business folks." | | Huh? I've never seen Airflow described as no code or tried to | sell itself that way, in fact all the pipelines are written | in python and you can do some really complex orchestration. | | I get you're not saying Airflow is no code but that the | category you've put it in is typically low code or marketed | as low code, but then I don't think Airflow belongs in that | category or rather, and maybe more accurately, no/low code is | not really a major defining quality of the bucket you're | calling "Process Designers". | | I've also been calling them "Process Schedulers" because | typically it involves translating a more manual, but well | defined process into it's automated phase. | newcrobuzon wrote: | I would agree. | | The no-code is an illusion in the enterprise realm - before | you know it, you are waist deep in the custom code. | | No-code can really work only for small businesses imo. | | I come from enterprise background and that is one of the | reasons I built Titanoboa - to make something that makes it | easy to rapidly prototype new integrations on the fly. | | I summed up some of my thoughts on this topic here: | https://www.titanoboa.io/repl.html | | __The main point I am trying to test with Titanoboa is | this however __: | | State Machines <-> Process Designers is a spectrum and one | product could handle the entire spectrum (or part of it). | | Titanoboa makes it possible to pre-define workflow steps | and make it "no code" while also making complex custom | integrations possible from the same environment with the | same concepts. Plus also distributed data handling is in | the mix. | | I guess now the challenge is how to market this versatility | or whether it could create more confusion... | neeleshs wrote: | This is not true in many use cases. There are tons of | ways to handle low code/no code. It is a very hard | problem to solve, and vendors end up building basic "low- | code" wrappers around API endpoints, and that's why it | looks like a lost cause. | | Done right, (we are a living proof it can be done, at | Syncari), one can do a lot of stuff done without any | coding | newcrobuzon wrote: | Do you have any links to some blog posts discussing it | (the "doing it right" approach)? I would agree that it | definitely depends on the use case. | | I will definitely check out Syncari - just opened the | landing page and it looks great! | neeleshs wrote: | Thanks! Haven't had a chance to write a lot about this | (heads down building and selling), but | https://syncari.com/a-brief-history-of-todays-data-woes- | and-... touches on it a bit. | | For us, it is about: | | * implementing deep integrations that are commonplace | | * not spraying too thin in the quest of supporting | hundreds of systems | | * thinking from a data model/data/eventually consistent | system perspective | | * completely dropping the reactive/trigger based/if-this- | then-that point-to-point model. | mfateev wrote: | Which bucket temporal.io and Azure Durable Functions that | support `workflow as code` do fall into? | itpragmatik wrote: | How does it compare with Cadence/Temporal? | thrownaway954 wrote: | that is the crappiest website i've seen in quite sometime. my | first impression was that this is either a scam or a joke. in | this day and age, if you are can't afford a decently designed | site, how am i ever even going to give your product a chance. | caymanjim wrote: | First impression: rename it now while the cost is low. The name | is unwieldy. | everfree wrote: | Ti-ta-no-bo-a | | 5 syllables. | | Agreed that this is unwieldy to say in normal speech. | newcrobuzon wrote: | I mostly considered naming to be a distraction from getting | the real work done. | | I also am probably not good with names as my other | alternative was Megalodon (4 syllables) - I just wanted to | have some megafauna name. | | Happy to hear what you folks would suggest :) | dddw wrote: | Gdoc form for suggestions. 1 mail to all users (small | enticement, reward for winner, pro account for life or | something else really nice). Remove any lewd suggestions. | Then pick one you love, or if you can't choose a poll. | afarviral wrote: | "Dinornis" or "Moa" in maori. | StavrosK wrote: | If you're going with the former, you might as well spell | it "deinornis", it looks cooler and is more correct. | acidbaseextract wrote: | Titano is nice, but may have some trademark issues. Tanobo | is easy to say, if a bit generic. Just playing with | syllables. | ohyeshedid wrote: | A fauna focused synonym for canopy? | newcrobuzon wrote: | Hi HN peeps! I single-handedly built Titanoboa (a workflow | automation for JVM) and now I am experimenting with hosting | dockerized Titanoboa instances - so I built a free hosting | service. If you want to play with Titanoboa in your browser | without installing anything, give it a try. | | Feel free to check out Titanoboa on Github: | https://github.com/mikub/titanoboa | | Also: This is an early beta so please do let me know if something | breaks or you spot a bug. Atm I have load-balancers set up only | on West coast and in Europe, so apologies to folks from down | under & similar locations, let me know if it's too laggy :) | cateye wrote: | Why do you describe it as "automation for JVM" instead of | "automation that runs on JVM"? | newcrobuzon wrote: | Good point, not a native speaker so I thought this would | roughly mean the same. | | The main message I wanted to convey was that this runs on JVM | and multiple JVM languages (java and clojure) could be used. | prabhatjha wrote: | Nicely done. Couple of recommendations: - Recommend to change | your licensing if you want people to try. - I understand why you | want to have AGPL but I don't know many successful OSS projects | with this license. There is another HN thread on this topic. | https://news.ycombinator.com/item?id=1657071 | juliend2 wrote: | Very interesting! What library did you use for the SVG powered | diagram tool? | juliend2 wrote: | I think this blog post answers my question: | https://titanoboa.io/visualizing-workflows.html | | Very cool to see how you use clojurescript for this. | newcrobuzon wrote: | I am using D3. AFAIK nobody has used it for worfklow | visualization so far: https://www.titanoboa.io/visualizing- | workflows.html | X6S1x6Okd1st wrote: | Luigi does some workflow visualization with d3 | | https://luigi.readthedocs.io/en/stable/index.html | newcrobuzon wrote: | Thanks, wasn't aware of them! | [deleted] | WrtCdEvrydy wrote: | Honestly I really like this, I can't wait to use it, but my | concerns are around certain features being behind a paywall, | especially HA and Clustering on the self-hosted version. | | I understand that the cloud hosted version should cost more for | these features but without a way to get pricing for the self- | hosted HA and clustered version it will be a tough sell for me to | deploy it, use it and have to scrap it in the future. | newcrobuzon wrote: | Wow, this has blown up a bit, so I have added few more servers | (now two servers on the West coast and two in Europe), but | ultimately I think there is a limit cap of 100 Titanoboa | instances in each geography in parallel. | | So if we break that level please don't be mad if you don't get | your instance :) | | Instead give me a star on github and come back later :) | | Cheers Miro | MiroF wrote: | Wishing you success, fellow Miro. | newcrobuzon wrote: | Ok, I have just reached 100 concurrent containers in Europe, | which is max at this stage and I don't think I can change the | aws limit on the fly (will check though) so I might start | killing the oldest instances. | | Apologies for inconvenience folks, but I am sure people rarely | play with each instance for the whole 3 hours anyway at this | stage. | | Honestly did not expect this kind of "public beta" rollout, | still surprised how well the service holds so far under the | load. | newcrobuzon wrote: | Approaching 100 containers cap in US, so if something does | not work, dont be mad :) | newcrobuzon wrote: | If anybody's curious about this "public beta hosting - HN | bear hug" performance load test: | | I just (sequentially) restarted all 4 servers behind my 2 | load balancers - seems that by reaching 100 containers in | each geography the provisioning threads may have died after | many (unsuccessful) retries, so need to restart the thread | pools. | | That is one more error I need to handle (or increasing my | limit in AWS). | erulabs wrote: | Heya - just a note that I build these kinds of PaaS | platforms for a living - if you need a hand building a | super-massive cluster for lots of users, let me know! | foolinaround wrote: | is there some recipes or some common scenarios one can 'import' | in to check it out? | newcrobuzon wrote: | You can check out https://github.com/mikub/titanoboa-tasklets | And also https://github.com/mikub/titanoboa-sample-workflows | | There are few blog posts I wrote about some sample workflows, | e.g.: | | https://github.com/mikub/titanoboa/wiki/Getting-Started-with... | | https://www.titanoboa.io/using-titanoboa-for-it-automation.h... | | https://www.titanoboa.io/using-titanoboa-for-cloud-integrati... | | https://www.titanoboa.io/java-repl.html | kevsim wrote: | Impressive feat of engineering for one person! | | But is it really an alternative to Zapier? I mean, while Zapier | is obviously about automation, it always felt that their big | selling point was the sheer number of integrations they provide. | newcrobuzon wrote: | My aim is to make this easier to customize - i.e. develop | custom steps on the run and have an instant feedback loop as | you develop or customize existing integrations. | | Target audience might be slightly different ultimately, but | we'll see - I would envision this to be more useful in an | enterprise environment where you pretty much always have to | customize the integrations that were provided out of the box. ___________________________________________________________________ (page generated 2020-09-08 23:00 UTC)