Teknoloji Meraklıları Haftalığı (Sayı 413): Elveda, React Native
Burada her hafta paylaşmaya değer teknoloji içeriklerini kaydediyorum, Cuma günleri yayınlanır. ([Duyuru] Gelecek Cuma başlayan Sonbahar Ortası ve Ulusal Gün tatilleri nedeniyle haftalık bülten ara veriyor. )
Bu dergi açık kaynak, katkıda bulunmaya hoş geldiniz. Ayrıca 《Kim İşe Alıyor》 hizmeti, programcı iş ilanları yayınlar. İş birliği için e-posta ile iletişime geçin (yifeng.ruan@gmail.com).
Kapak Görseli

Doğu Çin Normal Üniversitesi Minhang Kampüsü'nün yeni açılan Batı Kapısı, öncüllerinden biri olan Guanghua Üniversitesi'nin kapısını taklit ediyor. (via)
Elveda, React Native
Shopify, React Native'i bırakıp mobil sürümünü Swift ve Kotlin ile geliştireceğini duyurdu.

Yani, iOS ve Android istemcilerini geliştirmek için yerel dilleri kullanmaya karar verdi, artık bir ara sürüm oluşturmak için Web teknolojilerini kullanıp ardından her platformun istemcisine derlemeyecek.
Bu, altı yıl önce 2020'de, yine bir makale yazarak yerel dilleri bırakıp tamamen React Native'e geçtiğini ve Web teknolojilerini benimsediğini yüksek sesle duyurduğunu hatırlatıyor.
O zamanlar bu büyük bir haberdi, birçok kişi Shopify'ın Web teknolojilerini seçmesinin üç nedenini onaylıyordu.
- Her platform için aynı işlevselliği tekrar tekrar geliştirmek zorunda kalmamak.
- Geliştiricilerin teknoloji yığınları arasında çalışmasına izin vermek.
- Ortaya çıkan fazla zaman ve enerji, daha fazla değer yaratmak için kullanılabilir.
Açıkçası, bu üç neden sadece sözde kalmıştı, asıl neden sadece bir taneydi: para tasarrufu.
O zamanlar para tasarrufu için React Native'i seçti, sadece bir ekip beslemesi gerekiyordu, Android ve iOS için iki ekip beslemekten çok daha az maliyetliydi.
Şimdi React Native'i bırakmasının nedeni de para tasarrufu. Artık AI var, hangi dili kullandığınızın bir önemi yok. AI dilleri kolayca çevirebilir, o halde neden daha iyi performanslı yerel dilleri kullanmayıp ara sürümü atlamayasınız?
Tabii ki, React Native'in kendisi de başarısız oldu. 2015'te piyasaya sürülmesinden bu yana 10 yılı aşkın süre geçti, bazı temel teknik sorunlar hala iyi bir şekilde çözülmedi ve kullanımı da pek kolay değil. Başka bir şey tarafından değiştirilmesi, açıkçası hiç de haksız değil.
Kısacası, AI her şeyi yapabilen otomatik bir çevirmendir. Bir kez ortaya çıktığında, React Native gibi ara diller veya çeviri katmanları ölüm cezasına çarptırılır ve o andan itibaren tarih sahnesinden çekilmek kaçınılmaz bir son haline gelir.
Dünya Haritası için Yeni Projeksiyon Yöntemi
Geçen hafta büyük bir olay oldu, Birleşmiş Milletler Mercator projeksiyonunu kaldırmak için oy kullandı.
Bu karar ülkeler için bağlayıcı değil, sadece Mercator projeksiyonunun gerçekten modasının geçtiğini ve muhtemelen emekliye ayrılması gerektiğini gösteren bir işaret.
Bildiğimiz gibi, Dünya yuvarlak, haritalar düz. Bu, küresel araziyi düz bir haritaya dönüştürmek için bir tür dönüşüm yöntemi kullanılması gerektiği anlamına gelir. Bu aynı zamanda düz haritaların mutlaka bozulma içerdiğini de gösteriyor.

