Cyprus Tax Calculator

Cyprus Tax Calculator is probably the best implementation of the tax calculator that I’ve seen around. It’s dead simple to use, and allows all kinds of calculations – monthly or annually, with or without 13th salary, and reporting overalls, income tax, social insurance deductions, as well as providing tax breakdowns.

Very handy tool for anyone in the job market. ;)

Refactoring.Guru : Design Patterns + PHP

Refactoring.Guru is a great resource for learning about refactoring best practices and design patterns. A lot of the website’s content is also available as Dive into Design Patterns ebook.

Today I came across this GitHub repository, which makes this resource even better specifically for PHP developers. Yup, that’s right, the GitHub repository features all code examples written in PHP 7.3, making it super easy to jump into coding.

And if you aren’t a PHP developer, have a look at the other repositories, which do the same for a few other programming languages.

Awesome Design Tools

GitHub hosts numerous “awesome lists” with collections of tools, documentation, and resources on a variety of subjects. So far, however, these seemed to be mostly developer-oriented. It’s good to see that other people are joining in. Awesome Design Tools is a curated list of the tools and resources for designers (web, interface, print, brand, etc).

Not even being a designer myself, I had to Google for some of these things plenty recently. In particular – collaboration tools, color pickers, fonts, icons, screenshots, etc.

7 Awesome CloudFormation Hacks

Amazon CloudFormation templates are a bit tricky to write, regardless of whether you are working on your first one or you have been doing it for years. Sure, there are plenty of examples online, tools that make it easier (thanks Ansible!), and copy-pasting sections from your own library. But any tips on how to make the life easier are always welcome.

Hence, here’s a very handy collection of “7 Awesome CloudFormation Hacks“. These include:

  1. Combine two sequent intrinsic functions
  2. Use exported values from other stacks in !Sub
  3. Changes in cfn-init don’t trigger redeployment in AutoScaling Group
  4. Get Stack name of sibling stack in nested stacks
  5. AccountIds with leading zero
  6. Use Dictionaries as Stack Parameter
  7. DependsOn with condition