Monday, November 26, 2018

November Updates

Just a quick status update on what I've been up to lately.

I went to Mobilization, which is a conference on mobile development. It was ok but I'm not sure if I would have gone there had it not been for the free ticket that I got...
I watched the majority of videos from KotlinConf 2018 and I suggest you do the same if you're at least remotely interested in Kotlin or Android development.
I watched all videos from Android Dev Summit 2018 and they were great as well.
I watched all videos from Indie Developer Day (Seattle) 2018 to learn some cool stuff about Unity, monetization and game publishers.
BTW, watching YouTube on 1,5x or 2x speed saves you sooo much time.
I met with a graphics designer about my game (Find a Way) but it's been more than two weeks now since then and he hasn't answered me, so I guess he's too busy to help me and I'll have to look somewhere else.
I started updating my Facebook Photo Gallery app to learn some of the new Architecture Components. I'll try to use some of the cool new Android features and post an updated version to CodeCanyon when I'm done.

In the next couple of months I'd like to focus on the game and on updating the gallery app. I'll be posting more updates when I manage to reach some milestone but, as you can see, there hasn't been much progress for a good couple of weeks when it comes to coding. I managed to catch up on some development knowledge though, which might come in handy both at my work and with my side projects.

That's it for the quick update. I'll try to have something more tangible next time. Stay tuned.

Sunday, October 7, 2018

Find a Way: Progress report 8

Last week there was no progress update because I was in Spain and Andora on a short vacation, but I'm back now, so here's what I did. I added buttons for enabling/disabling music and sound. I added a reset button to restart the current level. The board state gets saved now, so when you close the game and come back to it, you see the tiles as you left them. There's also a win sound when you solve a level and then the board gets locked until you move to another level or reset the current one.

You can play the game here:
The link will be active for 30 days.

Next, I'll be thinking of how to make the game more pretty.

Sunday, September 23, 2018

Find a Way: Progress report 7

This week I added sounds, music and more levels (25-36). The audio files aren't final by any means.

Check out the new changes here:
The link will be available for 30 days.

Next, I'll be adding more levels and tweaks to the game.

Monday, September 17, 2018

Find a Way: Progress Report 6

I added rewarded video ads. Unfortunately, they're available only on Android and iOS, so you won't see them in the WebGL version. I also added levels 13-24, which you can test here:
The link will be available for 30 days.

Next, I'll add some sounds, even more levels and I'll be preparing a list of tasks/questions for a graphic designer, who I'll be looking for soon. I'll also try to generate an Android version of the game to see if everything (ads included) works properly.

Sunday, September 9, 2018

Find a Way: Progress report 5

I implemented hints. It might take a couple of seconds to calculate them but then you can press the hint button and see which tiles are placed correctly and which ones are not. If there is more than one solution, the hint corresponds to the closest one (the one that requires the least swaps and rotations). Check it out here:
The link will be active for 30 days.

Next, I'll be working on ads and I'll try to add more levels.

Sunday, September 2, 2018

Find a Way: Progress report 4

The first 12 levels are ready to be played. Can you beat them all? The game still looks crappy but it's fun to play nonetheless. Now the time has come to start working on hints and to polish the game a bit more. I'm curious what you think about it so far. Let me know.

You can play the game here:

Sunday, August 26, 2018

Find a Way: Progress report 3

What's changed:
  • there's more placeholder art, e.g. the green border
  • dropped the green/red tinting of tiles when the board is valid/invalid
  • level constraints are checked on every map modification and the arrow becomes highlighted when the corresponding constraint is met
  • the layout of the game better adjusts to different screen ratios
What's next:
  • more levels
  • saving the current level
  • navigating to the previous/next level

You can play the game here:
The link will work for 30 days.

Sunday, August 19, 2018

Find a Way: Progress report 2

It's going to be a quick one. I added drag&drop to swap tiles and single click to rotate them. I like this method of modifying the map much better. I also implemented map validation, so it becomes greenish when all tiles match their neighbors. The game has become somewhat fun and playable this way, because you can try to construct a correct map.

Check out the new changes here:
The game will be available for 30 days.

Next, I'll be working on adding items on the side of the map, and constraints, e.g. that the cat has to be able to reach the white mouse. In fact, I've already started writing some code and the results are pretty promising.

Stay tuned and visit the blog in about another week for new updates.

Sunday, August 12, 2018

Find a Way: Progress report 1

Find a Way prototype on
I decided to give the new game a working title of Find a Way. I think it's better than the original Cat and Mouse, because it suggests what your task is.

