Engineering Articles

Software engineering, architecture, debugging, delivery, and the practical mechanics of building systems.

8 min read

The Mirror Is Part of the Machine

The worst telemetry problems I have seen did not start with waste. They started when an incident happened. We could not see enough, and the missing field became the villain of t...

6 min read

Breaking Up With WordPress After Two Decades

Around Black Friday last November, I moved my website from SiteGround to Bluehost. This was not some ambitious infrastructure decision. SiteGround wanted roughly five times more...

14 min read

Incentives Drive Everything

In early modern France, the monarchy kept running into the same problem. Wars were expensive, revenue was not steady, and every obvious solution came with a political price. New...

10 min read

The Janus Protocol

In the Roman Forum, there was a small shrine with double doors. When Rome was at war, the doors were left open. When Rome was at peace, the doors were closed. It is an oddly mod...

13 min read

Managing Your Manager

Managers change more often than you realize, especially when a company is growing or downsizing. New roles, new org charts, new reporting lines. Other times, you’re shopping aro...

21 min read

AI Broke Interviews

Interviewing has always been a big can of worms in the software industry. For years, big tech has gone with the LeetCode style questions mixed with a few behavioural and rounds....

13 min read

Most of What We Call Progress

Most of what we call progress in software is just motion. New tools, new frameworks, same problems. Maybe fancier logos. Our industry always has this collective thrill that a ne...

10 min read

Stop Wasting Brainpower

How many times have you found yourself saying: “I worked all day, but I didn’t get anything done.” I know, we have all been there. We feel bad about it, too. On the surface, it...

17 min read

Why Over-Engineering Happens

If you’ve worked in software long enough, you’ve probably seen it: a CRUD app serving a handful of users, deployed on a Kubernetes cluster with half the CNCF landscape stitched...

12 min read

Climbing No More

Engineers have been reaching a common ceiling in their careers for decades. The pattern goes like this: an individual contributor gets promoted to a senior software engineer, an...

8 min read

The Weekly Win

If you happen to work for a large organization, you’ve probably heard of quarterly checkins or some similar corporate buzzword to describe what you’ve done and what you could ha...

10 min read

Technical Deep Dives

When someone asks for a technical deep dive, they don’t care if . They want proof that you actually understand the beast you’ve built. Can you walk me through the system like yo...

3 min read

Yapay Zekâ Çağında Bilgisayar Mühendisliği

Son aylarda, ister posta kutumdan, ister web sitem üzerinden, isterse tanıdıklar aracılığıyla olsun, hep aynı soruya cevap veriyorum: “2025’te bilgisayar bilimi okumak hâlâ mant...

12 min read

From Idea to Launch in 2 Weeks

Everyone’s been talking about LLMs. I didn’t want to be too late to the party. When everyone’s talking about doomsdays scenarios, I just wanted to see for myself. As an engineer...

16 min read

Reflecting on Software Engineering Handbook

One year. May 2024. Back then, we were riding high, celebrating the launch of this with an amazing . Five days of glaciers and waterfalls, finally enjoying the fact that we fini...

4 min read

Take Self Reviews Seriously

This isn’t the first and definitely won’t be the last time I find myself in a conversation about the importance of self checkins, performance reviews, and all that socalled “ref...

7 min read

Tech Hiring Bubble Bursts

I wasn’t around in the 90s, but people who were say it was incredible. If you could code, you were set. Talent was rare. There were almost everywhere. In the 2000s and early 201...

6 min read

The Reality of an Employer's Market

Lately, Iʼve seen a lot of posts about what employers should do or how they should treat candidates, what benefits they should offer, and how they should run their interviews. I...

11 min read

Balancing Act of Reliability

Once something is in production, you are no longer just building software. You are also keeping it alive. That sounds obvious, but teams forget it all the time. We get excited a...

5 min read

Building Trust in Engineering Teams

We all know that transparency builds trust. The lack of it? Well, that can lead to major issues. Engineers sometimes join teams and, from the start, struggle with trust. It’s as...

3 min read

Celebrating Our Book in Iceland

To celebrate the release of our new book, , Ender and I took a nice trip to Iceland. Here’s a relaxed recap of our fiveday journey. Day 1: The Golden Circle We kicked off our tr...

6 min read

Operational Skills Needed

