We want to make it possible to build a complete scalable app in an afternoon. We’ll make it 100x easier to build applications and bring the ability to write software to a billion people.
We're hiring! If you're interested, you can learn more about our philosophy and who we're looking to hire here. You may have found us from our post for an Engineer/Entrepreneur in Residence. We found one, but we'd still be happy to hear from you for the future!
Today, the complexity of building distributed applications far exceeds the complexity of an app’s design. This unnecessary “accidental complexity” takes up the vast majority of application development time and limits who can make software.
Modern architectures make even simple applications hard. We make API calls using REST and HTTP/AJAX, but we also need queues, authentication, transactions, retry logic, error handling, and rate limiting. We have to choose infrastructure – Docker and CoreOS and Kubernetes and more (after all, It’s The Future). We need to deploy: check your code into git, run your tests, and integrate your continuous delivery tool, all before enabling your code with a feature flag.
All this complexity is a tax on software development. 2009’s startups had easy monoliths built on top of mature open-source software and simple cloud hosting. By contrast, 2017’s startups rely on microservices and third-party APIs and services, brittly held together with string. A project that should take an hour actually takes weeks, because we spend all the time writing the same low-level distributed systems code again and again – and that’s before maintenance, operations, monitoring, security, etc.
All that time spent on solving accidental complexity is time that can’t be spent on making delightful products for your users, and solving important business problems.
What are the major sources of complexity today?
We’re creating a new programming language, tightly integrated with an editor, compiler and PaaS, to allow engineers to build distributed applications using high-level primitives. We abstract away individual machines and low-level distributed systems code to:
Less time spent writing code to solve infrastructure problems means more time writing product code. Existing products will improve more quickly, and we’ll have more new apps.
As engineers write code, they’ll create components, libraries, and apps. We host these apps, making them easy to distribute. Since they’re intimately tied to the development environment, it will be easy for people to build upon and modify their apps, making computing much more customizable. This ecosystem will enable an increasing number of people to customize – and create! – software until we reach our mission of enabling a billion people to code.
We’re looking to hire a few people who want to help make this a reality. If you're interested, you can learn more about our philosophy and who we're looking to hire here.
Otherwise, we're announcing more soon. You can give us your email address and we'll keep you posted: