Fira Code - THE font for programming

When I started programming on a GUI-based environment, the only fixed-width fonts available were Courier and Courier New. We actually didn’t have lots of options to choose from. You may laugh at me but after 2 years of programming, I realized I can change the font size of Visual Studio IDE. In 2007, Microsoft introduced another moonscape font named Consolas. The font was much better and had better support anti-aliasing.

DejaVu Sans Mono

After moving to Linux in 2012, I got familiar with some other fonts. After trying out plenty of them, I found DejaVu Sans font family. DejaVu Sans Mono is one of the fonts I still love even after 6-7 years using it. I have temporarily switched to other fonts but got back to it after a short period of time.

Since we cannot leave the house as we usually did during the Coronavirus pandemic, I decided to play around with tools and apps I use the most and try out new things. As a result, I decided to search a little bit to see if I can find a replacement for the legendary DejaVu and actually found a fully-deserved one!

Fira Code

Fira Code is my new favorite moonscape font! It’s very clean and elegant and has also support for Retina displays which is the new standard for new laptops and monitors.

Fira Code

Besides, what makes this fonts so lovely the way it solves a very important problem:

Programmers use a lot of symbols, often encoded with several characters. For the human brain, sequences like ->, <= or := are single logical tokens, even if they take two or three characters on the screen. Your eye spends a non-zero amount of energy to scan, parse and join multiple characters into a single logical one. Ideally, all programming languages should be designed with full-fledged Unicode symbols for operators, but that’s not the case yet.

To be able to solve this issue, Fira Code contains a set of ligatures for common multi-character combination we use everyday such as -> or !=; so it automatically convert those character combinations to its corresponding ligatures. Please take a look:

Fira Code ligatures

One other cool things about Fira is that it supports Powerline as well. If you are familiar with Powerline, you may know that to be able to render Powerline fonts correctly, you need to Install a Powerline versions of those fonts; but, Fira supports them out of the box.

Please take a look at Fira Code repository on Github to find more information about the font and the installation instructions.

Best things to do during home quarantine

COVID-19, the virus that put the world on hold. It’s spread all over the world and about 130 countries are currently dealing with it. Most companies are urging their employees to stay home or work remotely if possible. According to the worldometers website which is a verified source, there are currently more than 170,000 cases worldwide and the number is growing dramatically fast.

Photo by Fusion Medical Animation on Unsplash

Although COVID-19 is not as fatal as other same-type viruses like SARS and MERS, it could be transmitted much faster and easier. In fact, every carrier transmits the virus to three people in average. Consequently, health officials all around the world are strongly urging people to stay home!

But staying at home can be difficult; especially, if you have children. As a programmer, here are some useful things to do:

Read

Photo by Thought Catalog on Unsplash

Unfortunately, most people don’t read enough nowadays. When it comes to reading, the first thing that comes to mind is book; but it requires you to leave your house, go to your first store, and buy some which could be dangerous. Alternatively, you can purchase your desired books online or even use the electronic versions if possible. Apple Books Store and Kindle are the most popular services to purchase an electronic version of your favorite books.

In addition, you may want to try the audio version of books as well. If you don’t have time for reading (which you should find some), it’s possible to listen! You can use audiobooks when commuting, washing dishes, gardening, etc.

Beside books, you can also try apps like Pocket and Feedly. Pocket allows you to add your articles on the web to it for later reading while it also suggest you related articles based your reading history. Feedly on the other hand is an RSS reader. It let you add your favorite websites to it and it automatically gather all new articles for you in one place.

Help your family

Photo by Louis Hansel @shotsoflouis on Unsplash

It’s not bad to wash the dishes or helping your wife or mom with chores. Even if you work remotely these days, you have at least two hours more (because you don’t commute); as a result, it’s now time to help you family. You may have some postponed tasks from a long time ago. These days are the best time to get them done.

As my friends know, I love cooking. Since the last week, I help my wife prepare the meals as well. sometimes, I prepare the meal myself. It’s really enjoyable.

Spend more time with kids

Father playing with daughter. Photo taken from https://www.talkplayandread.com/fathers-play-important-role-children/

If you have children, it’s the best time to spend more time with them. Kids need to do more physical activities than adults. They need to run and play. But because these days they should stay at home, they get bored. Find new indoor games and play with your children is vital. If you don’t know what games to play, you may want to check out 75 Fun Indoor Games for Kids

Learn a new language

Most people think knowing English is enough. However, other languages can be helpful as they open a completely new world to you. At least, you can use those new-learned languages in your next travels! Language institutes are closed these days but there are several online services (most of them free) which can be used to learn a new language. The most popular services are Memerise and Duolingo. Both services has free services as well as premium features. But you may start with a free subscription and then upgrade to premium if you find them useful.

Workout at home

Although gyms are closed these days and it’s important to exercise. Therefore, you should find a way to keep up you workouts even if you’re at home. Some people may have some equipments like dumbbells and etc., so they can use them. But for those who don’t have any, I found a very useful app called Home Workouts that teaches you how to workout with absolutely no equipments.