Over the years, I've interviewed many candidates. One crucial skill that often gets overlooked is operational reflexes during oncalls. Surprisingly, few companies test for this,...

3 min read

On Writing Software Engineering Handbook

I’m thrilled to share the story behind our newly published book with you. This project has been a labor of friendship and collaboration, and I hope our journey resonates with yo...

6 min read

Working with Dependencies

If you are part of a large organization, the term "dependencies” probably means more than . In a big organization, when we talk about "dependencies," we're diving into more than...

10 min read

Engineering Health Essentials

Engineering health is a term that deserves far more attention than it receives. Sustainable software development is not only about the features we ship or the speed at which we...

5 min read

Should Dev Managers Code?

As someone who's been navigating the world of software development for a while, I often think about what it really means to be a good development manager. It's a bit like being...

8 min read

Winning Eleven

Here's 'Winning Eleven,' my own mix of eleven key ideas that have helped me grow both at work and in life. This isn't your usual list of tips. It's more like a collection of rea...

5 min read

Coding in Leadership

When you start coding, you start the adventure. It feels like unlocking a new world of logic and creativity. From programming classes where we tried to solve pyramid programs to...

6 min read

Cracking Coding Bottlenecks

In software development, we obsess over component benchmarks and algorithmic complexity, chasing milliseconds latency and BigO wins. But, time and after time, I’ve found that th...

15 min read

Becoming a Rockstar Engineer

In the software development realm, people often debate about 10x engineers or rockstars. But what does that really mean? How can you become one? There isn’t an easy answer, but...

6 min read

Silent Guardians of Quality

In the realm of software development, testers are the silent guardians. Their role is often misunderstood and underappreciated, especially when they do their job so well that no...

4 min read

Why You Should Read More Code

In university, I have master students studying software engineering. I often ask them one question: how do authors become authors? Do they suddenly start writing great novels in...

3 min read

Restful Sleep: The Ultimate Debugger

Coding can be tough. Even the best get stuck with tricky errors. But many forget one helpful trick: sleep. Software engineers often work late. We get so into our work, we think,...

5 min read

Estimation Accuracy

Estimating software projects is basically the tech equivalent of arguing about Irish weather. Everyone has an opinion, nobody really knows anything, and the forecast changes all...

7 min read

Why Legacy Systems Are Worth Your Time

I know. When you hear legacy, you think , , weird edge cases, and “what the hell just broke now.” Every moment feels frustrating. You don’t know what the next change will trigge...

4 min read

Why Metrics Don’t Equal Quality

In 1902, Hanoi was drowning in rats. The government was getting nervous about plague. Hence, the city put a bounty per rat tail. Suddenly, the system had a scoreboard, something...

6 min read

Teaching Software Engineering

As a software engineering instructor, I’ve taught a diverse group of master’s students with varying technical backgrounds. Not everyone comes in with the same level of expertise...

14 min read

System Design Interviewing Tips

System design interviews are inherently subjective. Outcomes depend on many factors, including the backgrounds of both the interviewer and the candidate. Even if both have exper...

12 min read

Engineering Strategy and Planning

Strategy is a word that's often used but rarely understood. Ask ten people what it means, and you'll get ten different answers. I often see people confuse it with , a quarterly...

26 min read

Data as a Product is a Promise

Domaindriven design (DDD) has been around for quite a long time. In short, DDD focuses on domain to match domain requirements. One of the pillars of DDD is bounded context. A bo...

6 min read

Update Statements on Production

Executing update statements on a production database is always a big challenge. It’s one of those tasks that looks deceptively simple until something breaks in ways you didn’t i...

8 min read

Engineering Roles and Responsibilities

Engineering roles exist whether you define them or not. In some teams, ownership is explicit. People know who drives incident management, who keeps an eye on risk, who pushes on...

6 min read

Essential Engineering Principles

Engineering principles give teams a practical foundation for how to build and operate software. They guide decisions, shape behaviours, and help groups stay aligned even as syst...

9 min read

Pulling the Plug from a Project

Every project starts with high hopes to deliver one or more business values. The team begins with the requirement analysis and then carries on with design and development. On th...

6 min read

Addressing Technical Debt

Tech debt occurs when we solve a software problem with our limited understanding of the business at the time. We start building a solution to get feedback as early as possible....

12 min read

Building a Technical Vision

A technical vision is the compass of an engineering organization. It sets the longterm direction. I believe it should define the "why" and "where" behind the technical choices t...

14 min read

Service Overload Strategies

Service overload happens a lot. If you haven't seen one, count yourself lucky. The first time I watched it take a system down, I realized how serious it’s to get the basics righ...

34 min read

Designing A Key-Value Store

I’ve been asked once to design a key value store in an interview. It looks easy at first. Then it gets hard, fast. What makes it interesting is how ambiguous it is. I started us...

17 min read

Promoting Learnings in Incidents

Incidents are used for the negative consequences of an action. The incident comes from an action that fails to result in the expected outcome. For instance, deploying a code to...

2 min read

M1 işlemcili MacBook Pro

Bir iki sene önce aldığım MacBook Pro'dan oldukça şikayetçiydim. Bunu bir bir kaç başlıkta dile getirmiştim. Bunun üzerinden 2 sene geçti. Benim gibi birçok kullanıcı da problem...

4 min read

Code Author

Throughout the years I have worked on many software projects. In most of them, the code header included the authorʼs name. At first, it seemed natural to have the authorʼs name....

8 min read

Risk Comes First

You probably saw many cliché stuff about risking everything. Not risking is the biggest risk and all. While there is a truth to that, risk needs to be an appetite. Remember what...

9 min read

Message Brokers Are Modern Grids

While working on my book on , I keep noticing the same pattern. Some systems look simple while they belong to one team and become something else after everybody starts using the...

3 min read

Leetcode Hard

Over the years, I’ve been on both sides of the interview table. To become better at conducting interviews and preparing for my own, I spent time solving and reviewing coding pro...

1 min read

Verifying passed arguments partially

Recently, I was working on a project and I missed a case in unit tests. I didn't want to verify each argument but rather wanted to check if an object has a certain attribute set...

7 min read

Compatibility Is a Feature

A system only reveals what it's made of when it starts changing. At first, they often look better than they are because the code is still new. The data is still fairly clean. Th...

12 min read

Yazılım Mühendisliği Kariyer Merdiveni

Yazılım şirketleri, mühendislik mesleği seviyelerini dikkatlice oluşturmalı ve çalışanlardan ne beklendiğini, roller arasındaki farkı ve kariyer gelişimi için alanları açıklayan...

7 min read

Good APIs Age Slowly

I have noticed that APIs are a bit like abstractions in general. APIs that impress people quickly are very often the ones that cause the most trouble later. I do not mean this a...

7 min read

Before You Import That Library

Software development depends a lot on open source projects. From operating systems to editors, we use open source software everywhere. Nevertheless, we should be careful about w...

7 min read

On Writing Wrapper Libraries

A wrapper library is a thin layer of abstraction around an existing library, dependency, or functionality. A wrapper library offers a better and cleaner interface or rather hide...

2 min read

Yeni MacBook Pro

Uzun yıllardır MacBook kullanıyorum ve hiçbir zaman verilen paraya kıyasla alınan verim anlamında MacBook Pro'yu beğenmedim. Bu konudaki yaklaşımım cihazın kalitesinden çok her...

4 min read

Minimum Viable Agile

In , I criticized agile frameworks for bringing too much complexity with too little impact. What was meant to make teams more adaptive often ends up doing the opposite. They slo...

11 min read

What's wrong with Agile Frameworks

Some time ago, I attended a course and became . It wasn’t a huge deal. I was already doing the job. But as time went on and I gained more experience, my view of agile frameworks...

7 min read

The Real Work Is Social

I get along with people. I talk, I joke, I do the normal office stuff. But even with that, something about how work actually works has always felt off. You think the job is most...

3 min read

Simple Mutual Exclusion

When we design services for high availability, we often deploy more than one instance of the same application. It might be two servers behind a load balancer or a few nodes shar...

8 min read

Hype in Software Development

We live in a time when every month brings a new framework, library, or architectural pattern that promises to change everything. Increasingly often, we come across a new technol...

7 min read

Why I like JavaScript

Every programming language has its oddities and challenges. When it comes to JavaScript, it has Every programming language has its oddities and challenges. When it comes to Java...

6 min read

How Teams Choose Language

Choosing a programming language is one of the most defining decisions in software development. It shapes how a team writes, maintains, and reasons about their system. Today, the...