You can play the first prototype here:
It will be available for 30 days.

Right now, every time you launch the game, you get a random map created using a specified set of tiles. You can swap and rotate the tiles by selecting them and clicking another one or by clicking the arrow buttons that appear. To deselect a tile just click below the arrow buttons.

I'd like to implement drag-and-drop for tile swapping and a single tap for rotation, but it's more difficult than the current version, so I decided to leave it for later.

Let me know if you have any suggestions.

Saturday, August 4, 2018

A new project

cat & mouse
I more or less finished updating my metro apps and now the time has come to start thinking about something new to work on. I decided that I'd like to make a puzzle game, because it's fairly easy and it shouldn't take too much time. The game I'd like to clone is Cat & Mouse. Its rules are simple: you just have to create a 3x3 map using a set of 9 tiles and following a set of rules for each level. There are 48 levels in total but it shouldn't be too hard to come up with new ones, should I decide to do so. I already coded up a solver a couple of years ago when I had too much free time and nothing better to do. It can even make images of solutions and save them as jpg files. I'll keep you posted on the progress. Mind that it won't be blazingly fast.

Other than that, I'd like to refresh my Facebook Photo Gallery app on CodeCanyon, because the images in the description don't work anymore and the app itself got somewhat outdated. I'd like it to use Kotlin, WorkManger instead of SyncAdapters, Room and perhaps also Coroutines. I'll be upgrading all the items one by one when I won't be working on the game.

I also noticed that the Unity Ads API has changed and my Unity Ads Stats app won't be able to get the old access token that it needs, so I had to take it down from Google Play. Hopefully, I'll be able to fix it in the near future too.

As you can see, I'm not bored at all. In fact, I have a pretty busy time in front of me. Keep your fingers crossed so that I complete all of my projects. I'll be letting you know when I reach a milestone in any of them. Until the next time.

Tuesday, May 22, 2018


A couple of months have passed since my previous post, so I decided to let you know what I've been up to since then.

I had an interview at Facebook. I passed the phone screening and the online interview but I failed the on-site part. Apparently, they didn't like my approach towards the design question. The algorithmic part was much easier than I'd expected, but perhaps solving 150 tasks on LeetCode helped with it too. Let me know if you're interested in more details. I might write a separate post on it if you want me to.

I had a presentation about Kotlin Coroutines at the local Android Developers Group. It took me a lot of time to prepare but the result was quite satisfying and, as I've been told, people liked it and found it interesting. It reminded me that I like sharing my knowledge with others and I enjoy being challenged by public speaking gigs. Perhaps I'll do another one in the future. I only wish it didn't require so much preparation...

I went to Google I/O. I have to say it was quite an experience. Especially for someone going there from Europe. I wouldn't have gone there, had it not been for my current employer, Allegro, who paid for the trip and conference tickets. The talks were great, but you probably know it already, if you're half-interested in what Google is doing. The more exciting part was seeing all this from the first person perspective, going to the Shoreline Amphitheatre, riding a bus with Jake Wharton, chatting with other attendees, having a beer at a local pub in Mountain View, doing a trip of the Google buildings with a friend of mine who works there, and lots of small things like these. All in all, it was a fabulous adventure... not to mention the trip to LA we did with my workmates afterwards.

What I'm trying to do now is update my metro apps, because the number of active users exceeds 13k now and keeps growing. Then I might create a small game of some kind. I have a couple of ideas and my friend Tyna is constantly pushing me into going back to making games. You should check out her creations too: Hidden Paws and Sandmade. I don't have a lot of free time because of my five-month-old son but I should still be able to squeeze in an hour or two here and there.

I'll keep you posted on my progress and interesting events. Thank you for being so patient with me :)

Sunday, January 7, 2018

My new app: Unity Ads Stats

After finishing Blobby Volley multiplayer, I decided to go back to my Android roots and I made a simple app displaying Unity Ads statistics: revenue, impressions, CMP, fill rate, etc. It was a small two-month project, in which I had a chance to use Kotlin, Room, RxJava 2, Retrofit, MPAndroidChar, Facebook Audience Network, and adaptive icons. Check it out on Google Play Store. I hope it's as useful to you as it is to me.

Here are some screenshots, which also reveal my miserable Blobby Volley income, if you're interested. CPM is quite high though. If only I had more people playing...

I'll probably not be taking up any new projects in the near future because a month ago I had a son born and he is quite skilled at consuming large amounts of time. I may come back to some of my older apps and try to polish them a little. We'll see.