In collaboration with: Kiandra IT

For hundreds of years, people have been going to dojos to learn how to protect themselves, to reach spiritual and mental fulfillment, or simply to have some fun. No matter the reason, one thing is certain: if someone wants to master a martial art, dojos are the place to be.

At Kiandra IT, we’ve been focused on delivering business-critical software, technology, and security solutions for 23 years. Over the past few years, we’ve been closely monitoring the world-leading progress of OutSystems and decided it was time to partner with this platform to enhance our customers’ experiences.

So, we started a journey to master the art of low-code development. Our first step was to achieve the yellow belt. After working through the advised learning paths, we reached the associate level certification. The courses were excellent. However, although we felt confident enough to build a small application, we knew there was still a gap between that and delivering a real large-scale business solution. And time was scarce. We needed to get up and running for the first round of projects that would come our way.

Building a Code Dojo

We'd recently been running an informal C# and Javascript battle on codewars.com. You should try it; it’s pretty fun. So, we wondered how well this might apply to the OutSystems platform. Finally, it hit us. Just like with any other martial art, we needed a dojo to sharpen our skills. And so, we set up an OutSystems Code Dojo.

Like any good IT department, we started by creating a wiki page.

OutSystems Code Dojo Wiki at Kiandra IT

Once we had the Wiki validation, we were ready for the battle, which we attacked in rounds.

Round 1: 30-Minute Customer Record Smackdown

Our first Code Dojo was open to everyone—developers, testers, analysts, and more. The goal was to gather people with different levels of expertise on the platform.

For the first task, we prepared a customer spreadsheet beforehand. We challenged all the participants to implement the ability to list and edit a customer record, change status, and add notes through a web application that manages customer records. All in 30 minutes.

People could ask questions and get help from other members of the group. The 30 minutes were not enough, but it was good practice and a great way to learn more about OutSystems.

Round 2: Knocking Out a Shopping Cart

For the next round, the challenge was to build a shopping cart using the Gallery Widget. Some of us got stuck on the widget until someone shared the key; you can automatically add a "picture" entity for the product entity (right-click on the entity and select "Advanced > Import image for ENTITY picture entity"). Then, if you drag it on the detail page for the product, you automatically get the upload/change image control, instead of having to wire it up yourself.

Round 3: An Eye Opener

Our next challenge was to use the HTML2PDF converter from the OutSystems Forge. We all looked at this in different ways. No one was able to deliver it in the established timeframe. But it was another eye opening experience.

Round 4: Google Maps Web Block FTW!

More recently, we used the Google Maps Web Block component from the OutSystems Forge. This challenge was a tremendous success, as we completed it in just 30 minutes, with enough time to discuss how we could use Google Maps in a real-world OutSystems application.

Lessons Learned

It seems that when we get stuck on something, we learn the most. We have to search for and discuss possible solutions. Even the simpler tasks like adding a picture have made us stop and think. Witnessing different ways to solve the same problem is also a great way to learn. In some cases, we even discovered a much faster way to do it.

Our OutSystems Code Dojo is helping us improve our speed of delivery. Not only that, but it's also helping us understand the platform better, providing us with the experience we need to build a real-world solution. Now, that black belt is closer than ever.