2 min read

Yazılım için İngilizce Öğrenin

Geçenlerde sitem üzerinden bir eposta aldım. Yazılım mimarisi ödevine yardım edebilir misiniz diye soruyordu. Meşgul olduğumu ama zaten internette benden bu konuyu daha iyi açık...

5 min read

I'm no longer a Scrum Master

Recently, I received an email from Scrum Alliance. My Scrum Master Certificate has expired. As expected, the email was suggesting to get certified again, a friendly nudge to sta...

8 min read

You Know State Is NO Good

Every engineer learns this the hard way. You think the logic is solid, your tests are green, and your deployment goes smoothly. Looks all good, right? Then you have an outage. N...

7 min read

Refactoring Untested Code

Most teams realize they are dealing with a legacy repo only when a tiny change turns into an operation. A oneline fix suddenly needs three people, two days of manual checks, and...

4 min read

Duplicate code isn't that bad

Duplicate code isn’t something we usually want in our code for various reasons. The most obvious one is maintenance. When you change a piece of logic, you have to find every pla...

15 min read

How I Work as a Software Engineer

When I started out, I thought productivity meant speed. Ship fast, fix fast, move fast. Working in startups taught me something different. When everything around you changes con...

4 min read

Smaller is Faster

“Smaller is faster” is a wellknown hardware design principle, as you might already know it. Generally speaking, smaller pieces of hardware will be faster than larger ones becaus...

5 min read

You Cannot Fix What You Cannot See

I have been working on this data discovery tool for a while, and it keeps showing me how messy our systems really are. The idea behind it is simple. Crawl every database we have...

2 min read

Ufak Servisler

Ufak servisler(micro services) son zamanlarda yazılım alanında sıkça yaygınlaşan bir yöntem. Micro'yu ufak diye çevirmek hoşuma gitti ama tahminen mikro daha çok kullanılır. Zat...

8 min read

Who needs an Architect?

An architect? According to Wikipedia, an architect is a person who plans, designs, and oversees the construction of buildings. So, we obviously have derived the role from civil...

2 min read

Shoulder Ship It

Pair programming is no new topic and has been widely used in the industry. At first, it might seem like itʼs a waste of time because two coders work in the same station. However...

5 min read

Scrum, Kanban, or just Agile

Before going deep in the subject, I would like to emphasize that this post is completely personal. You miBefore going deep into the subject, I would like to emphasize that this...

6 min read

Consistency Matters

When I look back at the projects I’ve worked on, the most peaceful moments were always when the code felt consistent. Everything lined up. Names made sense. Files looked familia...

5 min read

Local vs Production Debugging

I have been debugging this data workflow tool we built in house lately. It has an Angular UI and a Java backend, and it moves data between different systems like Postgres to Hiv...

2 min read

Mock methods that manipulate parameters

Recently, I've worked a little bit on cache for . I needed to mock a behavior of a method where the method manipulates given parameters e.g. change state or call another method....

3 min read

A guide for Code Reviews

Code reviews shouldn’t be about ego. Still, every time you send one, you’re putting yourself out there. You want your work reviewed but at the same time it makes you vulnerable....

8 min read

Java Developer vs. Software Engineer

Java developer vs. software engineer is discussed quite often, especially among programmers trying to define what truly separates a coder from an engineer. One of my friends kep...

4 min read

Açık Kaynak Lisansları

Açık kaynaklı yazılımlar her geçen gün daha da yaygınlaşıyor. Artık herkes açık kaynaklı yazılımlarla karşılaşıyor, en basit örnek Android işletim sistemi. Bugün sadece bireysel...

5 min read

Moving from Java to Python

I recently started a new role in AWS networking, and it’s the first time I’ve gone from writing everything in Java to writing almost everything in Python. Honestly, the shift is...

2 min read

Spring Cache Abstraction

Spring cache abstraction applies caching to the Java methods. It provides an environment where we can cache the result for the methods we choose. By doing so, it improves the pe...

3 min read

Implementing HTML5 Bomberman

CS102 is one of the most important course in CS curriculum. In this course, students learn how to write recursive function, objectoriented programming and etc. This course provi...

6 min read

JavaScript Execution Context

JavaScript developers do not pay attention much on internals of JavaScript execution, namely execution context. Even experienced JavaScript developers may lack necessary knowled...

