Hi, I'm Mike

I'm a software developer with a strong focus on software design and object oriented programming. I enjoy working with backend, distributed systems, as well as designing large scale applications. My other interests include computer security, machine learning and network applications.

LinkedIn

If you want to learn more about my professional experience, my education or join my professional network, check my LinkedIn.

Proceed to LinkedIn

Projects

My most notable projects include a web map projector, a RESTful service for merging cloud storage accounts, or a shift management system for student workers at Colorado College.

More Info

GitHub

I host most of my projects and code samples on my GitHub account.

Proceed to GitHub

My most notable projects

Globus Map Projector

Program projecting world maps from one projection to another. It has become a popular choice for creating globe models, and served to create over 5000 projections so far.

It runs entirely in a browser, using JavaScript and WebGL for instantaneous rendering. The most interesting parts of the project were enabling custom projections and thus dynamically building shaders for WebGL, as well as writing an algorithm used to derive Daisy-Petal projection from scratch.

MashUp - Single cloud storage system

MashUp is a RESTful web service written in Python, which merges your cloud storage accounts into one under one file system - at this point Dropbox and OneDrive are supported. Also, it features a powerful security system. Currently, a Python client is available which mimics bash for using the file system.

Creating the service according to RESTful principles was an exciting design challenge. Design of the security system was very interesting too, since I did not want to store user’s passwords or token in my database. In the end I decided to use two different types of cryptographic hashes with different salts. Apart from that, I had to create a wrapper for Python’s AES encryption to account for the initialization vector and padding.

Shift Management Software

Project created for the Colorado College, which allows workers to track their hours, bid for shifts at the beginning of each time sheet period, or give up and cover other people's shifts. It also has a notification system, and integration with Ellucian Banner as well as secure way of checking in for shifts and confirming one's presence will be delivered soon.

Project is written using PHP, JavaScript and MySQL. The most interesting challenges in this project included:

  • creating an algorithm which notifies users about their upcoming shifts - all of it executed within a cron job
  • creating the user management system including hashing passwords as well as using registration tokens

Latest Posts

Development version of Globus Map Projector released

Hi, I’ve just publicized the map projector I am working for. You can check it here. It is written in javascript + html + WebGL, so you don’t have to download anything – it’s fully online!  As for now it only supports 3 projections (of which one 1 is equirectangular), but it is quite easy to […]

My new map projector

Hi, I’m starting to write a new map projector, which will work in javascript + WebGL. Basically, it means two things: The projection will be done almost instantly You won’t have to download any program – everything will be done online. I made a quick demo, which you can access here (demo no longer available, […]