Thinking, Fast and Slow
When I was advised a book of Daniel Kahneman "Thinking, Fast and Slow", part of me arose: "How dare you point me out how should I think, fast, slow! My thinking area is only mine and nobody can point me out how I should do it!". As result the book was left unread.
Later however, when I have seen the video of Tim Urban on Ted Talk, which I knew later was inspired also by this book, I finally decided to read this book.
It looks like Kahneman made his book hard to read it for some purpose. Looks like he really wanted to make his book possible unknown and hard to be understood. Instead of prominent characters of Tim Urban with characters like Monkey, Monster and Rational Type in his book Kahnemann uses terms "System 1" and "System 2". Those terms are not easy to remember.
There is a idea that the best texts are written the by most awkward language.
The Kahneman himself says that he uses this way to make people pay more attention to details because according his research when information is harder to be understood this activates the brain of the reader and makes people more attentive and critical. Probably it is the case, but also it opens opportunities for other authors use Kahneman's book to create more viral derivatives.
This book does not teach you how to think. It does not make speed of your thinking faster or slower. This book brings you other ideas about the way how people are using their brain. Nowadays his work is being used by marketologists, traiders, economists and all the people who are dealing with behaviour of higher primates e.g. humans.
In the 1970s, two assumptions were generally accepted. First, that people are basically rational and sane. Secondly, that most deviations from rationality are explained by emotions. But Kahneman's research has shown that people's constant thinking errors are due more to the very mechanism of thinking than to the influence of emotions. Today, researchers agree with the thesis that our minds are prone to systematic errors. Kahneman's main idea is to demonstrate the workings of the mind, taking into account the latest discoveries in cognitive and social psychology.
Should you read this book? Decide for yourself. But if we decide to read it be ready that your world will never be the same!
The Third Smart Contract challenge
The people from TON Foundation organised again a contest. This time we need to write 5 smart contracts on Func language.
As they say the challenge is purposed to encourage the developers learning Func language and should be relative simple. For me thought is not such simple. I need to refresh all my knowledge about math and computer systems in general. I can not even understand WHAT should be done, not mentioning of HOW it could be implemented.
For example is the task 4 one need to implement an operation to sum of two elliptical curves Curve25519.
I assume that among readers of my blog there are someone who is calculating elliptical curves for fun every day before breakfast, but I am not like that.
However I starting to feel that I like this process - to dig into the new area and revealing the new ideas and knowledge. Nikolay Durov made a great deal of creating such an infrastructure. Someone even call him a second Nakomoto.
So far I have more questions that answers. For example: The TON smart contracts are mutable. How we can prevent scam then if the creator of the contract can rewrite it later? Or, there is an another example: wallets in TON network are smart contracts. There are some of them are written on Func, some on Fift. In the documentation they say that these wallets are almost the same. Why then the Func code of smart contract is not available?
In order to understand how it works one need to read trough hundreds of pages of documentation. There as some step-by-step guides but they are really different, opinionated and very often outdated.
If anybody love to solve puzzles, I would really recommend to participate in the challenge. The first phase is unfortunately already over, the second phase will be running till 21th December, so there are still some time left.
How to learn to work with Vim?
Perhaps there is no other text editor you need to work with. study specifically. However, if you learn to work with Vim, then a person gets amazing advantages over other people. Vim is usually already installed on most Linux systems and basic skills working with it are simply necessary for most developers.
Because this editor has its origins in the times when there was no Internet at all, the mouse had not yet been invented, and computers were terminals with a cathode ray tube and a keyboard that did not have arrow keys, then working with this editor looks akin to the dances of a shaman for the uninitiated.
One of the important advantages of this editor is the plugin system. It is thanks to this system that it is possible to transform Vim like an IDE, get syntax highlighting, auto-suggestions, file system navigation and much more.
There are many resources to help you learn how to use this editor, but I thought, if vim has so many plugins, is there a plugin for learning functions the editor himself? And it turned out that yes, there is!
Is is called vim-tutor-mode! In order to install it you need first to install vim-plag - it is an extention manager for vim. Then in a file ~/.vimrc you should add this line: "Plug 'fmoralesc/vim-tutor-mode'" to finalize plugin installation call: :PlugInstall
If the plug in installed successfully, you can start it with command :Tutor.
The tutorial covers the basic functionality of the editor, including working with files, searching and replacing, editing, running operating system commands, and more.
The passage took me several days in small sessions of about an hour a day. Passed on the phone in Termux, on the computer it should be even faster.
Walken
Installed an interesting aplication that makes me to move more. The idea of the application is to transform the steps you do daily into cryptocurrency tokens. These tokens theoretically you can sell in the market and earn some money. Of cource it is practically not acchievable. Each 1000 steps is being converted into one GEM. In the application you have a beast called CAThlethe. You should walk in order to make your CAThlete stronger. The number of daily steps theoretically allows you to increase your chances to win a fight with other CAThlets.
Of cource an app is not perfect. It is not clear to me how I can use GEMs I have earned, how to transform theme to anything. But the idea is interesting and at least it motivates me to move more.