How many times have you mentioned spending some quality time on a super cool project that could let you look into a new technology or explore new tools but you’ve never had time to do so?
At Kaleidos, we’ve been dedicating two weeks of innovation per year for 10 years now! With our summer and winter editions, kaleiders have gone through 21 PIWEEKs (Personal Innovation Weeks) already.
Prior to this week, we come up with the ideas for the projects; we choose the project we like and we work on that project for a full week non-stop. We set our daily routines aside and spend five days fully dedicated to this project with a team that we normally don’t work with on a regular basis. Sometimes some of us may end up alone doing our own thing but ‘foreveralone’ projects, as we call them, are rare because we’d rather work together.
On this 21st edition, ‘Winter is coming’ edition, we’ve run 11 open source projects where 25 kaleiders are involved. And this is the recap of all the open-source projects that we came up with during the week:
1. Roxanne, the English bot
She looks so fine but she can be ruthless and patronizing sometimes. That’s Roxanne, the telegram bot that Xavi Julián has created to help him improve his English in a very chatty manner. This bot uses Telegram’s API to store vocabulary and throw questions at him until he learns those new idioms and words.
Roxanne suggests small tasks with new words; spots grammar mistakes; repeats sentences back to him to learn how to pronounce them properly; listens to his pronunciation and gives him feedback although the later one requires the premium Telegram API, etc.
It was pretty easy for Xavi to set up the bot in Telegram. However, getting the conversational interface, as provided by the default API, to resemble the way we chat via this app was the tricky part. Although the final result he achieved is user-friendly enough, it wasn’t until the end of the week that he realised how it could be improved even further. Maybe Roxanne 2.0 will follow for next PIWEEK? Who knows!
Team member: Xavi Julián, frontend developer
Technology used: NodeJS, Typescript, node-telegram-bot-api
Repository: https://github.com/PIWEEK/roxanne
Other sources: Telegram API and LokiJS
2. Plants for dummies: try not to kill your plants (or pets)
At first glance you may think this is yet another site of plant care. Well, it may be… however, this decision was made intentionally to swap places among the team members.
The team decided to face an easy project embracing skills that they’re generally not familiar with at work. Designers in charge of frontend, developers responsible for research and design. They went through very challenging moments during the week but that’s what PIWEEK is about—getting out of your comfort zone, realizing the value of the work your colleagues do and learning new things.
Plants for dummies is a site for those who don’t have a clue about how to water a plant, toxic plants for animals,… for anyone whose intention is not to kill any more plants—a challenge for some people!
The site doesn’t have any backend, therefore loading the site with content was a hardworking task. They used vue on the frontend and Penpot for the designs!
Team members: Teresa de la Torre, frontend developer; Daniel Herrero, software engineer; Natacha Menjibar, visual designer; Marina López, frontend developer and Miryam González Duque, UX Designer.
Technology used: Vue and Penpot
Repository: https://piweek.github.io/plants/
3. My route maps, the hiking log
Yamila Moreno has a true passion for the mountains. Previously she had developed My route maps to show her hiking outings. This app keeps a record of the trails she’s done. However, her app didn’t have any backend set up which made it pretty slow to load. She’s used this PIWEEK edition to provide her app with a backend and improve its performance.
For its performance improvement, she tackled it with Postgrest, a standalone backend for APIs, as well as postigs features. She managed to connect the API to a simple frontend and load geojson queries via bounding box to show on the map. To make it easier, she managed to do batch loads.
For the map usability enhancement, she thought a telegram bot could be a good idea. Initially she thought of errbot as a suitable solution but she couldn’t make it work. The alternative consisted of a simple library python-telegram-bot that worked perfectly. However, she believes there should be better approaches to the routes and the repository management as well as a more compact manner to keep everything together such as in a docker.
She loved working on a small project with loads of scripting. Yamila learned how to make geospatial features of postgis; to discover the potential of Postgrest and how to make a telegram bot. A very productive week indeed!
Team member: Yamila Moreno, COO and backend developer
Technology used: Postgrest, Postigs, Python
Web/app: https://routes.dendarii.es
Repository: https://github.com/yamila-moreno/routes/tree/main
4. DirectoryBot, your Telegram assistant
In a group or association it’s very common to struggle to find resources or to know what sort of resources are available. Members always end up asking and the keepers of those resources have to answer those questions over and over again. Andrés Moya, as a member of the Tolkien Society of Spain, wanted to solve this issue he encounters regularly with his peers.
Directorybot is a very simple and straightforward Telegram bot that helps members of a group or association view and manage all of its online resources such as websites, chat groups, email addresses, shared docs, calendars, etc.
The challenging part that Andrés found during the process was that telegram’s API is more arduous to manage when the conversation gets more complex via the chat. Another pain of programming bots is the fact that they don’t memorize the conversation so it can’t implement a dialogue. Additionally, after using Telegram’s library, Andrés thought that it’ll be more effective to use Telegram library instead.
This is the third and last project in this PIWEEK that worked with a telegram bot. It seems like a trendy thing among kaleiders! You may want to ask them one thing or two about telegram bots while checking the repos.
Team member: Andrés Moya, software engineer
Technology used: Backend on Nodejs with node-telegram-bot-api library.
Repository: https://github.com/hirunatan/resourcesbot
5. CocoMaterial, the beautifully hand-drawn illustrations
You may have heard of CocoMaterial before. It is a beautiful hand-drawn illustration library made by Esther Moreno, designer at Kaleidos, with the support of some other kaleiders who have helped her in previous PIWEEKs. All illustrations, a staggering total of over 1,250 approximately, are customizable, open source and free to use. Plants for dummies, another project in this PIWEEK used CocoMaterial illustrations. At Kaleidos, we love these illustrations!
An example of the more than 100 illustrations within the CocoMaterial animal section.
In this edition, David Barragán has helped Esther with some enhancements on the website such as the customization of the illustrations with new color features as well as a better load performance of the site.
Team members: David Barragán, backend developer and Esther Moreno, UX designer.
Technology used: frontend on Vue and SaSS and backend on Django + Django Rest Framework.
Web/app: https://cocomaterial.com/
Repositories: https://github.com/PIWEEK/coco-material-front (frontend) and https://github.com/PIWEEK/coco-material-back (backend)
We have 6 more exciting projects following on the Part 2 of this article about video games, recipes, tracking your own brewing process, medical data and online whiteboards. Keep reading!