Close

distributed system

A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another. Distributed computing is a field of computer science that studies distributed systems.

The Symphony of Systems: Conway’s Law and Its Symphony of Organizational Harmony

The Symphony of Systems: Conway's Law and Its Symphony of Organizational Harmony

Conway’s Law states that “organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.” In other words, how people in an organization communicate with each other will influence how they design and develop software systems. Many organizational approaches mitigate the effects […]

Devamını Oku

The Power of Visualizing Work: Implementing Kanban and Time-Boxed Approaches

The Power of Visualizing Work: Implementing Kanban and Time-Boxed Approaches

Kanban Systems and Time-boxed approaches are often discussed in software development, and there has been some debate about the relationship between these methods and the concept of iteration. Some people have referred to Kanban Systems as “Waterfall 2.0,” There have been suggestions that a Lean perspective might view iteration as […]

Devamını Oku

ElasticSearch From Bottom Up

ElasticSearch From Bottom Up

Elasticsearch is built on top of the Apache Lucene search library, and it inherits much of Lucene’s architecture. Here is a brief overview of the architecture of Elasticsearch and Lucene: Lucene Architecture: Lucene is a Java-based, open-source search library that provides full-text search capabilities. It is a low-level library that […]

Devamını Oku

Implementing Organizational Approaches in Software Development Teams with Conway’s Law

Implementing Organizational Approaches in Software Development Teams with Conway’s Law

Organizational Approaches in Software Development Teams Conway’s Law states that “organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations.” In other words, how people in an organization communicate with each other will influence how they design and develop software systems. […]

Devamını Oku

Raft: A Consensus Algorithm for Distributed Systems

Raft: A Consensus Algorithm for Distributed Systems

A creative look at how Raft ensures that all nodes in a distributed system agree on the same state of the world. In distributed systems, all nodes must agree on the same state of the world. This is because if nodes disagree, it can lead to problems such as data […]

Devamını Oku

Zooko’s Triangle: The Trilemma of Decentralization, Security, and Human-Meaningfulness

Zooko's Triangle: The Trilemma of Decentralization, Security, and Human-Meaningfulness

A creative look at the three properties that some people consider desirable for names of participants in a network protocol. In the early days of the Internet, it was easy to remember and track the names of people and websites. But as the Internet grew, so did the number of […]

Devamını Oku

Maven: The Build Automation Tool That Will Make Your Life Easier

Maven: The Build Automation Tool That Will Make Your Life Easier

Maven is an open-source build automation tool that automates software projects’ building, testing, and deploying. It is a popular tool that is used by millions of developers around the world. What is Maven? Maven is based on a concept called declarative build scripting. This means you can specify the steps […]

Devamını Oku

Gradle: The Build Automation Tool That Will Change the Way You Build Software

Gradle: The Build Automation Tool That Will Change the Way You Build Software

What is Gradle? Gradle is an open-source build automation tool that is used to automate the building, testing, and deploying of software. It is a general-purpose tool that can be used to build various software projects, including Java, Android, and Kotlin projects. Gradle is based on a concept called declarative […]

Devamını Oku

How To Be A Better Team Manager In 2023

How To Be A Better Team Manager In 2023

2022 was a challenging year for managers, with rapid changes in work trends and economic pressures. The Great Resignation led workers to seek work-life balance through quiet quitting, four-day workweeks, distributed teams, and employee analytics. Managers had to adapt to fluctuating team priorities and company policies while striving to make […]

Devamını Oku

Welcome to the World of Apache Kafka: An Introduction to Distributed Event Streaming

Welcome to the World of Apache Kafka: An Introduction to Distributed Event Streaming

Apache Kafka is an open-source distributed streaming platform designed to efficiently handle high volumes of real-time data. It is used to build real-time data pipelines and streaming applications and is often used when large amounts of data need to be processed in real-time. Kafka is based on a publish-subscribe model, […]

Devamını Oku