Jozef Jarosciak

My name is Jozef Jarosciak and I am a Slovak Canadian living in Ontario, Canada and this blog originally started as a notepad for myself (to find my notes in one place) but eventually also became a spot to share my knowledge. I hope you’ll enjoy my articles.

Something about me… I currently work as a Systems Architect for a leading Canadian provider of cloud-based software and technology solutions, based out of Toronto, Canada. My primary focus is on Application & Infrastructure Architecture, IT Strategy and Management, DevOps, Professional Services and Software as a Service (SaaS).

I have a completed Master’s Degree focused on Web Sciences and Big Data with honours from the University of Liverpool in England and also hold several well-known IT certifications, such as TOGAF, Microsoft Certified IT Professional (MCITP) or Microsoft Certified Solution Associate (MCSA); and I am also certified for various methodologies and/or technologies such as ITIL, Project Management or Agile Development & Methodology. More on LinkedIn.

My daily routine consists primarily of being an architect, but often those lines get blurry in my line of work and I often find myself working as a platform engineer, change manager, people manager, software designer/developer, infrastructure administrator, DBA, app deployment manager, installer, patcher, fixer, debugger, estimator and pretty much everything in between.

In my spare time, I love to learn about complex architectural issues, but also engage in coding and work on various interesting projects.

 

Some of my more recent spare time projects are:

UsenetArchives.com

This is one of my more recent 2020-21 projects, serving as an attempt to restore the Usenet text archives into web searchable form. The site was featured in the Vice magazine and it is currently one of the most extensive archives of Usenet newsgroups on the Internet, archiving hundreds of millions of Usenet posts from early internet days (1984 until now). Free-of-charge access is possible via the web interface, without a requirement for a third-party Newsreader

Text Entry Assistive Cloud-Based Platform

The primary goal of this Open Source prototype was to create a web-based real-time text analysis engine, which based on inspection of the entered text offers predictive suggestions to the end-user. The project wants to show that smart predictive technologies can speed up the process of creative writing as well as improve user experience and overall user productivity. Screenshot of the prototype’s automated research engine:

Video Demo: https://www.youtube.com/watch?v=HM33M4QMMos&t=70s

Open-Source Python Application to Convert photos on disk to Excel Travel Log and Google Map of All Visited Places

Over the past 20+ years, my family took tens of thousands of photos while visiting countries all around the world. As the years went by, the total number of stored images seems to grow every time we travel and even though we organize our images, sometimes it’s hard to recall when (exactly which year and month) we visited a specific place. Thinking about it, I realized that nowadays most photos are captured on smartphones or digital cameras that come equipped with GPS and automatically geotag each photo with GPS coordinates, as well as the date and time of each image capture.

That said, I wrote a Python GUI App (<300 lines of code) that you can point to a directory where your photos are stored and the script will do the rest. It’ll scan and extract the Exif information from all your images and convert the gathered EXIF information into:

  • Excel Travel Log – List of locations sorted by month/year

  • Google Map – This is a visual representation of all our travels. Google Map pins show the detailed date and time of our visit

Following are some screenshots from the PythonPhoto2Location app, outlining the four steps it takes to get from a collection of photos to an Excel file and Google Maps:

r/Python - Just made a Python app to convert thousands of my photos to a travel log of all places I ever visited (in Google Maps and MS Excel format)

Here is a 2-minute long Video outlining the app functionality:

https://youtu.be/JFZsFIZpiuw

 

Open Source Bananagrams Solver in JavaScript, PHP & MySQL

This was a fun project. I had a little bit of spare time over the holidays and decided to find a programmatic solution to a game of Bananagrams and built a variety of MySQL dictionaries from Aspell, HTML and CSS were used to style the page, then coded the backend in PHP and placed a solver logic into JavaScript web worker. Here is a short outline of the entire process along with a website and a YouTube demo. Out of this project came two websites: ScrabbleDB.com and BananagramSolve.com

 

JavaScript n-Block Tangram Puzzle Solver

Another recent fun project is to create a Block Puzzle Solver to calculate the solutions to monomino, domino, triomino, tetromino and pentomino(1) based rectangular or square tangram puzzle in a user-defined area, with support for block rotation and reflection. The fast version uses a random unique block combination. The slow version tests all possible block combinations and permutations (there can be quite a lot of them). The plan for the future is to include more pentominoes, heptominoes, octominoes & other polyominoes; as well as support user-defined areas of any shape. Available online at Block Puzzle Solver

 

 

Canadian Mortgage Calculator (Angular & Typescript)

This is an open-source Canadian mortgage calculator that takes into account that loan interest in Canada is compounded semi-annually, rather than monthly as it is in the USA. Also online at Mortgage Calculator

 

Other projects

  • DuckDNS Client – DuckDns Updater is a Windows tray application that allows you to keep your dynamic hostname’s IP address up-to-date (and in sync) with DuckDns DNS service at www.DuckDns.org
  • and many more…

 

 

You can find me on Twitter and if you wish to speak to me, don’t hesitate to connect with me on LinkedIn. I am a big believer in open source, and most of my work can be found as open-source releases on GitHub.