Maybe you’ve had a different experience, but I’ve never once looked at a system and said, “This is perfect, we’re done here.” There is always a new requirement, a shifting bottleneck, or a sudden spike in traffic. You can’t build a distributed system without at least one of your services eventually collapsing under the weight of its own dependencies. It’s…
There is a fundamental inconsistency between what consumers expect from transportation and what today’s electric vehicle market actually delivers. Most people want more comfort and less planning. They don’t want to drive. They don’t want to think about annual maintenance, tire pressure, or oil changes. They want to get in, go, and arrive — without any mental overhead. Enter the…
This article was originally written in Turkish in December 2025 as a contribution to the “2026 Trends in the Software World” series. The original collection can be found here: Yazılım Dünyasında 2026 Trendleri . Hello, this is my third article. For four years now, I’ve been talking about mass layoffs, recessions, emerging business sectors, and working frameworks like the hybrid…
Is it technically impossible to build a smartphone with a battery that lasts a full month? I suppose it would either be a heavy brick, take an eternity to charge, or just be too expensive to make any sense. Even if a company fixed all those issues and started mass production, I’d probably still be sitting here thinking: “I don’t mind plugging my phone in once a day, why on earth do I…
In our projects, I had a simple script named do.sh to quickly define and run tasks. I don’t remember why we didn’t use Makefile , but it had similar functionality. It’s just a BASH script: you can define environment variables, add functions and easily run other CLI commands. We wanted to be able to do that without having an extra dependency, so we could tell the developers, “Just…
A few years ago, to better understand ray tracing, I read the book Ray Tracing in One Weekend . The original code samples were in C++, and as I read, I was translating and writing them in Python. Yes, I knew from the start that it was a terrible idea, but I was curious. One of the best ways to observe Python’s performance inadequacy is to test the ray tracing algorithm by generating an image…
I took a quick look at the new features in Python 3.14. To try the code below on your local machine, install uv and run the REPL with the following command: uv python upgrade 3.14 uvx python@3.14 PEP 750 : Template Strings Template strings (t-strings for short) were a proposal to address a significant shortcoming in existing f-strings, and it’s now ready for use with version 3.14. First, let…
I assign a minimum lifespan to things I want to own. This habit helps me calculate how much budget I can allocate for them, understand whether that thing comes cheap or expensive, and whether it’s worth it. My 6-year-old Alienware laptop was a bit of a disappointment for me. I wanted it to be something I could game on at home, code on, and also be my portable computer. I also wanted to be…
I had the experience of upgrading Python in the projects from 3.8 to 3.12 in one step, and I realized that keeping the Python versions up to date is just as critical as keeping the dependencies up to date. Maintenance should not be a separate task, it should be part of all the other tasks. If you can check and update package versions in a timely manner, you don’t have to tell anyone that…
17 years ago, Steve Jobs stood on stage with a manila envelope in his hand and pulled out a laptop. At that time, mini-laptops called netbook were very popular, and the first Macbook Air had far superior features in every way. I had a Lenovo IdeaPad S10e. If I remember correctly, the screen resolution was 1378x768, but it was good enough for me. It fit in my small bag, it was light, and I could…
Sometimes I see this photo when Apple announces a new product and there are some really funny jokes about it on social media. Frankly, I don’t understand the criticism that “Apple is exhausted, it can’t produce anything new” for technological products that have reached a certain maturity. How do you compare them? I used the iPhone 11 for more than four years and upgraded to…
I had an incident that was as fortuitous as the alignment of the holes in Swiss cheese and, frankly, I wanted to take the vehicle to an open field, pour petrol on it and burn it. Fortunately, I am calm now and I think I will pay special attention to prevent that from happening again. Let me tell you what happened first. The fire alarm went off in the building next to our apartment and soon after I…
When dealing with more than one language, we look for similar approaches across languages. In Rust, there’s a keyword called enum to define and use enumerations. It’s easy to use, let’s look at this example from the official document : enum IpAddrKind { V4, V6, } struct IpAddr { kind: IpAddrKind , address: String, } let home = IpAddr { kind: IpAddrKind ::V4, address:…
Python favours letters and meaningful keywords for the logical operators, and all of them return a value depending on the conditions: not : The opposite of a condition, the reverse of the logical state of its operand. If the condition is True , it returns False , or vice versa. and : It needs to compare two operands, It returns True if both operands are True . or : It’s similar to and , but…
I wanted to repost the part about the mobility of an article I wrote in Turkish for 2024 Trends in the Software World on my blog. The topic of mobility is still in my focus and I am still following the developments closely. … Now I will end my article with a topic I haven’t mentioned before: Electric vehicles , or in general terms, automobiles. We have entered a strange period that…
Authy was my bad decision to use it for two-factor authentication. I remember that I chose it because of its ability to work on both PC/Mac and mobile phone, so if I work on a PC, I don’t need to use my phone to see the validation code. The GUI was very bad on all platforms, but it was working at least. Authy is sunsetted , the team explained on their website and stated that it will no…
I’m very conservative to avoid changing my routines, habits about my preferred software and hardware. But on the other hand, I always follow the new tools and try them as much as possible. It’s not easy to change habits, but if I think that the new alternative is better than my current one, and if I think that the new tool will increase my work quality, then I take a risk and replace…
I really like Japanese cars. There are Japanese brands that are durable, safe and have very good parts and service support. Toyota and Lexus are my favourite brands. But on the other hand, I was looking for value for money and I knew that Tesla was unbeatable in that regard. My beloved wife and eldest daughter loved the Tesla, while I, as a gourmet car guy, preferred the Lexus. My wife suggested…
When someone asks me about the starting point of my career, I always tell them about my Linux/BSD adventure. These operating systems still exist and most people know them, but not everyone knows about Pardus, and even if they do, it is not the same Pardus I mean. I grew up in a house without internet and the only connection to the world was through technology and gaming magazines. I used to…
I discovered a beautiful car museum in Izmir. I flew to Izmir at the invitation of my former colleague and we met at Adnan Menderes airport. We rented a car to avoid wasting time on public transport and drove straight to Torbalı and the museum. The museum, which opened its doors in 2015, offers visitors a delightful journey through the evolution of automobile history. Upon entering, one is greeted…
This isn’t advice, but I’d like to share what I did to get my daughter interested in coding. Like any parent, I showed her all sorts of things to learn coding at a young age, it was zero curiosity. After a while I couldn’t understand why I had done this, I just put it on the shelf and let her do whatever she wanted, I just watched and expected her to ask for something. She said…
As I mentioned in my last post , I started using VSCode to see what I’m missing and I thought that it’s a good time to take all the risks and break my Emacs configuration. In the last changes, I tried to use the built-in alternatives of the packages like eglot instead of lsp-mode . Now I’ve made the decision to update Emacs to version 29. When I first switched to Emacs 28 , all my performance…
I’ve used Emacs for years, and it’s not easy to get rid of this archaic (what?) editor. Although it helped me do my job better, my setup was not as stable as in the editor. When I started working as a web developer, I was installing all the project requirements on the local machine, even though I was not using virtual environments. Emacs was good enough to make development possible.
“ Hey, Twitter is not like in the good old days, I’m switching to Mastodon. ” No no, I’ll not say this. I already tried that, and I couldn’t succeed. Because I was alone and my friends continued to stay on Twitter. Now, after the latest news about Twitter layoffs, I see a similar migration again, but I don’t think it will be successful either. So the main thing I want is to be a…
The bundle is here ; I will update the list when I finished a game. Crosscode Gonner Inmost Sundered Baba Is You Moon Hunters Celeste Towerfall Ascension Towerfall Dark World Minit They Bleed Pixels Long Gone Days Midnight Scenes Midnight Scenes Episode 2 Hidden Folks Lenna’s Inception Golf Peaks Detective Case And Clown Bot Pushamo Cruel World Gun Rounds Sokobond Haque Schildmaid Mx Magnibox…
When I started using Windows in 2014, I continued to keep my development environment on Linux. I first did this with Vagrant; then, I used WSL, Docker, WSL2. I had an idea forming in my head ever since. I’m already using two different systems on a computer simultaneously; is it possible to use one in a thin client and connect to the other remotely? PURPOSE Let me first start by explaining why I…
Pair programming has been a known and applied method for a long time. I know that it has more than one purpose and practice, but I want to say some things about an expert and a novice working together. Investigation For a long time, I went to the dental clinic for braces treatment, and after my treatment was over, I had surgeries two times (no worries, I’m fine). Sometimes there was more than one…
I’m not a CTO of Radity anymore, but I trust that it will succeed more in the future. One of my old coworkers asked me some questions to understand what I was doing in this position. To remember it later, I wanted to share the questions and my answers here. What are the most critical three needs and goals of a CTO? To ensure that the IT organization does business uninterruptedly and efficiently.
Most of the websites are using Helvetica as an alternative font, and Ubuntu is trying to set Nimbus Sans as a similar font even you have Helvetica font. Also, the default font on Firefox is DejaVu Sans, but the default fonts are working just if the styles don’t specify a font family in a website. Nimbus Sans comes with fonts-urw-base35 package, and it’s ubuntu-desktop ’s dependency, direct or…
Mostly I do not prefer to read the books written for teaching a programming language. Because a good language community already places the importance on their websites to promote the programming language beautifully as in Python and Rust. In these websites, you can find documentation, tutorials, even a free ebook that allows you to read from the website directly, and they’re mostly up-to-date. As…
I have a gaming PC for two years but couldn’t have time to play a game. So I decided to change my priorities in my life and will try to play more games and read more books this year. My first plan was to play this game with my daughter, but I realized that it was not a suitable game for kids after I bought it, so I’ll pay attention to use the family filter from now on.
I had trouble understanding the story of the game because I didn’t play the first one. You start to play the game in the middle of the adventure. You have a sword and shield, so you think that the story is in the past, but you also have a kind of motorcycle that has no wheels but can fly. Also, you have a brother in arms named Gen, and it’s a robot. The other friend Trin tells you the story during…
My objective for the year 2019 was joining one more programming language community after Python and Lisp. I followed .NET Core in my first six months and did some projects using C# and F#. But then, I decided that learning Rust is a better idea. Some of the Python and Django developers I’ve followed have had a significant impact on my decision. Python is a programming language that easy to learn,…
I started to take a look at C++ courses to understand Rust better because it helps me to see the advantages of Rust. The following images are from a Linkedin course, the instructor is Bill Weinman , and his courses are perfect if you want to program with C++. If you have a photographic memory to remind something quickly, then you may like these images explaining data types in programming.
I started using an iPad instead of a second laptop for more effective use. Although it is excellent for reading things, answering emails, checking tasks, it is still not possible to use as a laptop with these devices. So I tried to connect to my primary PC remotely. But this was not satisfactory for me either. I took some notes to compare when iOS 13 and some updates came.
At the end of my three-week vacation, I was asked for a seemingly easy task. We were going to release the new version of the project we developed: Is today is the last working of the week? No . Is there any problem with the unit tests? No . Are all changes confirmed by the product manager, in the staging server? Yes . I always note everything, and so I write this article to remind this experience.…
Environment Variables I still use some development tools that are used by most Linux users and these tools need some environment variables like LC_ALL , HOME , etc. When I have a new PC with Windows 10, I start to use with defining these variables. Take a look at this post for more detail. PowerShell Core It’s possible to use BASH on Windows indeed, but I think PowerShell Core is a good…
For good things in life, you need labour, patience, and time. To draw a picture, To play an instrument, To program software, Or to produce something, Even to complete a book, To translate a text, To tell the troubles, To write what you think, To prepare a broadcast, For everything. Just sharing something in social media and consuming it is easy.
I use PEP8 in my Python projects except for a few rules . I think ‘single-quote’ and “double-quote” characters should NOT be the same. It could be better if these two characters had different counterparts in the Python language parser system. So we could use one of them for the template-strings (or f-strings). It doesn’t provide readability, causes inconsistency instead. Until now, I used…
Spreadsheet applications are the most functional applications I’ve used. Excel, Gnumeric, Google Sheet, OpenOffice Calc or whatever, it doesn’t matter. You can use it as task management like Trello, make daily - weekly - monthly plans, store and transfer data, and follow your financial situation. It’s like a Swiss army knife and not a new invention. I’ll update this article when I find a more…
With just a command: # terminal $ ENV = PROD ./do.sh deploy I have many projects using my script named DOSH and the parameters are mostly in common; deploy , start , stop , runtests , etc. It can be a .NET Core or a Django project, or just a website using any static site generator like this one but I run all the projects with the same command: dosh start . In Windows, the command may be a bit…
PowerShell and Git encoding problems To make git log command output properly display on Windows, we need to set a variable named LC_ALL : LC_ALL = 'C.UTF-8' Incorrect home folder in Emacs This problem is not only about Emacs. If you try to find a file from HOME variable, you may need to define the variable first: HOME = '%USERPROFILE%' ;; place all backup files in one directory (setq…