Conclusion

Remember, the best thing you can do to prevent the 2019 Coronavirus from spreading is to just stay at home. While staying home for a long period of time can be boring, you can do a lot of valuable activities even if you’re at home.

Stay healthy and safe.

Book Review - The Subtle Art of Not Giving a Fu*k

The subtle art of not giving a f*ck I have read lots of books on self-development and productivity and recently finished the book “The Subtle Art of not giving a fuck”. There are a considerable amount of books on self-motivation and “how to be a successful person” out there but I think this book is among the bests. In this post I want to give you an insight about what this book is all about while not spoiling its content because I want you to read it yourself.

These days the COVID-19 virus has spread around the globe and as the officials says the best way to prevent it is to stay at home. Beside spending time on PS4, social network websites such as Twitter and Instagram, I think one of the best things to do is to simply read! In Iran, the government has restricted almost all of social activities including travel, cinemas, theaters, gyms, etc., to keep people at home. However, being at home is difficult. It’s really is. But we can use this time and do some valuable tasks.

The book’s main subject is aiming at our values. The values we think are important while they’re actually not. If you take a closer look on your values, you notice that most of them are not so valuable and don’t deserve the amount of concentration you’re currently putting on them.

When we care about these unimportant values, we automatically forget the things that actually matter. A great example of this is our past! Instead of pay more attention to our current state and future, some of us feel mad about things we have done in the past and always think about them, while they are gone now and there’s nothing we can do about them. We pay so much attention to our inabilities and compare ourselves to others we call successful because they can do things we cannot; while there are things we are good at and they’re not! The book is full of such examples.

The second part of the books focuses on what we call happiness. The author describes that TRUE happiness comes from difficult moments of our lives. It argues that short-term happiness does not last for long; on the contrary, achieving difficult milestones such as monetizing from your first start up or running your first marathon are examples of things that gives you the REAL happiness.

The book then talks about the importance of owning less. This is something most of us know as minimalism. It describes that having lots of things doesn’t give us joy; in contrast, owning less things delivers the true happiness! Because when we own less things (only things that are essential), we don’t have to care about extra-unimportant things we have.

Finally, the book talks about death. The truth that most people don’t want to talk about. They don’t want to think about that they are going to die one day. When we think about this inevitable fact, our brain automatically focuses on things that matters most and stops putting effort on things that are not valuable.

There are actually a lot to talk about this book. I described the content as general as possible to avoid any spoils. As I have mentioned, this is a must-read book; so don’t waist a moment and start reading.

How to convert markdown files to PDF?

Markdown is the markup language I got really interested in recently and I use it everywhere from generating the content of this blog to simple documents such as letters and GitHub README files and wikis.

As I have mentioned before in my previous posts, one my text editor of choice is currently Visual Studio Code. Using VSCode to edit markdown files are really enjoyable. The community developed a considerable amount of extensions you can choose to manipulate markdown files and in this post I want to talk about just two of them.

MarkdownLint

MarkdownLint is one of the most popular extensions (with over 1.5M downloads as of today) which enables markdown syntax highlighting and formatting. The extension also provides live preview as well which let you see what will be the output as you type:

MarkdownLint live preview

In addition, by enabling formatOnSave option in VSCode settings, it automatically reformat your markdown whenever you save a file.

Markdown PDF

Markdown PDF is probably one of the coolest markdown extensions of VSCode. The extension let you convert markdown files to HTML, PNG, JPEG and even PDF. To use it, simply press Cmd+Shift+P, search for Markdown PDF, and select your desired output format.

Markdown PDF options

Hope you like it.

Everybody is talking dark right now; so here's my dark preferences

During the last few years, dark themes are getting more and more popular and everybody is turning the lights off. Operating systems introduced dark mode, text editors’ and IDEs’ default color schema are dark now. Some websites like Twitter and Reddit now have Switch to dark mode setting.

Now that everybody is living in dark, here are my dark mode preferences:

Operating systems

I have turned on the dark mode on macOS as well as iOS. I don’t use any custom background image and prefer to stick with one of the built-ins. I don’t use night shift settings because I hate to see my screens turn red despite the fact that it’s good for my eyes and will help boost my sleep quality.

Editors configurations

My text editors of choice are Vim and Visual Studio Code. I’ve been using VSCode’s default dark theme but recently I have switched to Dracula theme and I loved it.

"Dracula theme screenshot"

When using Vim, I use the evening theme. I have tried a lot of themes from flazz/vim-colorschemes and returned to evening.

"Vim evening theme screenshot"

Browser extension

In general, I prefer light over dark when browsing the web. However, I turn on dark mode for certain websites such as Github. Some websites already have the dark-mode switch but most of then don’t. To solve this, you can use one of many browser extensions to help you turn the lights off. The extension I use is Darkreader. It is very simple and cross browser.

Darkreader browser extension

Update 1 (Mar. 1st 2020): It seems Ubuntu 20.04 will have the dark mode settings as well. More info