Bvural41 1
Bvural41
noisiv 1
noisiv
mavzermete 1
mavzermete
Reklam vermek için turkmmo@gmail.com

[DB] CLoginData memory leak

Elinize sağlık, harika bir analiz olmuş.Senin paylaşımlarını merakla takip ediyorum.

Ben de bu hatayı ilk yakaladığımda sunucuyu ASan & UBSan ile Debug moda bağlamıştım (bu arada geliştiren tüm arkadaşlara kesinlikle tavsiye ederim, sinsi bellek hatalarını anında yüzünüze vuruyor). O gün anlamıştım ki bu kod altyapısıyla bir yere kadar gidilir, artık C++23 / C++26 standartlarına geçmek şart oldu.

Tabii DB tarafındaki bu bellek sızıntısını ve o saçma döngüsel mantık hatasını çözmek için dil standardını illa C++23/26'ya taşımak "teknik bir zorunluluk" değil. İstenirse C++03 seviyesinde bile kalıp if (pkLD->IsDeleted()) kontrolünü sökerek, 4 haritadan elle erase + delete yapıp sızıntı kapatılabilir. Ama bu sadece günü kurtarmak olurdu. Kolları sıvayıp "bunu kökten ve en temiz nasıl çözeriz?" diye bakınca modern C++23/26 standartlarının sunduğu mimari çözüm zaten olayı bambaşka bir seviyeye taşıyor.

Peki C++23 / C++26 Bu İşi Nasıl Kökten Çözüyor?

Eski YMIR kodunda 4 farklı std::map nesnesi aynı ham pointer'ı tuttuğu için nesnenin "gerçek sahibi" kim belirsizdi. C++23/26 standartlarıyla bu CLoginData yönetimini şöyle modernize edebiliyoruz:

1. std::shared_ptr ve std::weak_ptr İle Otomatik Yaşam DöngüsüYMIR'in elle yazmaya çalışıp beceremediği referans sayacı yerine, sahipliği tek bir std::shared_ptr üzerine kuruyoruz. Diğer 3 haritaya ise nesnenin ömrünü uzatmayan std::weak_ptr veriyoruz.

  • Ana Sahiplik: m_map_kLogonAccount -> std::unordered_map<std::string, std::shared_ptr<CLoginData>>
  • Yan Bağlantılar: Diğer 3 harita -> std::weak_ptr<CLoginData>
Zühtü oyundan çıktığında veya CH koptuğunda m_map_kLogonAccount.erase(it) çağrıldığı an shared_ptr referansı 0'a düşer ve C++ runtime'ı belleği otomatik olarak temizler. Ne IsDeleted() bayrağına gerek kalır ne de 4 haritayı tek tek gezip amele gibi elle delete yazmaya!

2. C++23 std::expected / std::optional İle Güvenli AramaKullanıcı adı veya Account ID ile arama yaparken weak_ptr.lock() kullanarak nesnenin hâlâ canlı olup olmadığını C++23'ün monadic operasyonlarıyla (transform, and_then) tek satırda null-safe sorgulayabiliyoruz. Silinmiş bir login verisine erişmeye çalışıp oyunu çökertmek hem derleme hem çalışma anında imkansızlaşıyor.

3. C++26 Heterojen Arama (Heterogeneous Lookup) Performansıstd::unordered_map üzerinde std::string_view ve transparent hash kullanarak szLogin aramalarında gereksiz string kopyalamalarını (memory allocation) sıfıra indiriyoruz. Hem bellek sızıntısının önüne geçiyoruz hem de DB tarafının paket okuma performansı tavan yapıyor.

Özetle; yamalamak yerine C++23/26 ile altyapıyı modernize etmek bu tarz çökme ve sızıntı krizlerini tarihe gömüyor. Tekrar eline sağlık!
 
