
Archive for 2022


System Design Interview - Chapter 3 - A Framework for System Design Interviews

System Design Interview - Chapter 2 - Back-to-the-envelope estimation

System Design Interview - Chapter 1 - Scale from zero to millions of users

Building Event-Driven Microservices - Chapter 16 Deploying Event-Driven Microservices

Building Event-Driven Microservices - Chapter 15 - Testing Event Driven Microservices.

Building Event-Driven Microservices - Chapter 14 - Supportive Tooling

Building Event-Driven Microservices - Chapter 13 - Integrating Event-Driven and Request-Response Microservices

Building Event-Driven Microservices - Chapter 12 - Lightweight Framework Microservices

Building Event-Driven Microservices - Chapter 11 - Heavyweight Framework Microservices

Building Event-Driven Microservices - Chapter 10 - Basic Producer and Consumer Microservices

Building Event-Driven Microservices - Chapter 9 - Microservices Using Function as a Service

Building Event-Driven Microservices - Chapter 8 - Building Workflows with Microservices

Building Event-Driven Microservices - Chapter 7 - Stateful-Streaming

Building Event-Driven Microservices - Chapter 6 - Deterministic Stream Processing

Startup School - How to Talk to Users

Building Event-Driven Microservices - Chapter 5 - Event-Driven Processing Basics

Building Event-Driven Microservices - Chapter 4 - Integrating Event Driven Architectures with Existing Systems

Building Event-Driven Microservices - Chapter 3 - Communication and Data Contracts

Ingenius EMPERA Blockchain and PoM

Building Event-Driven Microservices - Chapter 2 - Event Driven Microservice Fundamentals

Building Event-Driven Microservices - Chapter 1 - Why Event-Driven Microservices

Camunda - overview
There are a number of businesses and business tasks when it is necessary to visually design, change and control the execution of business processes.
Large companies like SAP, IBM, Oracle play in this market and offer their heavy and expensive solutions.
But there is also a lighter and cheaper solution in this field.

Thinking in Bets - Chapter 6 - Mental Time Travel
Did you know that losing $1000 and then winning $900 (i.e. getting a result of -$100 in total) is more pleasant than winning $1000 and then losing $900 (i.e. getting a result of +$100 in total)!??
What has happened in the RECENT PAST drives our emotional response much more than how we are doing overall! It is a problem if you are making important prediction.
There are to ways to overcome this problem:

Ethereum and Solidity - Lesson 06 - Ethereum Project Infrastructure
This is a continuation of my previous post Real Projects with Ethereum) - about how to setup a development infrastructure around real-life smart contract.

Thinking in Bets - Chapter 5 - Dissent to Win
I’ve already told about the truthseeking group (The Buddy System) as a great way to improve decision-making process.
How to share information inside such a group and how to disagree efficiently (to find a good solution)? And how to communicate outside of such efficient group?
There is a set of rules called “CUDOS” that can be used for this…

Thinking in Bets - Chapter 4 - The Buddy System
People are not ready to consider themselves the source of the problem they are facing (their skill), they blame other people/circumstances (luck). How to overcome this issue?
One of the solution is to create “truth-seeking group” with your colleagues/friends/partners/“buddies”. And such a group should follow specific rules that would increase rationality…

How to choose a Startup Idea - Lesson 2 - Make something PEOPLE WANT
Y Combinator’s motto is “Make Something People Want”. But how to find what people want? There are seven steps / considerations to gradually get closer to the answer…

Ethereum and Solidity - Lesson 05 - Real Projects with Ethereum
How to build a complex blockchain smart contract? What standard issues will you face with arrays, gas, different types of variables, deployment of contracts, etc? And how to solve them?

Ethereum and Solidity - Lesson 04 - Building interactive Front-Ends
What is the right architecture for the app that should work with blockchain (and how it differs from traditional web architecture)? What libraries to use? How to configure environment?

Ethereum and Solidity - Lesson 03 - Advanced Smart Contracts
Useful advanced info and techniques of writing and testing Smart Contracts: basic data types, reference data types, global variables, gotchas with dynamic arrays, validations and modifiers, debugging, generating random numbers, sending ether.

Communication Genius - Lesson 10 - Your strengths
What qualities are important to become a great communicator? Is it Charisma or Sincerity? Or something else? How to identify your strengths and weaknesses? And how to use them?

Communication Genius - Lesson 9 - Answers to difficult questions
How to answer uncomfortable questions - the questions that difficult for you to answer? There are 8 strategies and 5 things that you should NOT do.

Ethereum and Solidity - Lesson 02 - Smart Contracts with Solidity
What is the right toolset for Blockchain development? Here are some keywords: nodejs, npm, web3, solc, ganache, mocha, metamask, rinkeby, infura, remix…

Thinking in Bets - Chapter 3 - Bet to learn
How people should learn by watching outcomes and why they do not learn?
There are many unknown circumstances - so we do not know the real cause of the outcome. Luck also plays a big part here, so we don’t know if it’s luck or skill.
Also we are distorted with our biases:
- self-serving bias
- and inverted self-serving bias
How to overcome our biases and learn better?

Thinking in Bets - Chapter 2 - Wanna bet?
Poker players make decisions by making bets. Why do we all need to learn to make decisions using bets too?
There is a trap of “Motivated reasoning” bias. But, fortunately, there are facilitating questions that direct our minds in the right direction.
We must also move away from using the all-or-nothing confidence scale. Instead, we must learn to measure our confidence in percentages. This will not only help us win more, but it will also make us more credible communicators and make teamwork around us more efficient.

How to choose a Startup Idea - Lesson 1 - Do what you TRULY LOVE
The initial questions that any founder faces with:
- How to find the idea for startup?
- How to find your “ikigai” (your reason for being)?
- How to see great opportunities everywhere and everyday?
- How to assess your ideas ahd choose the best one?