Yukarıdaki, şu anda yaygın olarak kullanılan dünya haritasıdır ve Mercator projeksiyonunu kullanır.
Bu projeksiyon, dünyayı doğrudan bir dikdörtgene germek gibidir, sonucu yüksek enlemlerin aşırı derecede gerilmesi ve görünüşte daha büyük görünmesidir.
Yukarıdaki resimde, ekvatordaki Afrika, yüksek enlemdeki Grönland ile aynı büyüklükte görünüyor. Aslında, birincisinin alanı ikincisinin 14 katıdır.
BM, Mercator projeksiyonunun kaldırılmasını ve dünya haritasını çizmek için yeni Eşit Dünya Projeksiyonu (Equal Earth Projection) kullanılmasını öneriyor.
Eşit Dünya Projeksiyonunun temel prensibi alan oranını değiştirmemektir. Bir arazi Dünya yüzeyinin %1'ini kaplıyorsa, haritada da %1'ini kaplamalıdır, bu nedenle alan oranı bozulmaz.
Bunun bedeli, alana göre germe yapmasıdır. Ekvator ve düşük enlemler için kuzey-güney yönünde dikey olarak hafifçe gerilir, doğu-batı yönünde hafifçe daralır; kutuplar ve yüksek enlemler için doğu-batı yönünde büyük ölçüde genişler, kuzey-güney yönünde büyük ölçüde basıklaşır.
Bu nedenle, bu projeksiyon yöntemi arazi şekillerinin bozulmasına neden olur, uzunluk ve genişlik deforme olabilir, bu haritayı hassas navigasyon için kullanmak mümkün değildir.

Yukarıdaki, Eşit Dünya Projeksiyonu ile yapılmış dünya haritasıdır, Afrika büyümüş.
Aşağıda Mercator projeksiyonu ve Eşit Dünya projeksiyonunun Avrupa ve Afrika'sı var. Farkı karşılaştırabilirsiniz.

Teknoloji Haberleri
Çevrenizde sizi gizlice izleyen gizli kameralar olup olmadığından endişeleniyor musunuz?
Güney Koreli bilim insanları, çevrede bu tür gizli kameraların olup olmadığını hızlıca tespit edebilen bir cihaz icat etti.
Bu cihaz, üzerinde sırayla yanan birden fazla LED bulunan bir devre kartıdır. Telefona bağlanarak kullanılabilir ve maliyeti çok düşüktür.

Prensibi şudur: LED'lerden yayılan ışık, gizli kamera tarafından yansıtılır. Alınan yansıyan ışıktan normal aynaları çıkararak kameranın konumu belirlenebilir.
Peki diğer yansıyan ışıklar nasıl elenir? Cihaz çok akıllıca bir yöntem kullanır: farklı konumlardaki LED'leri sırayla yakar.
Diğer yansıyan ışıklar düz aynalardan gelir, sadece kamera merceği dışbükey bir lenstir ve yansıyan ışıkta konum kayması olur. Farklı konumlardaki ışık kaynaklarını kullanarak hangi yansıyan ışıkların konum kaymasına uğradığı belirlenebilir ve böylece yansıma noktasının konumu tespit edilebilir.

- Tek Cümlelik Haberler
(1) Husi milisleri yakın zamanda büyük bir zafer kazandı ve tarihin en akıl almaz kazanma yöntemini kullandığı söyleniyor.
Karşı tarafın komutanının, birliklerine geri çekilme emri verdiği bir ses kaydını sahteleştirdiler. Bir fenomenin Twitter'da bu sahte ses kaydını yaymasını sağladılar ve sonuçta karşı tarafın ordusu gerçekten kargaşaya düştü, böylece çok az kayıpla karşı tarafın topraklarını ele geçirdiler.
(2) Dizüstü bilgisayarlar katı hal soğutma teknolojisini kullanmaya başladı, artık fan gerektirmiyor, grafen/bakır folyo yamalar ile soğutma yapılıyor.
Bu nedenle dizüstü bilgisayarlar son derece ince ve hafif yapılabiliyor. Lenovo yakın zamanda sadece 830 gram olan 14 inçlik bir konsept dizüstü bilgisayar tanıttı. Huawei'nin 14 inçlik dizüstü bilgisayarı MateBook Pro S ise sadece 798 gram.

(3) Chengdu şehri "Token Kuponu" uygulamayı planlıyor, işletmeler ve kurumlar ücretsiz başvurabilecek, tükettiğiniz Token'lar için hükümet tüketim tutarının %30'una kadar sübvansiyon sağlayabilir.
Ayrıca Chengdu şehri "Token Kredisi" de planlıyor, Token tüketimi için bankalardan kredi alınabilecek.
Makaleler
- HTML Şablon Dosyam (İngilizce)

Yazar, 2026 yılındaki bir web sayfası HTML şablonunun nasıl olması gerektiğini ve her satırın ne işe yaradığını ayrıntılı olarak açıklıyor.
- JavaScript ile CSS Nasıl İptal Edilir (İngilizce)

JS kullanarak web sayfasının CSS stil sayfasını iptal etmeyi öğreten başlangıç seviyesinde bir eğitim.