4 min read

Dependency Injection in JavaScript

Dependency injection is about removing the hard coded dependencies and providing way of changing dependencies in compiletime or runtime. This pattern has been exercised in sever...

5 min read

Achieving Abstraction In JavaScript

In computer science, abstraction is to hide certain details and only show the essential features of the object. Abstraction tries to reduce and factor out details so that the de...

5 min read

Buggy Code on Production, Survived

Areca is the name of the billing engine I am working on for Turk Telekom. Funny enough, it is also the name of the flowers we bought to freshen the office. We wanted the office...

8 min read

XA Transactions: A Simple Guide

In early days of computing, there was no need for distributed transactions, everything lived in one place. As number of applications increased, synchronization of the data becom...

3 min read

Faster JavaScript

JavaScript is a very important language for now and the future. Nowadays, there is no page that does not include some JavaScript code in it. Moreover, code written in JavaScript...

3 min read

Caching With Guava

In computer science, cache is a component that is used to speed up data retrieval in general. The data stored in cache is limited so a given query can hit or miss the data that...

3 min read

Çevik Yazılım

Çevik yazılım geliştirme, bir takım yazılım geliştirme yönteminden ibarettir. Bu yöntemler, yazılımın ve gereksinimlerin birbiriyle etkileşim halinde tutarak ortaya koyulmuş sür...

4 min read

Cepheye Yönelik Programlama

Yazılım dünyasında başlıca endişelerinden biri, yazılımdaki parçaların biri birine çok bağlanmasıdır(high coupling, crosscutting concerns). Bu durum yazılımın belirli bir noktad...

2 min read

Mediator

Bu yazımda size Mediator adındaki nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım.Mediator bize, bjeler arasında fazla bağ kurmadan (tightcoupled) i...

2 min read

Strategy

Bu yazımda size Strategy adındaki nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım. Bu şablonun genel amacı yapılacak iş için alternatifler oluşturup...

1 min read

Composite