Düzeltmenin büyük bir faydası yok yıllardır bir sorun yaratmıyor aynı durum simya gibi bir çok noktada da mevcut artık veri ne zaman lazım olabilir 50K++ oyuncuda belki bellek kullanımını düşürmek için olabilir hala 32bit game db kullanan varsa belki onlara fayda sağlar bellek kullanımı için o da büyük bir fayda değil, saldırı olmadığı sürece anlamsız uygulama kapanana kadar orası kullanılamayacak fragmantasyon fazla olursa ancak o zaman performans üzerinde etkisi olabilir bellek delik deşik olduğu için benim düşüncem bu belki işe yarar farklı noktalar vardır herkesin kodları farklı sonuçta.

Son konularında işe yarar faydalı şeyler paylaşmışsın daha yüksek faydalı konular için bu alttaki önerilerimi dikkate alırsın umarım daha etkili olur yeni konularında.

Benim tavsiyem bu tarz bir konudan çok insanlara çok daha faydalı bir konu fikri söylemek isterim new delete işlemlerinin hepsini bellek havuz sistemine dönüştürmeyi gösterebilirsin bence daha iyi bir konu fikri olur bellek fragmantasyonu en büyük sorunlardan biri stabil bir oyun için daha faydalı olur işlem hızı da artar yada performans ölçümleri yada doğru kod mimarisi nasıl olmalı gibi cpu dan geçen komut sayısının azaltılması bellek erişimlerinin hızlandırılması gereksiz bellek erişiminden kaçınma teknikleri stabil çalışması, uygulamadaki dalgalanmaların analizi ve düzeltme örnekleri, doğru ağ paketlerinin nasıl kullanılması gerektiği gibi bir sürü teknik bilgi eksiği var forumda işe yarar faydalı konular bunlar string kopyalama da dahil std::string_view ile çözüm gibi akıllı işaretçi kullanımları gibi çok fazla teknik konu var umarım bir gün bu tarz faydalı konular paylaşanları görebiliriz ama zor bunları öğrenmek zaman alıyor ve kimsenin karşılıksız paylaşacağını düşünmüyorum.
 
Düzeltmenin büyük bir faydası yok yıllardır bir sorun yaratmıyor aynı durum simya gibi bir çok noktada da mevcut artık veri ne zaman lazım olabilir 50K++ oyuncuda belki bellek kullanımını düşürmek için olabilir hala 32bit game db kullanan varsa belki onlara fayda sağlar bellek kullanımı için o da büyük bir fayda değil, saldırı olmadığı sürece anlamsız uygulama kapanana kadar orası kullanılamayacak fragmantasyon fazla olursa ancak o zaman performans üzerinde etkisi olabilir bellek delik deşik olduğu için benim düşüncem bu belki işe yarar farklı noktalar vardır herkesin kodları farklı sonuçta.

Son konularında işe yarar faydalı şeyler paylaşmışsın daha yüksek faydalı konular için bu alttaki önerilerimi dikkate alırsın umarım daha etkili olur yeni konularında.

Benim tavsiyem bu tarz bir konudan çok insanlara çok daha faydalı bir konu fikri söylemek isterim new delete işlemlerinin hepsini bellek havuz sistemine dönüştürmeyi gösterebilirsin bence daha iyi bir konu fikri olur bellek fragmantasyonu en büyük sorunlardan biri stabil bir oyun için daha faydalı olur işlem hızı da artar yada performans ölçümleri yada doğru kod mimarisi nasıl olmalı gibi cpu dan geçen komut sayısının azaltılması bellek erişimlerinin hızlandırılması gereksiz bellek erişiminden kaçınma teknikleri stabil çalışması, uygulamadaki dalgalanmaların analizi ve düzeltme örnekleri, doğru ağ paketlerinin nasıl kullanılması gerektiği gibi bir sürü teknik bilgi eksiği var forumda işe yarar faydalı konular bunlar string kopyalama da dahil std::string_view ile çözüm gibi akıllı işaretçi kullanımları gibi çok fazla teknik konu var umarım bir gün bu tarz faydalı konular paylaşanları görebiliriz ama zor bunları öğrenmek zaman alıyor ve kimsenin karşılıksız paylaşacağını düşünmüyorum.
valla bir günde yoruldum, laf anlatmaktan yoruldum. bu; konuyla alakalı yapacağım son yorumdur gerçekten vakit kaybı.

