Category: Lifestyle

  • The Future of Mobility

    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 will closely concern the software industry. It is like the Quartz revolution in watches (or the Quartz crisis if we look at it from the Swiss perspective).

    To put it simply, a Japanese wristwatch company called Seiko produced the first commercially mass-produced quartz wristwatch in the world, the Astron model. In appearance, there were still hour and minute hands on the dial, but instead of mechanical parts, it was powered by an electrical technology. These watches could show the time accurately for longer periods of time than mechanical watches, were lighter, and as production became easier and costs decreased, they took over the watch market. Mechanical watches currently have a certain user base, and there are very valuable companies that produce these watches.

    Now we see something similar in the automobile market. An American company called Tesla brought electric vehicles into our lives, then Chinese battery and electric vehicle companies sprang up like hotcakes, and European automobile manufacturers fell into the same situation as Swiss watch companies. These electric vehicles have very powerful computer hardware and operating systems, and I think this will be a new field of work for software developers.

    Cars with internal combustion engines will continue to exist, just like mechanical watches; however, the mobility experience that electric vehicles provide to the user makes us think that we need to look at those vehicles with a different perspective. I just imagine, there is a screen in the middle, being able to put it in camping mode and sleep in the car all night without getting cold, being able to play games, listen to music, have a living space where you can isolate yourself in a capsule, being able to connect to the internet and download applications, being able to do things in the car that you can do on your phone, being able to control the car from your phone or computer, being able to remotely monitor the vehicle’s data, being able to access its cameras… I could list more, there are many possibilities and do you know who is needed to do these? Yes, you guessed it.

  • Apple Passwords, Finally!

    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 longer be supported after March 19, 2024.

    On the other side, I was using KeePass for storing passwords, backup codes, and other secret texts. The reason for the choice of KeePass was the same: it works on multiple platforms and devices. But there were some problems:

    • I need to find a way to sync the passwords myself. All KeePass clients have their options, and keeping the files in iCloud is one of them.
    • Every client comes with a missing feature or a bug. The fact that the application was paid was not a problem for me, but it’s not a good idea to make payment for each client. Some clients support multiple platforms, but they don’t work as well on all platforms.
    • I was using KeePassXC on MacOS and KeePassium on iPhone. If I decide to go back to Windows, I will have to find a client for that too. I really don’t have time to investigate it…

    In short, I was not happy with either of them and I started to search for an alternative app. My expectations are:

    • If it’s possible, I want to use one app for two-factor authentication and password storage to reduce app requirements and subscriptions.
    • I want to choose the sync method myself. You know there were leaks in some applications like LastPass and OnePassword, and there’s no a trustable way of syncing the passwords so each new syncing method means another system that must be secured. I want to continue to use my preferred cloud storage service for syncing the passwords.
    • And, of course, I still need to access my passwords from multiple devices.

    I would like to share with you what I prefer at the end of this article, but I really could not find a long-lasting solution to meet these needs. All I’m doing now is waiting, Apple announced that it is developing a new password manager called “Passwords”. I hope it will solve my problems completely.

    The existing password application in Apple is not a separate application; it’s a part of Settings. However, you can use it for two-factor authentication and storing passwords. For all other secret texts like backup codes and the secret keys of your blockchain wallets, you can use the Notes app, but don’t forget to lock the notes for added security.

  • Less Configuration for More Freedom

    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 it.

    Sometimes I’ve made the wrong decision, for example I was a KeePass user and switched to the Pass CLI application because I thought I didn’t need such features. But then I noticed that pass app doesn’t have a good client for desktop and it’s not easy to configure GPG, repository access for iOS. Then I decided to use Apple Passwords to get rid of installing extra password and two-factor authentication applications.

    Many developers have a repository that contains their public configuration files, and most of these are open to the public. I often look at these repositories, but unlike many people, I prefer to keep my config files as simple as possible, because it’s like adding a dependency to your project, every new dependency comes with a maintenance cost. The other main reason is that I want to keep flexibility. I don’t have specific requirements for any tools, but I always expect consistency between GUIs, keyboard shortcuts. And I also want to have all the features I need without adding a lot of plugins, or if that’s not possible, I expect the plugins to at least be officially supported.

    So when I discover a new tool, or want to replace my existing tool with another, I follow these steps:

    1. First, check your budget if the tool is not free. Some tools may come with a free subscription, but that does not mean the tool is always free. I don’t have a hard and fast rule here, but I definitely expect the paid tools to be better than the free alternatives.
    2. Prefer the one that is ready to use quickly. I could prepare a server to host my blog. I have to configure the virtual machine’s swap area, prepare some cron jobs to back it up, use some plugins to cache and optimise WordPress. Or I can host my site directly on WordPress.com. I preferred the second option, but considering the first rule, I had a budget for it.
    3. Look at all the features, but compare the options based on the features you really need. I used Evernote for a long time, then decided to investigate an alternative because of new expectations. Joplin was a good Evernote alternative, but I never used all of its features. So I even tried Apple Notes before making my final decision.
    4. Own fewer extensions, use all features efficiently. If I’m not sure about the benefit of a tool or a feature of a tool, I temporarily stop using it and make a note of what I’ve lost. Tools are like a knight’s sword and shield: the more effectively we use them, the better they help us do our job.
    5. Simplicity is fine to avoid distraction, but do not ignore helpful things. I don’t really need line numbers in my editor, but breadcrumbs are helpful to remember class name, module name, file path, etc.

    These rules also help with my hobbies and family time. The older you get, the more important it becomes to get things done on time.

  • How did I Meet Pardus?

    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 rewrite the articles in magazines that I liked and wanted to understand on my typewriter because I read too fast and didn’t understand anything, so the typewriter was kind of slowdown for me. Sometimes codes were shared in magazines and they would also write what the output would be when we compile and run these codes. That’s something a typewriter could never do. So I grew up dreaming of owning a personal computer until I started university.

    When I got my first computer, I remember that the operating system installed on it was FreeDOS. Honestly, I didn’t even know how to connect to the internet, so I looked into installing another operating system instead. Windows was a very nice alternative, but it was expensive and I had to buy a license. Then I had heard a lot about Linux from magazines, but before that I want to try FreeBSD first, I don’t know why but I thought that it may easier than Linux. There were many distributions of Linux and I couldn’t decide which is better for me. But FreeBSD is already a ready-to-use operating system. I already had magazines with information on how to install FreeBSD and how to connect to the internet. I managed with that for a couple of months.

    Then I discovered some great Linux communities: forums, rooms on Freenode, events, new friendships, spontaneous meetings, and so on. The strongest of these communities, in my opinion, was Pardus. It’s a Linux distribution that is developed by TÜBİTAK, and I did my intern in this significant instituon. TÜBİTAK means “Scientific and Technological Research Council of Türkiye”, is the leading agency for management, funding and conduct of research in Türkiye.

    When I started to use Pardus, most of the core tools of the operating system was developed in Python: PiSi, Kaptan, YALI, pyxemel, etc. Normally I was planning to learn Ruby but all my friends in Pardus community preferred to continue with Python. I don’t regret it but since I couldn’t use Ruby on Rails in any project, it remained a disappointment to me. But on the other hand, I got my first salary with Django and it wasn’t bad either.

    Pardus is a Debian based distribution anymore. I don’t know what the community is doing these days but I think those old days are over for me.

  • Return Back to Blog

    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 platform-independent content creator; if someone wants to reach me, I want them to visit my website, or if someone has negative thoughts about me… Maybe they can write me an email, or I really don’t care.

    I had a plan in mind:

    1. Periodically delete unnecessary tweets on Twitter (98% of them are)

    I wrote a small application in Python because I didn’t want to allow any third-party software. Feel free to look at the project if needed; the name is meep. When I had time, I filtered and reviewed my tweets by year and keyword. Then, I deleted the unnecessary ones and searched for inspiration to write new blog posts.

    2. Create accounts on several alternative social media servers

    I will use my website as microblogging and share my posts on multiple social accounts like Mastodon, Cohost, etc.

    3. Automate the synchronization in one direction

    Using applications such as IFTTT and Zapier, I have automatically shared my new blog posts to social media via RSS.

    After that, I don’t care anymore if Twitter shuts down or a Mastodon server crashes. I have the data, and it is always visible on my website. I advise.

  • Data Types in Programming

    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.

  • Consumer

    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.

  • What age do we live?

    Our technology is not so advanced to be an eye or an ear for us.
    Or we’re not in an age where we don’t need our body yet.

  • Spreadsheet applications

    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 functional application.

  • Göç

    Göç

    Bir arkadaşım, “Metroya binerken yüzü gülen insan görmüyorum.” demişti. İstanbul’a geldim geleli, insanların gözlerinin içine baka baka yürürüm. Yüzlerdeki ciddiyet, bana zihinlerinde çok farklı şeyler gezindiğini hissettiriyor. Sanki yüzleriyle zihinleri arasındaki bağlantılar kopmuş gibi. Bu o kadar bulaşıcı bir şey ki, ben de çoğu zaman pek gülümsemiyorum.

    Katre adında bir kadın. Bir bankacı, sabahı ve akşamı belli. Kahvaltısı bir poğaçadan ibaret, ancak yürürken yiyebiliyor, bir on dakikalık yürüme mesafesinden sonra metrobüse, oradan aktarma yapıp metroya binecek, sonrasında yine bir beş dakika daha yürümesi gerek. Diğer birçok işe giden insanlarla aynı vakitte işte olmak ve aynı yoldan gitmek zorunda olduğu için kendini kalabalığın ve telaşın içinde buluyor. Bu kadar zamandır işe gidip geliyor ve her gün binlerce insanla göz göze geliyor; ama bir gözü bir kere daha görebildiğini pek hatırlamıyor.

    Bu yazı, bu şarkıdan önce biter.

    Katre, karşıdan karşıya geçmek için araçların yol vermesini bekliyor. Yok hayır, bu İstanbullu için çok komik bir senaryo oldu. Doğrusu şöyle olmalı: Katre, adımlarını zihninde öyle hesapladı ki, karşıdan karşıya geçerken durma ihtimali yüksek bir sürücüye denk getirdi ve kaldırımdan yola adımını attıktan sonra artık sürücüyle göz temasını kesti, dikkatini duymaya verdi. Sürücü de “Sen bana bakmıyorsun; ama ben sana yol vermek istemiyordum, bana resmen üstünlük taslamış gibi hareket ediyorsun.” dercesine tüm hızıyla yaklaşıp son anda frene basıyor. Katre karşıya geçmiş, sürücü de yoluna devam etmiş oluyor; ama zihinlerinde çok başka senaryolar var. Katre içinden “Ezseydin bir de!” diyor, sürücü bağırıyor, laf atıyor. Katre dikiz aynasını kırmak istiyor, sürücü ezmek…

    En sevdiğim alt geçitlerden biri. Biraz ürkütücü.

    Ben uzun boyluyum, dolayısıyla adım mesafelerimin daha uzun olmasını, daha hızlı yürüyebileceğimi varsayıyorum. İstanbul’da kadınlar erkeklerden daha hızlı yürüyor. Bazı kadınları geçmek için koşmam gerekiyor. Katre de öyle yürüyor. Erkek hegemonyasının içinde kendini güvende hissetmediği için mi bu böyle? İşe her gün geç kaldığı için mi? Yoksa burada herkes hızlı yürüyor, öyleyse ben de hızlı yürümeliyim diye düşündüğü için mi sadece?

    Bir kere yavaş yürümeyi denedim. Yüzüme bakıp uyaracak kimseye denk gelmedim; ama omzuma dokunup, elime çarpıp başını çevirmeden geçip giden çok oldu. Sanki, hayallerinde kolumdan tutup kenara çekip sorguya çekmek istiyorlardı da, gerçekte sadece bunu yapabilmişler gibi. Bir kere yürüyen merdivenin solunda durmayı denedim, bir kadın söylene söylene yanımdan geçti. Bir keresinde de bir öğrenci önümü keser gibi yapıp geçti yanımdan. Kuralların olması hayatın akışını kolaylaştırmak için iyi şeyler de, burada çok başka bir durum söz konusuydu. Burada daha çok insanlar kendi içinde biriktirdikleri öfke ve nefreti bir bahane bularak boşaltma ihtiyacı duyuyordu. Tıpkı metrobüsün şoförüne şemsiyeyle saldıran yolcu gibi. Sorsak Katre’ye neden hızlı yürüyorsun diye, bir cevabı yok belki de. Sabah yarım saat daha erken çıksa yine hızlı yürüyecek, önüne çıkan engele yine omzundan ittirerek tepkisini gösterecek; ama hayalinde ona kıçından tekmeyi basacak. O da diğer yürüyen herkes gibi bunu arzulayacaktı.

    Tekirdağ plakalı, welcome to İstanbul! Bir şemsiye darbesiyle sanat eseri çıktı ortaya.

    Her gidişin bir de dönüşü var. Katre, dönerken “Yer yok kardeşim, buraya yanaşma.” diyen insanların kapıya dizildiği yerden metrobüsün içine atlayıp “İşte bak, yer varmış.” diyerek diğer yolcularla sanal kavgaya tutuşacak, her gün olduğu gibi metro çıkışlarında, girişlerinde asansörü deneyecek. Asansör meselesine gelmişken yine bir hikayemi anlatmak isterim. İTÜ / Maslak’a giden metronun en arkadan bir önceki vagonundan inilince asansörün olduğu araya denk geliyorsunuz. O vagondan inenler, diğer vagonlardan inenlerden daha hızlı adım atarlar. Hızlı adım atanın esas nereye varmak istediği biz İstanbullu çalışan sınıfının kabak gibi bilebileceği şeylerden biridir. Bir keresinde ben bunu taklit ettim. Metro durunca vagon kapısından fırladığım gibi yürüyen merdivenlere yöneldim. Sürü psikolojisine güzel bir örnektir.

    Katre’nin kullandığı bu yollar tam bir dövüş arenası gibi. Yaşlılara yer yok, çocuklar servis araçlarına mahkum, engellilerin durumu hakkında çok bir bilgim yok. Simto Alev’in yıllar süren kaldırım direği hikayesi aslında bir özet gibi. Normal bir insanın empati eksikliği yüzünden hiç önemsemediği minik şeyler bu şehri sadece belli kalıplara uyan dar bir kitlenin rahat yaşayabilmesine imkan tanıyor. Nüfusu İstanbul’un onda biri olan Zürih’te gördüğüm engelli sayısı burada gördüğümden çok daha fazla. Oranın da tehlikeli mahalleleri var, orada da sokakta yaşayan dilenciler, yere çöp atan sorumsuzlar, ırkçı tavır takınan insanlar var; ama orada engelliler dışarı çıkabiliyorlar, kaldırımlar tekerlekli sandalyeyle çıkılabilecek yükseklikte, hayvanat bahçesinde kendi başlarına takılabiliyorlar, çocuklar kaldırımda scooter kullanabiliyor. Çok üzgünüm; ama yaşını başını almış bir engelli görememenin sebebi hakkında söylenenler doğru olabilir. Vebali Katre ve benim, hatta siz değerli okuyucumuzun boynuna.

    “Yeneceğim seni, İstanbul!” diye arattım, bu çıktı.

    Sizi bilmem ama Katre’de benden izler var. Her işe gidip geldiğimde, sürekli etrafa negatif enerji yayan insanlar var ve haliyle ben de istemeden yayıyorum. Biraz gülümsemekten ne zarar gelir? Serdar Kuzuloğlu’nun bir blog yazısında dediği gibi, gülmek sadece selfie çekince aklınıza gelmesin. İçinizden gelmese bile gülümseyin. Bir deneyin. Hatta bir gülen insanlar hareketi başlatalım. Gülümseme hareketi, tebessüm hareketi, ismi ne olursa olsun. Yapacağımız tek şey arada bir yüzümüzü kontrol etmek.

    Bu yazının başlığını, Selçuk Şirin’in jüri üyesi olduğu bir yarışmanın temasından aldım. Göçle ne alakası var bu yazının bilmiyorum; ama o yarışmayı duyduğumda aklıma bunlar gelmişti. Öyle sanıyorum ki, bu işini sevmeyenler memleketinde koşturup duran insanların (işini sevenler dahil) akıllarından en az bir kez bu hayat silsilesinden bıkıp göç etmek geçmiştir.