Yazar, konteyner teknolojisini kullanarak sunucuyu nasıl kurduğunu, kullandığı teknoloji yığınını ve çeşitli araçları anlatıyor.
- JavaScript'in Tuhaflıkları (İngilizce)

JavaScript hakkında, pek dikkat edilmeyen bazı JS sözdizimi tuhaflıklarını tanıtan popüler bir bilim makalesi.
- Google Arama'nın udm Parametresi (İngilizce)

Google arama URL'sine, belirli türdeki sonuçlara erişmek için bir udm parametresi eklenebilir, örneğin udm=2 görsel sonuçları döndürür.
- Entropinin Açıklaması (İngilizce)

Bu uzun makale, "entropi" kavramını anlaşılır bir dille, birçok illüstrasyonla açıklıyor.
Araçlar

Karmaşık tablolar oluşturabilen bir Python kütüphanesi.

Bu proje, terminal emülatörü Ghostty'yi WASM koduna derleyerek web sayfasında tam işlevli bir terminal kullanılmasını sağlar.
Mac bilgisayarında farklı dosya uzantıları için varsayılan açma yöntemini ayarlayan bir komut satırı aracı.

WebGL kullanan, prototip olarak sunulan ve oldukça sade bir arayüze sahip çevrimiçi resim düzenleyici.

Ücretsiz kullanılabilen, uçtan uca şifrelemeyi destekleyen çevrimiçi Office paketi. Tanıtım yazısına bakın.

macOS için masaüstü şarkı sözü aracı; çalan şarkının sözlerini gerçek zamanlı olarak bulup gösterir. (@Yudaotor tarafından gönderildi)

CapCut için resmi olmayan komut satırı aracı; terminal içinde video oluşturur/düzenler. (@renezander030 tarafından gönderildi)

Go dilinde yazılmış bir ikili dosya; kendi kendine barındırılan e-posta sistemi sunar, web üzerinden e-posta alıp gönderir, SMTP/IMAP/POP3/ManageSieve protokollerini destekler. (@lianguan tarafından gönderildi)

iPhone Duo tasarımından esinlenen, Wi-Fi, pil ve ses seviyesini birleştiren üçlü bir Mac durum çubuğu simgesi. (@lingyired tarafından gönderildi)
İlginç bir proje: JS betikleri ile Python betiklerini tek bir betik halinde paketleyip hem JS ortamında hem de Python ortamında çalıştırabilir.
Kaynaklar

Ağ cihazı topoloji diyagramları için web tabanlı tasarım aracı. (@abpyu tarafından gönderildi)

Tek bir elma kullanarak 100'den fazla görsel stili sergiler; örneğin yukarıdaki resim neon tarzı bir elmadır. (@jerrymakes tarafından gönderildi)

Bu site, Claude, ChatGPT, Grok, Perplexity, Cloudflare'e bağlandığınızda gerçekte hangi IP adresine bağlandığınızı gösterir. (@MuduiClaw tarafından gönderildi)
- Kütleçekim (Gravity)

İzleyicilere kütleçekim hakkında bilgi veren bir web multimedya eğitimi.
Görseller
Dünyanın en pahalı kaskı, ABD savaş uçağı F-35'in pilot kaskıdır. Tanesi 400.000 dolar (yaklaşık 3 milyon RMB).

Bu kadar pahalı olmasının nedeni, uçağın sensörlerine bağlanarak çeşitli verileri alıp işleyebilmesidir.

İçinde 360 derecelik bir ekran bulunur; pilota gece görüşü ve uçuş verileri sağlar (aşağıdaki resim).

Her kask 3D tarama ile özel olarak üretilir; karbon fiber, Kevlar ve çeşitli optik bileşenlerden yapılır.
Sovyet havayolu şirketi bir zamanlar yolcu taşımak için helikopter kullanmayı düşünmüştü.
1960'larda, o dönemin dünyanın en büyük helikopteri olan Mi-6'yı ürettiler; 80 yolcu kapasiteliydi.


Yaklaşık 33 metre uzunluğunda, 10 metre yüksekliğindeydi. İçeride her sırada 5 kişi oturabiliyordu ve hatta bir tuvaleti vardı.

Bu uçaktan sadece bir tane üretildi ve Sovyetler Birliği'nin doğu bölgelerine petrol ve doğalgaz çalışmaları için yolcu taşımakta kullanıldı.

Seçme Yazı
Açıkçası, gerçek hayatta çoğu programcının kodu oldukça kötüdür.
Ancak kötü çöpün de dereceleri vardır. Bir durumda kod, Spaghetti kod gibi birbirine girmiş, içinden çıkılmaz haldedir.