Bu yazımda size Composite adındaki nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım. Bu şablonun genel amacı tekrarlanan(recursive) parçaları(compone...

2 min read

Observer

Bu yazımda size Observer adındaki nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım. Bu şablonun genel amacı bir objeyle başka objeler arasında bağ ku...

2 min read

Facade

Bu yazımda size Facade adındaki nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım. Bu şablon(pattern) genelde birden fazla pakete (package) aynı anda...

1 min read

Adapter

Bu yazımda size Adapter adında nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım. Bu yazılım şablonu genellikle daha önce yazılan bir kodun başka bir...

2 min read

Abstract Factory

Bu yazımda size Abstract Factory adındaki nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım. Abstract factory, bir veya birden fazla nesnenin farklı t...

1 min read

Factory

Bu yazımda size Factory adındaki nesneye dayalı yazılım şablonunu (ObjectOriented Design Pattern) anlatacağım. Factory şablonunu şöyle anlatayım. Painte benzer bir program yazma...

1 min read

Singleton

Bu yazımda size Singleton adındaki nesneye dayalı yazılım şablonunu(ObjectOriented Design Pattern) anlatacağım. Singleton benim en çok kullandığım dizayn şablonlarından biri. Bu...

3 min read

Yazılım Mimarisi

Mimari denildiğinde insanın aklına gelebilecek ilk konu değildir yazılım. Ama nasıl köprüler, barajlar gibi büyük yapıtların bir mimariye ihtiyacı varsa, geniş kapsamlı yazılım...

3 min read

Inheritance ve Polymorphism

Polymorphism ve Inheritance beraber kullanılan iki önemli nesneye dayalı (ObjectOriented) programlama unsurudur. Bunlar program kodlarının yeniden kullanılabilmesi veya var olan...

3 min read

Linux mu Windows mu?

Aslında bayağıdır yazmıyordum sitede ama bir arkadaşın sorusu üzerine birkaç satır bir şeyler karalayayım dedim. Arkadaş bize Linux tabanlı işletim sistemlerinin avantaj ve deza...

2 min read

Antivirüs İncelemesi

Yazıma başlamadan önce antivirüs programları hakkında söyleceğım çoğu şeyin kendi bilgi, kanaatime ve tecrübelerime dayandığını belirtmek istiyorum. Bana güveniyorsanız buyrun a...

4 min read

Binary Search Tree

Binary Search Tree (BST), bilgisayar biliminde arama, ekleme ve silme işlemlerini ortalama O(log n) zamanla gerçekleştirebildiği için temel veri yapılarından biridir. BST’nin gü...

3 min read

RAM(Random Access Memory)

RAM, bilgisayarda geçici olarak bilgi depoladığımız hafıza birimidir. Zaten çoğu kişinin de bildiği gibi elektriği kestiğimiz anda içindeki bilgiler silinir. Yani kalıcı değil,...

2 min read

Quick Sort

Birçok bilgisayar bilimi dersinde Quick Sort’u defalarca işledik, analiz ettik, hatta sınavlarda bile çözdük. Ama çoğu zaman öğrendiğimiz şeyleri pratiğe dökmeden bırakıyoruz. İ...

3 min read

SSL(Secure Socket Layer)

İnternette gezerken bazen adres çubuğunda normal http yerine https ile başlayan adresler görürüz. Özellikle giriş yapılan sayfalarda, webmail sistemlerinde, bankacılık işlemleri...

2 min read

Use of Pointers For Lists

C++’ta diziler sabit uzunlukludur; yani program çalışırken bir diziyi doğrudan büyütüp küçültmek mümkün değildir. Bu yüzden, eleman ekleyip silmeyi destekleyen dinamik bir liste...

4 min read

Bilgisayar Tarihi

Bilgisayarın tarihi aslında sandığımızdan çok daha eskiye dayanıyor. Bugün masamızda duran ya da cebimize sığan cihazların bu hale gelmesi öyle bir anda olmamış. Arkasında yüzle...

3 min read

Java Link List Implementation

Linked List (bağlı liste), verileri bellek üzerinde dinamik şekilde saklamamızı sağlayan temel veri yapılarından biridir. Dizilerde eleman sayısı sabitken, bağlı listeler ihtiya...

1 min read

FSB

FSB(Front Side Bus) işlemci ile anakart arasındaki bilgi akışını sağlayan bir ünitedir. Bu ünite işlemci(CPU) ile bilgisayarın diğer parçaları arasındaki iletişimi sağlar. Bunu...

2 min read

Pointer Şeması

C++’ta pointer şeması, bir nesnenin bellekte nerede yaşadığını, hangi pointer’ın ona sahip olduğunu ve ne zaman serbest bırakılması gerektiğini anlamanın temel yoludur. Düşük se...

2 min read

Selection Sort

Selection Sort, en basit sıralama algoritmalarından biridir ve özellikle algoritma mantığını öğrenirken sıkça kullanılır. Bu yöntemde amaç, dizinin her adımında geri kalan bölüm...

2 min read

Heap-Allocated 2D Structures in C++

C++ öğrenirken en çok zorlanılan konulardan biri, işin mutfağı olan manuel bellek yönetimi ve pointer yapılarıdır. Bugün çoğu modern dil bizim için bellekle ilgilense de, C++ hâ...

3 min read

Programlama Dilleri Tarihi

Programlama dillerini ilk ciddi ciddi Bilkent Üniversitesi’ndeki derslerde görmüştüm. Programming Languages dersinde bayağı farklı şeylere dokunuyorduk. Genelde başlangıç Java i...

2 min read

A Basic Pointer Example

C++’ta pointer kavramı, dilin düşük seviyeli kontrol anlayışının temel parçasıdır. Burada artık yalnızca değerlerle değil, bu değerlerin bellekte nerede durduğu ile ilgilenilir....

2 min read

Type Casting

Type casting çoğu zaman küçük bir teknik detay gibi anlatılır. Bir parantez açarsın, hedef tipi yazarsın, kod çalışır. Ama tip dönüşümü aslında bir karar mekanizmasıdır. Bir değ...

2 min read

Pass By Reference

C++’ta fonksiyon çağrılarında en temel ayrımlardan biri şudur: Fonksiyona bir değerin kendisini mi gönderiyorsun, yoksa o değerin kendisine erişimi mi veriyorsun. Bu ayrım küçük...

1 min read

Hello World

I am starting this blog, even though I do not really know what I am doing yet. I see engineers blogging and sharing what they learn. It looks cool, and it feels like a good habi...