Sharabin Dmitry

About me

in a couple of sentences… or more 😜

My name is Dmitry Sharabin and I wear many hats. My day job as a freelance educator is to help companies to develop courses and organize educational events for their employees.

As of 2018, I made front-end web development a part of my life. I strongly believe in open source, and have become a passionate advocate and contributor to Mavo. Mavo is a JavaScript implementation of an HTML-based language for creating reactive web applications by writing HTML. It was developed in the Haystack Group at MIT CSAIL and led by Lea Verou. Since 2019, I have written a host of plugins, documentation, and made numerous demos.

I am comfortable with developing web apps with HTML, CSS, a bit of SVG, and vanilla JavaScript. However, when I need to build something complex, Angular is my go-to framework (even though I'm familiar with Vue and Svelte). I'm a huge fan of the declarative approach to building web apps, so I adore RxJS, which is supported by Angular out of the box. I firmly believe that Angular, RxJS, and also Firebase is a toolbox for building robust web apps.

Being a teacher of Maths and Informatics by profession, I've been teaching people Informatics for almost two decades. I'm a Microsoft Certified Trainer (MCT) and expert in Microsoft Office Suite (MOS Master).

I adore sharing knowledge, helping people solve their issues and achieve their goals, writing code, designing, and developing web apps.

If you would like to know a bit more about me and my work, keep scrolling. πŸ˜‰ If you prefer something more formal, here is my CV.

My work

The most IΚΌm proud of… so far! 😜

Games

Memory Game

Complete browser-based card matching game (also known as Concentration) built with Mavo without a single line of custom JavaScript.

Screenshot of the game

Apps

Widgets built with Mavo

Websites

Mavo Plugins

IΚΌm continually trying to bring more awesomeness to my beloved Mavo by teaching it new tricks via plugins: either by developing my own (see below) or by contributing to the existing ones.

  • Autoload teaches Mavo how to load all the needed plugins automatically.
  • Share allows end-users to share their data via system clipboard, email, contacts or messaging applications, and Bluetooth or Wi-Fi channels.
  • Firebase Firestore lets authors bring into play all the powers of Firebase in storing and syncing data.
  • Google Sheets allows authors to use Google spreadsheets as a data source and storage.
  • Google Calendar allows authors to integrate Google calendars (private, shared, public) into their apps and perform CRUD operations with events in them.
  • Cropper lets the user edit (crop, scale, rotate, flip) an image in place and upload it to the chosen backend.
  • Chart lets visualize data in Mavo apps with animated, customizable, and responsive charts.
  • MathJax lets authors add beautiful math to their apps.
  • Russian Locale translates all Mavo UI to Russian.

Talks

in Russian

Articles

in English

Articles

in Russian

Papers

in Russian