Welcome to the main repository of the iTalanta project, a project which combines the development of cutting-edge cloud-based software with opportunities for the development of the next generation of engineers.
Get started »
Conv. Learning Docs
·
Kijali Docs
·
Request Feature
·
Report Bug
Table of Contents
If you've made it here, you've probably heard about this new cool kid on the block called "iTalanta Open Source".
"iTalanta Open Source" is a collaboration between iTalanta and Moringa School to bridge the gap between new developers and the mystic achievement which is called "Real-life Work Experience".
Here's how we'll get you there:
-
Different real-world applications, with real-world clients and business value, are contained within this repository.
-
These applications are maintained via an innovative new software development methodology called "The Tournament". The tournament is a derrivative of "The Sprint", and each application has it's own tournament.
-
You compete in the Tournament by completing challenges, which consist out of tasks and bounties. These tasks and bounties are bugs, feature requests and/or other assignments that move the applications forward. You complete challenges by having your fork's Pull Request merged into the code base, and that fork can be maintained by either your team or individually.
-
Bounties can earn you rewards, which are experience points and/or cash rewards for you and your team.
-
Even if you miss the bounty, your fork will always be there. Stack your profile and portfolio with these forks and use them to convince recruiters that you can handle complex tasks. You can even brag how your solutions is better than the one accepted 😎.
-
The higher your experience, the more interesting the challenges you can take part in.
The tournament is split into "Weekly Jousts". These are weekly events organised every Tuesday where new tasks and bounties are released. There can only be a limited number of challenges active at the same time, so if not all bounties have yet been completed by the start of the next week, less tasks and bounties will be released for the subsequent week.
Go to the "Jousting Board" to review all current tournaments and challenges to get started, or read more about how tournaments work before continueing.
Our applications are built upon different toolsets and technologies.
Technologies we currently use include:
- Typescript
- Angular
- Material Design
- Photoshop, Illustrator & XD
- Firebase & Firestore
- Google Cloud & Cloud Functions
- NodeJS
- Amazon Web Services
- Botpress
For upcoming bounties, the following technologies will be included soon:
Tournaments are at the heart of our collaboration. Each application contained in this NX monorepo is developed and maintained through a (never-ending) tournament. The tournament has many different actors (jesters, squires, knights, guardians, smiths, ...), whom organise themselves as "Guilds" based on expertise. Then there's "The Court", which decides on the direction of the applications and writes out bounties and challenges.
You start out as a challenger, challenging the status quo of the application, allowing you to join- and gain reputation in Guilds. At the same time, you get to take home some nice bounty. Eventually, should you gain enough experience and reputation, you can even be challenged to earn you your own seat at The Court, resulting in a permanent employment offer from iTalanta.
Tournaments are a new project management paradigm we have developed which are closely modelled after the traditional sprints of the Scrum framework, but optimised for distributed, asynchronous and diverse teams.
A tournament flows as follows:
We break down the phases step by step:
- Product Vision, Client Needs and User Stories
A tournament produces a digital application. A digital open-source asset which offers real value to an end user, in this case the client. Each tournament produces and maintains a different application. The application specifics (vision, feature descriptions, design philosophy, ...) of the tournament are described in the docs of each tournament.
- User Stories, Feature Design & Test Cases
The product vision and client needs are further broken down into "User Stories". These are a description of actions which users (potentially of different persona) would like to perform on the platform.
User stories typically have the following format:
"As a *User_Type*,
I wish to *Action_I_wish_to_perform*,
so that I *Reason_I_wish_to_perform_this*"
- The Challenges Backlog
The Castle develops these User Stories into challenges. Challenges include:
- The User Story
- Feature description & Design
- User Acceptence test cases
- A Bounty with experience points, goodie-bag, cash price or all three.
The user store and feature description provide you with all the guidance you require. A product is split into so-called "Features". Features can be as large as a dashboard, or as small as the typical "it's just a button".
Each of these features has a design, technical description and technical/architectural guideline. These three elements combined provide competitors with the guidance required to hunt the bounty.
Feature descriptions are published on the issue board with the tag [WIP], which stands for "Work in Progress". Each of you can therefore participate in the design of feature from the very inception stage by leaving your comments, designs and suggestions on the design.
- Qualified Challenges & The Weekly Youst
After the design phase, features which are ready and complete are qualified. This means the [WIP]-tag is removed and they receive the [qualified]-tag. Qualified issues are issues which are completed from a feature-, technical- & design-description perspective and which can already be worked on.
During the "Weekly Youst", a weekly event which will take place every Wednesday afternoon, newly qualified challenges are presented and a bounty is attached to them. They move from [qualified] to [active] issues.
[Active] issues can be competitively submitted to The Court for review and acceptance.
- Bounty Hunting & scoring a bounty
After all these steps, the real fun starts 🎉. As a challenger, your main role is to partake in the bounty-hunting phase. You score bounties by being the first to complete an open challenge.
If your code is accepted and merged into the codebase (congratulations by the way, your code is absorbed into an enterprise grade, high-quality, project 😲!) Through The Castle, you can keep track of your won bounties and redeem them for rewards.
Follow this link to understand in detail how this works.
Happy coding ⌨️!
- The Award Ceremony
Once a month, after one of the Weekly Jousts, we hold an award ceremony 🏆 to celebrate those amongst us who completed a bounty. However, to compete and learn is much more important than winning.
We will therefore also take some time to compare different solutions to the same problem and learn from the different approaches, and we of course have to also celebrate all participants!
- Products are never complete ⛰️
As products are never complete, once your feature is released we will measure the impact of your change together with you through selected anonymized user data of the systems.
This allows you to visualize your impact. At the same time, The Castle uses this data to inform the next set of user stories and challenges.
TODO !
TODO !
TODO !
TODO !
Currently, we have two open tournaments with challenges ready to take on (on program launch).
These are:
Elewa Conversational Learning is a platform which manages Conversational Learning programs. Conversational Learning is a form of digital learning that focusses on delivering a learning experience as simple as having a conversation, which at the same time delivers a richer and more learner-centered experience compared to traditional eLearning experiences.
Elewa Conversational Learning is a platform which manages Conversational Learning programs. Conversational Learning is a form of digital learning that focusses on delivering a learning experience as simple as having a conversation, which at the same time delivers a richer and more learner-centered experience compared to traditional eLearning experiences.
Another application is still under design. You can find this under:
Kijali offers the rails for any startup-founder to run the financial operations of his/her business, starting from financial planning, all the way to accounting integrations.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
Distributed under the GPLv3 License. See LICENSE
for more information.
Your Name - @your_twitter - [email protected]
Project Link: https://github.com/your_username/repo_name
Use this space to list resources you find helpful and would like to give credit to. I've included a few of my favorites to kick things off!