Five undervalued git commands

Tips Great Tool

Today, git is the standard when it comes to version control system in software development and for many other uses. Commands like git commit, checkout, pull, push, status are executed multiple times a day. However, git has a lot of more advanced features, which are not frequently used. Today I want to talk about five commands, which usually are not needed that often, but are quite useful at the ri…

An ode to password managers

Tips Great Tool

Do you remember all your passwords? If so, that's not good! This post will not be as technical as my usual posts are and so it's for everyone, as everyone uses a computer, phone or tablet and sooner or later needs to deal with passwords. This post is about the importance of password managers. There are so many of them these days, both free and paid. They are easy to install and easy to use, b…

Serverless with AWS Lambda and API Gateway: not a beginner tutorial

Cloud AWS Serverless

I have been working intensively on building serverless applications with AWS over the past few years. Some projects used serverless architecture with lambda in its core, some used lambda functions only for small parts of the system. Below I want to share a couple of lessons learned and describe bottlenecks, which you may face while developing even a simple system. This is not a tutorial for absolu…

C++ basic project setup

Best Practices C++

A ship will sail the way you build it. TLDR; Proper project setup may require more effort in the beginning, but it will save you months in the long term by reducing the likelihood of a mistake and by simplifying the learning curve for new developers. Here are some techniques (in random order) that you should consider using in your development process and your project setup. The bolded items wil…

Raw pointers in modern C++

C++

- Hi. May I have 3 owning raw pointers and a couple of delete keywords, please? - No, sir. Not anymore. Not in 2016. The rule There is almost no need to use owning raw pointers and delete keyword in today's C++. It is highly unlikely that your situation is exceptional unless you're working on a brand new, super cool, memory manager library, or another very specific low-level tool. Owning vs non-o…