Communication Genius - Lesson 8 - Ask question
Why ask questions during a conversation? What mistakes do we make in communication? Two types of questions. Three characteristics of a good listener. The structure of a good question. The structure of the ideal question.

Communication Genius - Lesson 7 - I-message
It is impossible to live without conflicts. But how to make the conflict constructive?
Thomas Gordon, author of “Parent Effectiveness Training”, invented the “I-message” that is now taught in many business education programs. Lesson 8 of Communication Genius describes I-message in detail:
- What NOT to say during conflicts
- What is the I-message
- What is the structure of the I-message

Thinking in Bets - Chapter 1 - Life is Poker, not Chess
Our Rational Answer books club has selected a book for February. It is “Thinking in Bets” by Annie Duke: https://www.amazon.com/Thinking-Bets-Making-Smarter-Decisions-ebook/dp/B074DG9LQF
This book is written by a multi-million dollar poker tournaments winner (and her brother is also a multi-million dollar poker tournaments winner - so it’s a family business ;))
She teaches how to apply poker thinking to make decisions in financial markets, strategic planning, human resources, law, entrepreneurship…

Ethereum and Solidity - Lesson 01 - What is Ethereum
There is quite a high demand for blockchain development these days. We do some experience with it as a company (one complex multi-year project), but personally I only had high-level knowledge and I wanted to improve it…
So me and few of my colleagues have started the course “Ethereum and Solidity: The Complete Developer’s Guide” (https://www.udemy.com/course/ethereum-and-solidity-the-complete-developers-guide/)

Communication Genius - Lesson 6 - Storytelling
How to influence people through vivid stories?
Lesson 6 of Communication Genius covers these topics:
- What do we like in stories?
- What should be in the story?
- Common mistakes
- Pixar’s algorithm how to tell a story! 🤩

Communication Genius - Lesson 5 - Compliment
Why and how to make compliments?
Lesson 5 of Communication Genius covers these topics:
- How to address an unfamiliar audience?
- The formula of the Ideal Compliment
- Facilitating questions to find a good compliment
- Good and bad content of the compliment

Communication Genius - Lesson 4 - Small Talk
Small talk is an instrument to be remembered and to make a good impression.
Lesson 4 from Communication Genius course covers these topics:
- What should you NEVER do during small talk?
- What should you DO during small talk?
- Some extra recommendations for small talks.

Noise - Part III - Noise in Predictive Judgments
How to measure the noise in our daily decisions?
Which is better - expert judgment or mechanical prediction using very simple models/rules? Surprisingly, the model of you beats you! Even a simple regression model based on your past decisions!
How to make rules/models even less noisy? How can rules/models become more biased sometimes?
Why don’t people always use models (if they are so good) and still rely on their bad judgment?
When do we not need models?

Communication Genius - Lesson 3 - Toasting
I continue sharing my impression and knowledge from the Communication Genius course which I started in January 2022. Lesson 3 is full of useful information concerning SAYING TOASTS. There are tips what to say to be remembered and some phrases which sound good during eating and drinking in informal atmosphere.

Communication Genius - Lesson 2 - Elevator pitch
In January 2022, I started the Communication Genius course from one of the best public speaking coaches. Lesson 2 is full of simple but efficient instructions how to communicate quickly in a stressful situation (ELEVATOR PITCH). There are tips what to say and there are also some things which are better not to use in a quick conversation.

Clean Architecture - PART VI - Details

Communication Genius - Lesson 1 - Communication preparation algorithm
In January 2022, I started the Communication Genius course from one of the best public speaking coaches - to be a bit less toxic and more efficient 🙂
Lesson 1 discovers:
- What is the purpose of communication?
- What are the two parts of success?
- Why should you clearly define and write down your real goal?
- How to consider your Audience?
- What is the Format and its elements: Time, Place, Dress Code and Genre and how to use them?
- How to choose the right Moment? Examples of good and bad moments?

Clean Architecture - PART V - Architecture

Noise - Part II - Your Mind is a Measuring Instrument
Interesting to learn how your mind makes judgments. Two types of judgments: predictive and evaluative. How to measure errors from bias and noise. How to measure the cost of noise. And how to deal with catastrophic consequences.
Drilling down the noise to three components: system noise, level noise, and pattern noise. How to measure (and compensate) the noises. Occasional noise as a part of pattern noise. How to compensate occasional noise: wisdom-of-crowds effect, crowd-within-the-one effect, second answer effect, and dialectical bootstrapping tool.
How the group work influences the noise. Informational cascade and social pressure cascade. How to deal with them. The effect of group polarization.

Noise - Part I - Finding Noise
Do you realize how seriously your organization is affected by bad decisions? There are two types of errors in human judgments: Bias and Noise. Bias is a very widely recognized problem, and you definitely heard about it. Noise is not so widely recognized. Yet, it affects MANY decisions in ALL the industries.
There is a huge Noise in government decisions. There is a huge Noise in commercial companies.
Noise can be made visible and can be reduced. It is harder to measure the noise in unique singular decisions, but it is still there and it still can be reduced.

Designing Data-Intensive Applications - Chapter 12 - The Future of Data Systems

Designing Data-Intensive Applications - Chapter 11 - Stream Processing

Designing Data-Intensive Applications - Chapter 10 - Batch Processing

Designing Data-Intensive Applications - Chapter 9 - Consistency and Consensus

Designing Data-Intensive Applications - Chapter 8 - The Trouble with Distributed Systems

Designing Data-Intensive Applications - Chapter 7 - Transactions

Designing Data-Intensive Applications - Chapter 6 - Partitioning
