Browsed by
Category: Dev Toolbox

Help! I created too many changes and want to make separate commits – git add interactive, patching and branching

Help! I created too many changes and want to make separate commits – git add interactive, patching and branching

There are cases when you try to add a feature, but before it’s done, a new problem arises and you try to resolve it. At the end of the day you end up with several things solved, but no commits yet. Some people prefer big and messy commits that include all the work for the past week, but I tend to have one issue solved in one commit. What are your options to keep a clean repository in this situation?

Read More Read More

How I refactored maze generating Python code and used advanced class features

How I refactored maze generating Python code and used advanced class features

Previously, I have created a maze generating code while learning Python. Later I enhanced it with animation and marking special cells. All of it was done in rush, to solve the problem. Now I spent some time improving the quality of the code by encapsulating code into classes, using “private” methods and fields and separating concerns. The exact steps I took can be viewed in the GitHub repository or read here.

Read More Read More

Programming paradigms in JavaScript – callbacks, Promise, async/await, promisify, functional Ramda and reactive RxJS

Programming paradigms in JavaScript – callbacks, Promise, async/await, promisify, functional Ramda and reactive RxJS

As a quick exercise, I wanted to read all URLs from my page’s sitemap instead of crawling the site. Just after I added a nested callback I decided to apply the Single Responsibility Principle and convert calls to Promises. Later I experimented with async/await and automatic conversion with Node’s promisify. Finally, I rewrote the solution in functional style using Ramda and reactive using RxJS. Read on to follow the evolution of callbacks in JavaScript.

Read More Read More

GitHub contribution by Pull Request – crash course

GitHub contribution by Pull Request – crash course

If you want to fix an issue or enhance others’ GitHub repository, don’t be afraid – it’s fairly simple. I will show by example all the steps that are necessary.

I wanted to add support for two languages (TypeScript and JSON) to a WordPress plugin providing a Code block. You can read more about my choice and configuration in WordPress for developers – displaying source code and review of code sharing services.

Read More Read More