
An open source GitHub-like platform as an alternative for AWS Lambda - friendly_chap
https://github.com/1backend/1backend
======
_Marak_
There is also [https://hook.io/](https://hook.io/) which is a similar open-
source platform that's been running for three years and has over 142 million
deployments.

I'm using this service everyday, also I created it.

~~~
friendly_chap
Hi Marak!

Hats off to you. I remember when talking with Asim Aslam about him going and
creating micro ([https://github.com/micro](https://github.com/micro)), a
microservices framework, I tried to advise him to go high level, as high level
as possible and create a complete platform.

I used hook.io as the example of a project which is on the right path. He said
the world is not ready for it. I said some day someone will make a tool like
hook.io and promote it well and get incredibly popular.

Turns out we were both right. Seems like the world is ready for these kind of
solutions now, and you were ahead of the curve with hook.io.

~~~
_Marak_
Greetings! Thank you for the kind words.

It's really good to see more developers getting into the space of writing
open-source platforms for services. I believe there is room for much growth in
this field. I'll take a deeper dive into 1backend and check out how it works.

hook.io has pretty much a zero dollar budget and maybe $150 spent on
marketing. It's been slowly and steadily growing for the past years and I'm
happy with it's progress. I'm currently working on building integrated
hardware solutions with raspberry pi to offer an open-source local version of
Amazon Echo or Google Assistant type devices.

~~~
koolba
> I'm currently working on building integrated hardware solutions with
> raspberry pi to offer an open-source local version of Amazon Echo or Google
> Assistant type devices.

Any info on the software side of your project? I've been looking for exactly
that (FOSS programmable digital assistant totally under my control). Closest
I've seen so far is Jasper[1] but it's still pretty raw.

[1]: [http://jasperproject.github.io](http://jasperproject.github.io)

~~~
_Marak_
The raspberry is running a local copy of the same software which powers the
production hook.io site. Code is at:
[https://github.com/bigcompany/hook.io](https://github.com/bigcompany/hook.io)

I don't have any turn-key solutions available for setting up the software, but
we are working on it.

I wish I could offer you more at this point. You can signup for updates on our
site and we'll send an email when we have something ready.

I'd suggest hacking away on your own solution and post a write-up on what you
ended up using. The hardest issue I've encountered so far is local voice
detection. Still trying to figure out the best solution for that.

------
friendly_chap
Hi guys!

One of the authors here! We hope you enjoy this much loved project we are
building with our tiny team.

This is a love project of a team who failed at a startup. We decided to build
something we love before getting back to our normal lives :)

I have worked in the faas/microservices space for years before but never
wanted to build something like this (I thought it was too early to explain
what we are doing).

Now with the advent of faas/serverless/lambda perhaps it's a bit easier.

Our focus is building something that enables service reusability and
composability: no more writing the same login service multiple times.

We would also like to host other peoples low traffic services for free if we
can (right now we can't because we are on a small server, fixing that).

Thanks

~~~
paradite
.

~~~
friendly_chap
You don't have to delete your comment, it's nothing to be ashamed of. The
angular versioning situation is really not that simple.

And you are right, the ReadMe likely should say Angular 5 and not Angular 2.

~~~
paradite
For some reason I am getting downvoted quite heavily for it so I thought
deleting it might stop that. But apparently now it is just getting more
downvotes. Oh well.

~~~
dopamean
Why do you care?

~~~
paradite
I don't know about you but I do feel really bad when I get downvoted,
especially when I don't understand why and have no way to find out.

~~~
codingdave
I wouldn't worry so much about it. This is an opinionated group, and having a
different opinion is sometimes not taken well, but it is good to challenge the
status quo, and good to not be part of groupthink. If you stand by what you
said, take your downvotes with pride.

On the other hand, claiming something that isn't true, or being flippant or
not contributing to the conversation will also result in downvotes. And those
are probably a good guide of how to adjust your communication style to work
better within the group.

I have no idea what your original comment was, so I don't know which of those
scenarios is the case here.

------
richmarr
Stuff like this is really useful, although does miss some of the key benefits
of Lambda-like services... the connection between billing and usage on a per-
function basis, the ability to monetise your functions, the ability to scale
genuinely on demand rather than with the lead time required to spin up new
containers or VMs.

~~~
friendly_chap
Some of that is coming, but right now it's only 3 of us who are building this.
It also doesn't aim to be a carbon copy of anything - we have a bunch of ideas
we would like to explore ourselves (we think it's better for the community
this way).

~~~
imglorp
Good stuff in GP list... plus I'm looking for rate limiting to curb abuse (in
your service offering).

------
sacheendra
Also checkout Fission
([https://github.com/fission/fission](https://github.com/fission/fission)). A
Kubernetes based FaaS platform in which you can define functions in any
language and link them together using a DSL.

~~~
jacques_chester
Also OpenWhisk, Kubeless, Fn, OpenFaaS, Riff (I work on this) and probably a
dozen others by now that I've forgotten.

~~~
imglorp
Is there a list of hosted FaaS offerings somewhere?

~~~
bruth
[https://github.com/anaibol/awesome-serverless#hosting-and-
co...](https://github.com/anaibol/awesome-serverless#hosting-and-code-
execution-in-the-cloud)

------
purplerabbit
Everyone here should check out
[https://github.com/apex/up..](https://github.com/apex/up..). No exaggeration:
it's the serverless platform we've all been dreaming of.

Also, it is VERY easy to migrate to for many projects, and has great language
support... and it's developed by TJ Holowaychuk.

~~~
drdrey
Working link: [https://github.com/apex/up](https://github.com/apex/up) Docs:
[https://up.docs.apex.sh/](https://up.docs.apex.sh/)

------
Rjevski
Shame it doesn't support Python nor PostgreSQL

~~~
friendly_chap
It's coming as it's rather easy to add support for running Python apps.
However, we don't have the python know how to implement automatic Python
client generation for services.

------
gsvclass
Checkout SanFran - Lambda like serverless functions platform for Kubernetes
[https://github.com/dosco/sanfran](https://github.com/dosco/sanfran)

The main focus of its design was fast function startup time and horizontal
scaling.

Fast function startup is done with a combination of pool of warm containers
and instant container recycling.

As for horizontal scaling functions can themselves scale horizontally in high
QPS situations and for large deployments every micro-service that makes up
SanFran can itself be scaled horizontally.

Currently working on using machine learning to predictions to manage warm
container pools.

~~~
merb
eh... why should I need a "serverless functions platform for Kubernetes"
especially since I actually need servers for kubernetes. and I can probably do
most stuff way easier than having a framework on top of another deployment/app
scheduling framework.

~~~
gsvclass
A serverless functions platform like SanFran can be deployed on your existing
Kubernetes cluster. It will sit besides all your existing apps on there using
resources only when needed. You can have many more services (functions)
running / deployed than the size of your cluster.

It can be a way for anyone within the organization to deploy a function they
need. For example marketing needs a quick endpoint to handle Mailchimp
registrations or for Stripe payments. The function will not take up resources
on the cluster until its needed. Functions will run in a isolated, devops free
environment.

Technically you're not running on top of another framework, your javascript
function is just running in a NodeJS instance thats managed there are no extra
layers. Your NodeJS instance is running on Kubernetes but then why do I need
Kubernetes is an entirely different discussion.

------
tnolet
Great for people stuck with some ancient hosting provider or on prem solution.
Not say great for cost as literally the first you need to run this is
serverless solution is...a server! Still super nice job.

~~~
moxious
I'm cringing so hard at the idea of a tech guy somewhere explaining to his
boss that "we can't go serverless because we don't have enough servers for
that". You know that conversation _is_ happening in an office somewhere.

Godspeed, poor engineer.

------
jwilk
What does "GitHub-like" mean?

~~~
friendly_chap
It means we want to build a similarly accessible platform for
microservices/faas as what github did with git repos. We use them as basis of
comparison because we have a lot of respect for their product/ideas and we are
inspired by them a lot (well sometimes we just simply steal ideas from them,
haha).

I guess we are trying to convey the idea that it's a complete product from
user management to charging - you could install it for your company or launch
a web hosting company with it.

~~~
Sharma
Interesting launch. Last month for Producthunt hackathon I was planning to
create something similar by using openfaas, but did not(just like many other
ideas/side projects we all have here :-)). One questions that bothered me a
lot was how to define pricing for such product?

Would you be able to throw some light on how you/your team came up with the
sustainable plan and pricing you have?

~~~
friendly_chap
Hi Sharma!

The basic idea in terms of pricing was low cost and low maintenance for low
traffic things: when someone is not running anything substantial even 10 quid
a month feels like a waste.

And then when you start to have multiple side projects, you might need
multiple servers (or set up more complex things like port forwarding based on
domain etc)

So that's how it came about. But we are sure it's not sustainable entirely
yet! We would just like to provide low cost and low hassle hosting. Let's see
how it goes.

------
Ataraxy
You should also check out [https://webtask.io](https://webtask.io) by the
Auth0 people.

They have an in browser code editor that's fantastic.

~~~
_Marak_
Webtask is a solid and well designed product. Kudos to Tomasz Janczuk and his
team at Auth0.

The only thing I don't like about Webtask is that it's not an open-source
project, so there is no way for me to run their backend on my own hardware (
like a raspberry pi ).

------
appleflaxen
FWIW: I tried to register and couldn't. The red error box appeared in bottom
right corner, but was blank so I don't know what failed. Nothing crazy in my
submission that I can see. Even when inspecting error box, no indication of
why it failed was apparent.

Maybe it's because you're on the frontpage and getting lots of requests?

~~~
friendly_chap
It's very likely because of the HN hug! We will have a look and fix it, sorry.

Good news is perhaps on your own machine it will run flawlessly :)))

------
heavenlyblue
I am currently looking for something along the lines of a distributed CPU - or
Amazon Lambda, but enabling me to run sets of interdependent computation steps
"in the cloud". Also - supporting redundancy and replication (so that a
running program would never crash if one of the servers it was running on has
crashed).

Any ideas?

~~~
gsvclass
I've used Google App Engine + Cloud TaskQueues to build pretty solid
pipelines.

------
jadeklerk
Fantastic to see open source alternatives. At a previous job, I was repeatedly
frustrated using AWS lambda's extremely closed-source environment.

