Projects of our Hackday 2021

Stefan M.
5 min readOct 11, 2021

--

Same as last year, I organized an Hackday at my current company. Luckily, we could spend this year together in the office, and not seperated throughout the state. Because of this opportunity, it was possible to order Pizza together — probably the most important part of every Hackday.

But even if it was possible to be closer together than last year, only one team was formed to build something. All others built something on their own. Nevertheless, I think we all did an amazing job. Each individual project was simply awesome. And because of this, I thought it would make sense to share our projects in this post. So… let’s go.

A Frisbee which I organized as part of the Hackday

Live Visualising Web App

To be fair, this project was already built in a previous Hackday. But since it is written in JavaScript (yes, bullying is intended here) it required some maintenances to work again. The author of this project lifted this old (and already existing) project to 2021.

This Web App uses a physics engine to display different live events from our ioki platform. Different event types are represented with different emojis.

This website is so cool, could even be used as a screensaver

AppVersions Slack Slash Command

Some time ago, I built a Web App called AppVersions. It is open source and can be found at GitHub. At work, we use this app to track the different versions of our White-Label-Apps (WLA) we build.

This works pretty well, but maintaining it is a pain. Every time we create or remove a WLA, we have to update the URL.

To make our lives easier, I build a Slack Slash Command. It opens up the possibility for everyone in our company Slack workspace, to add and remove one or multiple WLA from a database, which will be used to generate an URL to the original AppVersions project.

Give it a try: https://appversions.page.link/ASyW

Release Dates Reminder Slack Bot

Every two weeks our Head of Mobile Development sends us via Slack, an overview of the release dates of our WLA. Unfortunately, those messages were “falling down” pretty fast, and finding them, especially reminding ourselves about release dates, is pretty hard.

One of our colleague took the opportunity and built a Slack Bot that handles those release dates. The Bot can do the following things:

  • Save release dates together with a text
  • Remove release dates
  • Print out a list of all current release dates
  • And the most important one: Inform users on a certain date that a certain app needs to be released soon.
For testing, the author builds even a CLI tool out of it 🤯

Unfortunately the most important feature is yet to be added 😅. But I can’t wait for the author to finish this, and for one of our Slack Admins to install it!

Smoother Animations In Our iOS App

In our apps, you can search for an origin and destination place on a map. Imagine the following screen: You have a textfield in the app, when the user clicks on it, the app opens another screen where they can do the search within another textfield.

On click into the textfield, the search-screen open

Currently, the view animation (from the textfield-screen to the search-screen) is very basic. The user clicks, and then the new screen opens.

One iOS Developer tried to add a smooth animation to it. The idea was, that the textfield on the textfield-screen, should look like it moves to the position and transforms to the textfield in the search-screen.

Improve Image Handling In Our iOS App

Handling a lot of WLA whilst maintaining a light and dark mode produces a lot of PDF files in the iOS codebase.

Right now, we have two images with a different tint for each respective mode, one for light mode and one for dark mode.

The idea here was to try out PaintCode to generate source code from an image to reuse it for both modes. We only had to “inject” the correct tint color (differs from light and dark mode of course) at runtime and we are done. We would then end up with only one Swift file which generates the image at runtime for both modes. Thus reducing the need to deal with multiple PDF files.

Part of the generated source code of an image

Pull Request Review Reminder

We have a problem in our team. Sometimes it just takes too long until someone else reviews your open pull request. This is made even more difficulty by having a policy that a pull request needs at least two approved reviews before merging it.

Sometimes, authors of a PR can end waiting up to one and a half week until they gets their first code reviewed. Which is obviously not a good thing.

A teammate wants to change this by creating a desktop app, written with JavaScript and Electron. It is a “menu bar only” application and shows you all open pull requests which have “you” set as a reviewee. There is also an indicator that displays a different color, depending on how long the PR has been opened for.

We removed the titles here for privacy reasons 🙃

The idea is that this tool may help us to realize a bit better that we should be more attentive for open pull requests instead of taking the next ticket.

Better Loading Screens In Our Apps

You know how it works, sometimes you don’t have the time to improve existing features or special screens in an already working project.

One of our designers decided to spend time on the Hackday to do this, at least from the design side. She had different (random) ideas to improve a type of “special” loading screen in our apps.

A collection of improved (and cute looking) loading screens

I personally hope that we can decide soon on a new design, so that we can implement it, as they look nothing short of awesome.

What do you think? Didn’t we do an amazing job?
In case you organize or attend an Hackday, feel free to use one of our ideas 😉.

--

--