Daha iyi bir durum ise "lazanya kıvamında kod"dur (slop lasagna). Bu tür kod da birbirine yapışıktır ancak birçok katmana ayrılmıştır ve en azından katmanlar halinde ayrılabilir.

Mükemmel ve üstün kod yazamasanız bile, spaghetti koddan kaçınmalı ve lazanya kıvamında kod yazmaya çalışmalısınız.
Bunun bir örneği React framework'üdür; kodu bileşenlere ayırır. Bunun avantajı, her bir bileşen çöp kod olsa bile, en azından tek bir bileşeni ayrı ayrı değiştirebilmenizdir.
Bir bileşeni silmek, kopyalamak, satır içine almak veya yeniden yazmak oldukça kolaydır. Çünkü bileşenler birbirinden ayrıdır; bu, yalnızca tek bir bileşenin iç koduna odaklanmanızı sağlar.
Bileşen ağacınızın tasarımı mantıklı olduğu sürece, tek bir bileşenin içindeki belirli kodun pek önemi yoktur. Birisi 10.000 satırlık çöp bir bileşen yazdı, ne fark eder? Sonuçta birileri onu yeniden yazar ve bu, kod tabanının diğer kısımlarını etkilemez.
Kod lazanya yapısındaysa, tek bir katmanın kötü olması bütünü etkilemez.
Asıl önemli olan aşağıdaki şeylerdir.
(1) Verilerin sistem içinde nasıl aktığı, verilerin nereden girdiği, ne çıktığı ve hangi verileri depoladığınız.
(2) Kullanıcı deneyiminin nasıl olduğu; belirgin hatalar, kötü performans veya tutarsız davranışlar olup olmadığı.
(3) Temel soyutlamaların doğru olup olmadığı, yanlış kullanılıp kullanılmadığı.
Yukarıdaki üç nokta doğruysa ve kod bileşen tabanlı, değiştirilebilir bir yapıdaysa, programda büyük bir sorun yoktur. Bu durumda, bir bileşenin uzun olup olmadığı, iyi yazılıp yazılmadığı, sade ve mantıklı olup olmadığı veya küçük hatalar içerip içermediği aslında büyük resmi etkilemez.
Sözler
1、
Uydular, gezegenin dönüş enerjisini tüketerek gezegenin yok oluşunu hızlandırabilir.
-- 《Venüs Kendi Uydusunu Yuttu mu?》
2、
Birbirine çok benzeyen, gelirleri ve yazılım ürünleri benzer olan iki yazılım şirketi hayal edin. Tek farkları, A şirketinin 1 milyon satır kod, B şirketinin ise 100 bin satır kod kullanması. Hangi şirket daha iyi performans gösterir?
Açıkçası, kod satır sayısı diğerinin onda biri olan şirket daha iyi performans gösterir. Kod satır sayısı ne kadar az olursa, kodu anlamak ve değiştirmek o kadar hızlı olur.
3、
Büyük modeller, sizi kod yazan bir programcıdan, bağlamı yöneten, ilgisiz bilgileri ayıklayan ve ayrıntılı prompt'lar yazan bir programcıya dönüştürecek.
4、
2024'te doğru ekibi kurup yanlış ürünü yapan bir kurucu, 2027'ye kadar dayanırsa ekibi tecrübeli bir ekip haline gelir ve büyük olasılıkla doğru ürünü yapar.
Başarısızlıktan elde edilen deneyim, bir sonraki baharı beklemek üzere köklerde depolanan besinler gibidir, boşa harcanmaz.
-- 《AI Çökmeyecek Ama Bir Fırtınadan Geçecek》
5、
Birçok teknolojide hata yapmak çok büyük bir sorun değildir. GPS hata yaparsa, konumun yanlış olduğunu hemen fark ederim; Netflix'in önerdiği filmi beğenmezsem izlemem.
Ancak AI farklıdır, ne kadar gelişmişse, hata yapıp yapmadığını anlamak o kadar zorlaşır, çünkü AI'yi kendi başımıza yapamayacağımız ve doğrulayamayacağımız görevler için kullanırız.
AI hata yaptığında, sadece daha güçlü AI'ları çağırmaya devam edebiliriz, umarız büyü işe yarar. Büyücü çağına hoş geldiniz.
-- 《AI, Büyücülerle Çalışmak Gibidir》
Geçmiş Yıllardan
San Francisco'daki Çılgın AI Reklamları (#366)
Senin Hayatının Hikayesi (#316)
Kendiniz İki Dilli EPUB E-Kitabı Yapın (#266)
Minimalizmin Zaferi (#216)
(Son)