ilk önce "bir sorun var ama işte düzeltmenin faydası yok" artık son aşamlarda söylenecek şeyler, trade-off düşünülür (yani bana bunun maliyeti ne faydası ne) çözmenin maliyeti çok değilse çözersiniz ama çok büyük bir maliyet varsa eleme yaparsınız, ben bu "sorun var ama çözmesek de nolcak amaan" mantığına katılmıyorum, profesyonellikten uzak bir yaklaşım ama saygı duyarım karar sizin.

burdan sonra söylediklerim genel içindir.

bu konu bir analiz ve teknik bir paylaşım zevk için yapılmış bir şey, bu kadar büyük bir codebasede her şeyi görmem bilmem mümkün değil (aşağıda değineceğim complexity sebebiyle), ama gelde bunu olaydan bi haber adama gelde anlat. bu konuda bunları hiç tartışmamamız gerekiyordu yorumlar "eyvallah, sağ ol, ya not düşmüşsün hani soket değişimini denemedim diye gerçekten orada bir sorun var bir baksak nasıl olur?" tarzında insanca şeyler olmalıydı, biz burda belli bir yaşı aşmış ama halen olgunlaşamamış insanlarla uğraşıyoruz, neyse.

memory fragmantation, cache locality, RAM nasıl çalışır, CPU nasıl davranır, contiguous container observerlar, network programming, UNİX-Linux sistemler, ağ yapısı, STL 2.0, Modern C++ teknikleri, idiomları, STL, C++'da neden diğer diller gibi mimari tasarım kurulmaz, C++ ile mimari tasarım, Modern C++ design bla bla bla ben bunları açayım bir konu veya youtube kanalı veya farklı bir şey işte ne olursa anlatayım da neden anlatayım?

