This site has been deprecated. Go to docs.urbit.org.
Urbit DevelopersBlog

Get involved building Urbit

a roadmap to getting started building the new internet

September 25, 2022

So you want to build on Urbit?

The past week’s events at Assembly in Miami may have you thinking, “I want to build in the Urbit ecosystem.” Or perhaps you have already made that decision but are wondering about the best next step. The opportunities afforded by the network extend to a broad set of developers and builders, provided they have the discipline to accompany their ambition. Regardless of where you are in your Urbit development journey, this blog post will help you find your way.

Developer Education

If you are a developer (or would like to become one) and need to learn the specific skills necessary for developing applications on urbit, working on the kernel, or perhaps contributing to the runtime, the Urbit Foundation facilitates a variety of developer education efforts.

  • Live Cohort Learning
    • Hoon School Live is the synchronous cohort course for learning Hoon, Urbit’s strongly typed functional programming language and the basis for writing Urbit applications and kernel development. The next instance of HSL begins September 29th; if you are interested in participating, sign up here.
    • App School Live is the synchronous cohort course for taking your basic Hoon knowledge and introducing the practical skills necessary for building and distributing basic Urbit applications to the network. App School Live runs approximately twice a year; if you are interested in being informed about the next cohort, sign up here.
  • Developers.Urbit.org
    • Lightning App Guides offer an opportunity for developers with limited knowledge of Urbit and who aren't fluent in Hoon to get a basic idea of the platform by implementing basic peer-to-peer distributed applications.
    • Hoon School and App School (I and II) are also available for autodidacts or self-paced learners who prefer to work their way through detailed documentation and practice problems.
    • Extensive documentation of the Urbit system including Arvo and its Vanes, Nock, Hoon’s standard library, and the Vere runtime.
  • On-Network Resources
    • New Hooniverse (~hiddev-dannut/new-hooniverse) is the group for conversation and resources about the live cohort courses, as well as a general hangout for contributors looking to learn or share knowledge about Urbit development.
    • [battery payload] (~dister-dozzod-lapdeg/battery-payload) is the Urbit Foundation’s new resource for developer congregation and also serves as the on-network location for the developer newsletter.
    • Foundation (~wolref-podlex/foundation) is the town square for the Urbit Foundation and is a great place to discuss developer experience improvements and grant ideas. There are also “Jobs” and “Looking for Work” boards in this group for developers who desire to connect with work opportunities.

Urbit Foundation Grants Program

As many developers have experienced over their careers, ‘learning to code’ doesn’t just happen by going through standardized courseware. It happens by taking on specific problems about which you are passionate and applying your newly acquired knowledge in a real world environment. The Grants Program exists to give new Urbit developers those problems, whether self-generated–as in proposals–or as pre-defined bounties or apprenticeships.

Proposals

Proposals are the core of the grants program, and the element of which grantees have the most agency to create--because they are explicitly community generated. Have a project or app idea of your own? Putting together a proposal is your starting point. Compensation for a proposal grant takes into account:

  • Expected time spent for milestone completion
  • Value of proposed project to the network as a whole
  • Grantee professional experience
  • Past contributions and network reputation

The acceptance of your proposal is dependent on the sponsorship of a Champion who will be there to provide a guiding hand and help clear blockers to completing your work. They are welcome to provide as much coaching and support as they want, targeting the realm of a 30 minute call every one or two weeks, along with light asynchronous chat guidance to point you in the right direction to solve your problems. They are not there to do your work for you.

Apprenticeships

In the event that you do not have your own idea, or would prefer to work more closely with a team, the Foundation also stewards an apprenticeship program, helping place qualified candidates with experienced mentors across the different organizations building on the network. Each apprenticeship will have specific experience requirements, work products, or working relationships created, but the intent is for apprentices to work closely with current contributors on the Urbit network so as to deepen their understanding of how to best build, or build on, Urbit.

Apprenticeships can, with some subtle differences, be thought of along the lines of more traditional tech internships. They are designed to be a manageable on ramp for new contributors, often starting with maintenance and feature development for existing projects, giving the contributor an opportunity to learn the context around a pre-existing codebase. They have a set funding model and maximum duration--three months--at the conclusion of which the mentor should have imparted upon you enough knowledge that you are able to proceed forward on a complex undertaking under your own power. This may mean submitting a proposal for a solo project, it may mean taking on an open bounty, or it could potentially mean getting hired on by the company with which you have been collaborating for the past few months. Or perhaps even starting your own company and applying for funding from The Combine.

Bounties

Last, but certainly not least, are Bounties. These grants are generated by members of the Mars Invisible College, Urbit companies, or the Foundation itself and each is structured around a very specifically defined deliverable or set of deliverables that would be of help and relevance to the network as a whole. Bounties are a good option for developers who appreciate having a predefined set of outcomes and clear measures of success.

Bounties are intended to be well defined enough that a self directed person (or proactive team of contributors), could execute the grant with minimal intervention. That said, the author of the bounty will remain accessible to clear blockers, refine deliverable definitions, or otherwise serve as the shepherd to ensure the grantee has the inputs necessary to successfully complete the project as defined. Open bounties are all listed on Urbit.org, and require you to apply to the bounty prior to starting work. The Foundation and the bounty's author will speak with you, determining whether or not you are a good fit for the project,

If you have a project you believe would make a good grant, but which may not fall neatly into one of the below categories, please reach out to ~sarlev-sarsen to discuss your idea further. As a last administrative note, if you want to do a grant and be compensated for your work, we'll have to do some light KYC and contract paperwork.

The CombineDAO

The CombineDAO is an Urbit entity designed for the funding of startups building on value on the Urbit network. For teams with a business idea, the necessary skills, and foundational experience, the CombineDAO will help get their project off the ground.

For Entrepreneurs

If you are an entrepreneur, we will help you staff up with Urbit developers, work your way through the legal process of incorporation, and refine your pitch and related materials. Of course, if the fit is right, we will also help fund or connect you with investors.

For Investors

If you are an investor, VC, or Urbit maxi with capital, the CombineDAO offers an opportunity to buy into the fund which pools stars to invest in Urbit companies. Additionally, if you are looking for more direct investment opportunities, you can connect with ~poldec-tonteg to get on the list of partners

For additional information or to get involved in the CombineDAO, reach out to ~poldec-tonteg on Urbit, or via email at [email protected].

Urbit Companies are Hiring

Have you worked on a few side projects, delivered on a grant, or perhaps have a pre-existing skillset that you think can help grow the network? Urbit companies are regularly looking for talent and hiring Hoon developers to contribute to their projects. Most organizations support fully remote positions although occasionally will get together in-person to drive highly effective collaboration in a ‘high-bandwidth’ environment. The following companies are currently looking for talent:

Chorus One - Hiring a Platform Engineer to work on hosting solutions

Tlon - Hiring for various roles which can be found at https://tlon.io/careers

Holium: Hiring for both technical and non-technical roles, details for which can be found at ~lomder-librun/holium-forerunners.

Additional companies will be hiring following the conclusion of Assembly. Get on the network to find opportunites before they get listed.

Next Post

What Every Hooner Should Know About Literals on Urbit

November 14, 2022

Previous Post

Assembly 2022 Hackathon Announcement

July 7, 2022