şimdi: ben savunmada çalışıyorum, domainim game programming değil. boş vakit bulursam tamamen hobi amaçlı metin2 ile uğraşıyorum, ne maddi çıkarım var ne manevi ne de bana teknik/bilgi vs açısından bir şey katıyor benim için tamamen vakit öldürme aracı yani. neyse bir şey görüyorum bunu bilgi amaçlı paylaşıyorum amaç katkımız olsun, üniversitede öğrenciyken burdan beni bulan insanlarla harçlık çıkarıyordum. neyse, bir sayfa analiz yapıyoruö bir kaç saat uğraşıp not olarak oraya yazıyorum ki bakın metin2 kompleks bir yazılım, bunu direkt böyle yapmak farklı sebeplere yol açabilir test edin sorun olursa yazın düzeltiriz. sonra yorumlara bir bakıyorum, hiç şaşmaz artık bilgi seviyesi arşa çıktığı için forumda biri bir açığını görür "ZAA ŞU DA VARDI ATLAMIŞSIN ZAA XD" ,"YAV ZATEN BİLİYORDUM BEN YAVV XDXD" mantığıyla yorum yapar 3-5 şarlatanı da alkışlar, sorun ne şarlatan bir şey biliyor ne de yorumu yapan (Tunga'ya laf söylemiyorum yanlış anlaşılmasın, onun da buna benzer bir yorumu var kendisiyle 1*1 sohbetim yok ama saygım vardır) ki bu sadece bana özel bir durum değil, genel böyle, bizim insanımız haset eder, taşlar vs. sever böyle şeyleri, neden? çünkü senin seviyene çıkamıyor etrafa seni onla aynıymış gibi göstermesi gerekiyor. ne başarısı var diye sorsan, neyse.

ya beni geç hadi ben ortamı biliyorum 7 senedir burdayım, başka biri bile olsa bu muameleyle karşılaşsa niye uğraşsın? girdiği strese değmez.

bunu ego olarak algılayabilirsiniz artık zaten ne desem egoist oluyorum pek fark etmiyor, ben bu metin2 camiasındaki akla gelecek her isimden daha çok okumuş çizmişimdir, C++ ile para kazanıyorum, bu dili çok seviyorum, bu dilde üretim yapıyorum, bu dile emek sarf ediyorum. son 3 yıldır okumadığım gün yoktur, binlerce saat bu işin ağa babalarından türkçe/ingilizce kurs almışımdır, yüzlerce saat konferans izlemişimdir metin2 camiasında global dahil benden daha derin C++ bilgisi olan bir kişi daha bulamazsınız, üstünede konuşabiliriz sorun yok. ben bu kadar hasetli bir ortam görmedim, "ecnebi", "gavur" vs. diyip beğenmeyeceğimiz adam dcden yazıp işte paylaşımın için teşekkürler güzel bir şey paylaşmışsın vs yazıyor bizim 5 satır kod okumamış adam yapay zekayla burda seni aşağıya çekmeye çalışıyor. ben neden şimdi bu adamla tartışayım ki? var mı emeğimin bir değeri? yok, üstüne nelerle uğraşıyoruz...

benimle muhabbeti olan herhangi birine soralım, ben egoist biri miyim? hayatımda kimseyi ezmedim, zorbalamadım, zamanı geldi burdaki insanalra taa üniversite zamanlarımda dcden ekran paylaşıp DS anlattım, yeri geldi kod anlattım, yeri geldi ücretsiz hata düzelttim, bu yaşıma kadar hak etmeyen kimseyi ezmedim, içerikleri dahi eğlenceye vurup gülüp geçemiyoruz allah aşkına yapmayın. ha yanlışlarım var mıdır vardır, tıpkı herkesin olduğu gibi (gerçi forumda herkes evliya onun dışında herkes y. ama olsun ben evliya olduğumu iddia etmiyorum, değilim de çok hatalarım vardır)

başka bir forumdan içerik alıp yapay zeka ile emojili falan bir konu oluşturup paylaşsam kodu bir kişi indirip bakmaz, hayatında 5 satır code review yapmamış adam sana klavyeden laf ediyor, ben şimdi bunları gördükten sonra bilgimi neden aktarayım ki? bir kaç sene sonra biri gelip sövsün diye mi? yorumda gelip sövsünler diye mi? paylaştığın özgün içerik olmasına rağmen "ya ben bunu hep biliyordum zaten yaaxd" edasıyla yorum atsınlar diye mi? üstüne birde laf işiteyim diye mi? kraldan çok kralcılık büyük dert. (eleştiri ve hasetle saldırmak farklı şeyler, eleştiriye açığım elbette)

tüm bunların dışında genel bilgi: metin2'nin asıl sorunu kompleks olmasıdır, kompleks sadece karmaşık demek olmuyor gördüğüm 3 semptom:

change amplification
cognitive load
unkown unkowns

tabii complexitynin doğma sebepleri de şunlar: dependencies ve obscurity. codebase tamamen "tactical programming" diye adlandırdığımız yöntemle kodlanmış(halk dilinde hurraa, çalışsın diye yazılmış), teknik be mimari borcun arşa çıktığı, ufak bir değişiklik bile okuyucunun onlarca şey bilmesi gerektiği bir halde, bunu eleştiriyoruz adam bana gelip ymir'i savunuyor, yav kardeşim bunu ben yapıyorsam gel bana da söylen, ama yok illa sana laf atacak falan filan. velhasıl artık benden bir paylaşım göremezsiniz de olurda biri özgün bir içerik paylaşırsa adamı aşağıya çekmeye çalışmayın, hatalar gayet normal. tıpkı milyon dolarlık projelerde dahi sorun yaşandığı gibi, hatalar meydana geldiği gibi, bunlar yazılımın klasik döngüsür, hatta hatasız sistem yoktur, olamaz.

velhasıl "burada hiçbir başarı cezasız kalmaz" benzeri bir durum var, ben çalar ben oynarım ama gerek yok, son olarak şu bahsettiğim sorunu düzeltip konuya ekleyeceğim. herkese hayatında başarılar, bunun bana yarattığı ve yaratacağı sadece stres ve vakit kaybı. bu kadar kasmayın keyfinize bakın..
 
Son düzenleme:
valla bir günde yoruldum, laf anlatmaktan yoruldum. bu; konuyla alakalı yapacağım son yorumdur gerçekten vakit kaybı.

ilk önce "bir sorun var ama işte düzeltmenin faydası yok" artık son aşamlarda söylenecek şeyler, trade-off düşünülür (yani bana bunun maliyeti ne faydası ne) çözmenin maliyeti çok değilse çözersiniz ama çok büyük bir maliyet varsa eleme yaparsınız, ben bu "sorun var ama çözmesek de nolcak amaan" mantığına katılmıyorum, profesyonellikten uzak bir yaklaşım ama saygı duyarım karar sizin.

burdan sonra söylediklerim genel içindir.

bu konu bir analiz ve teknik bir paylaşım zevk için yapılmış bir şey, bu kadar büyük bir codebasede her şeyi görmem bilmem mümkün değil (aşağıda değineceğim complexity sebebiyle), ama gelde bunu olaydan bi haber adama gelde anlat. bu konuda bunları hiç tartışmamamız gerekiyordu yorumlar "eyvallah, sağ ol, ya not düşmüşsün hani soket değişimini denemedim diye gerçekten orada bir sorun var bir baksak nasıl olur?" tarzında insanca şeyler olmalıydı, biz burda belli bir yaşı aşmış ama halen olgunlaşamamış insanlarla uğraşıyoruz, neyse.

memory fragmantation, cache locality, RAM nasıl çalışır, CPU nasıl davranır, contiguous container observerlar, network programming, UNİX-Linux sistemler, ağ yapısı, STL 2.0, Modern C++ teknikleri, idiomları, STL, C++'da neden diğer diller gibi mimari tasarım kurulmaz, C++ ile mimari tasarım, Modern C++ design bla bla bla ben bunları açayım bir konu veya youtube kanalı veya farklı bir şey işte ne olursa anlatayım da neden anlatayım?

şimdi: ben savunmada çalışıyorum, domainim game programming değil. boş vakit bulursam tamamen hobi amaçlı metin2 ile uğraşıyorum, ne maddi çıkarım var ne manevi ne de bana teknik/bilgi vs açısından bir şey katıyor benim için tamamen vakit öldürme aracı yani. neyse bir şey görüyorum bunu bilgi amaçlı paylaşıyorum amaç katkımız olsun, üniversitede öğrenciyken burdan beni bulan insanlarla harçlık çıkarıyordum. neyse, bir sayfa analiz yapıyoruö bir kaç saat uğraşıp not olarak oraya yazıyorum ki bakın metin2 kompleks bir yazılım, bunu direkt böyle yapmak farklı sebeplere yol açabilir test edin sorun olursa yazın düzeltiriz. sonra yorumlara bir bakıyorum, hiç şaşmaz artık bilgi seviyesi arşa çıktığı için forumda biri bir açığını görür "ZAA ŞU DA VARDI ATLAMIŞSIN ZAA XD" ,"YAV ZATEN BİLİYORDUM BEN YAVV XDXD" mantığıyla yorum yapar 3-5 şarlatanı da alkışlar, sorun ne şarlatan bir şey biliyor ne de yorumu yapan (Tunga'ya laf söylemiyorum yanlış anlaşılmasın, onun da buna benzer bir yorumu var kendisiyle 1*1 sohbetim yok ama saygım vardır) ki bu sadece bana özel bir durum değil, genel böyle, bizim insanımız haset eder, taşlar vs. sever böyle şeyleri, neden? çünkü senin seviyene çıkamıyor etrafa seni onla aynıymış gibi göstermesi gerekiyor. ne başarısı var diye sorsan, neyse.

ya beni geç hadi ben ortamı biliyorum 7 senedir burdayım, başka biri bile olsa bu muameleyle karşılaşsa niye uğraşsın? girdiği strese değmez.

bunu ego olarak algılayabilirsiniz artık zaten ne desem egoist oluyorum pek fark etmiyor, ben bu metin2 camiasındaki akla gelecek her isimden daha çok okumuş çizmişimdir, C++ ile para kazanıyorum, bu dili çok seviyorum, bu dilde üretim yapıyorum, bu dile emek sarf ediyorum. son 3 yıldır okumadığım gün yoktur, binlerce saat bu işin ağa babalarından türkçe/ingilizce kurs almışımdır, yüzlerce saat konferans izlemişimdir metin2 camiasında global dahil benden daha derin C++ bilgisi olan bir kişi daha bulamazsınız, üstünede konuşabiliriz sorun yok. ben bu kadar hasetli bir ortam görmedim, "ecnebi", "gavur" vs. diyip beğenmeyeceğimiz adam dcden yazıp işte paylaşımın için teşekkürler güzel bir şey paylaşmışsın vs yazıyor bizim 5 satır kod okumamış adam yapay zekayla burda seni aşağıya çekmeye çalışıyor. ben neden şimdi bu adamla tartışayım ki? var mı emeğimin bir değeri? yok, üstüne nelerle uğraşıyoruz...

benimle muhabbeti olan herhangi birine soralım, ben egoist biri miyim? hayatımda kimseyi ezmedim, zorbalamadım, zamanı geldi burdaki insanalra taa üniversite zamanlarımda dcden ekran paylaşıp DS anlattım, yeri geldi kod anlattım, yeri geldi ücretsiz hata düzelttim, bu yaşıma kadar hak etmeyen kimseyi ezmedim, içerikleri dahi eğlenceye vurup gülüp geçemiyoruz allah aşkına yapmayın. ha yanlışlarım var mıdır vardır, tıpkı herkesin olduğu gibi (gerçi forumda herkes evliya onun dışında herkes y. ama olsun ben evliya olduğumu iddia etmiyorum, değilim de çok hatalarım vardır)

başka bir forumdan içerik alıp yapay zeka ile emojili falan bir konu oluşturup paylaşsam kodu bir kişi indirip bakmaz, hayatında 5 satır code review yapmamış adam sana klavyeden laf ediyor, ben şimdi bunları gördükten sonra bilgimi neden aktarayım ki? bir kaç sene sonra biri gelip sövsün diye mi? yorumda gelip sövsünler diye mi? paylaştığın özgün içerik olmasına rağmen "ya ben bunu hep biliyordum zaten yaaxd" edasıyla yorum atsınlar diye mi? üstüne birde laf işiteyim diye mi? kraldan çok kralcılık büyük dert. (eleştiri ve hasetle saldırmak farklı şeyler, eleştiriye açığım elbette)

tüm bunların dışında genel bilgi: metin2'nin asıl sorunu kompleks olmasıdır, kompleks sadece karmaşık demek olmuyor gördüğüm 3 semptom:

change amplification
cognitive load
unkown unkowns

tabii complexitynin doğma sebepleri de şunlar: dependencies ve obscurity. codebase tamamen "tactical programming" diye adlandırdığımız yöntemle kodlanmış(halk dilinde hurraa, çalışsın diye yazılmış), teknik be mimari borcun arşa çıktığı, ufak bir değişiklik bile okuyucunun onlarca şey bilmesi gerektiği bir halde, bunu eleştiriyoruz adam bana gelip ymir'i savunuyor, yav kardeşim bunu ben yapıyorsam gel bana da söylen, ama yok illa sana laf atacak falan filan. velhasıl artık benden bir paylaşım göremezsiniz de olurda biri özgün bir içerik paylaşırsa adamı aşağıya çekmeye çalışmayın, hatalar gayet normal. tıpkı milyon dolarlık projelerde dahi sorun yaşandığı gibi, hatalar meydana geldiği gibi, bunlar yazılımın klasik döngüsür, hatta hatasız sistem yoktur, olamaz.

velhasıl "burada hiçbir başarı cezasız kalmaz" benzeri bir durum var, ben çalar ben oynarım ama gerek yok, son olarak şu bahsettiğim sorunu düzeltip konuya ekleyeceğim. herkese hayatında başarılar, bunun bana yarattığı ve yaratacağı sadece stres ve vakit kaybı. bu kadar kasmayın keyfinize bakın..

sen de söylüyorsun ; bu ortamda 7 yıldır bulunduğunu bu camianın içerisinde olduğunu , dolayısıyla artık bu tarz teknik paylaşımların nasıl karşılanacağını hangi noktada kahvehane tartışmasına dönüşeceğini az çok biliyor olman gerkeir

burada insanların davranışını değiştirmeye çalışmak yerine 7 yıllık tecrübeyle artık bu ortamdan ne bekleyebileceğini değiştirmek daha gerçekci.

çünkü 7 yıldır aynı davranış biçimleriyle karşılaşıp hale aynı ortamdan farklı bir reaksiyon bekliyorsan bundan sonra c++ konusunda 7 yıl daha konu açmak sana zaman ve enerji kaybettirir. Bunu yapmaya devam ettiğin takdirde teknik şeyler paylaştığın takdirde her zaman için bu tarz yorumlara hazırlıklı olacağını kabul ederek konuyu açmalısın.

çünkü senin asıl şikayetin insanların seni eleştirmesi değil , eleştiriye açık olduğunu zaten söylüyorsun , asıl şikayetin teknik bir tartışmanın kişisel bir statü yarışına dönüşmesi. bu noktada sen buradan çok fazla beklenti içine giriyorsun çünkü bilgi paylaşmanın da birhedef kitlesi var burada anlattığın şeyleri sesli sohbette konuşabilecek tartışabilecek insan sayısı kaç kişi ? bir elin parmağını geçermi ? hadi 2 el olsun. ( gerçekten büyük ve ciddi bir iddaa da bulunuyorum denemesi ise bedava)

dolayısıyla problem anlattıklarının değersiz olması değil , onları anltabileceğin kitlenin çok dar olması.

burada insanlar ikiliğe bürünür satışlarını ve imajlarını arttırabilmek için bir çok kişi her cümleyi kurabilir, kimse hatasız değildir herkes kusursuzdur, sen kusrunu kabul etsen dahi konuşacağın teknik şeyleri anlamadıkları için daha çok denenmiş ve sorunsuz sistem mantığıyla ilerlendiği için kitle tarafından kimsenin umrunda değilsin , ve kimse seni ciddiye almayacak.

şu satış konularına giriş yaptığın zaman uçan roketler görmekten dracarys sistemlerinin boyanmış hallerini görmekten ve 7 yıla dayanan bir tecrübenle az da olsa sinirlenmemen gerektiğini anlamalısın bence.

bir örnek ar10 denen bir forum var en kaliteli forum olarak nitelendiriliyordu fakat cc kartlarla claude hesapları satılıyor , sence de bunu ar10 yönetimi bilmeyecek kadar cahil mi ? veya görmezden mi geliniyor ?? herkes kendi çıkarında.

o yüzden larry ; farklı ortamların eleştiri ve teknik detayların daha çok veriye dayandırıldığı yerlerde bu tarz konuları aç , buraya ise eğlenmeye gel.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst