Tek kişi CRM geliştirmek mümkün mü?

PHP yavas; buyuk projede ORM kullanilir; postgresql CRM projesi icin bicilmis kaftan vs gibi laflarin hepsi anlamsiz basite indirgeme.
Sadece bu konu özelinde konuşulanlar için değil ama genele hakim olan bu görüşe ben de karşıyım. PHP yavaş değil, nasıl yazıldığına bağlı. ORM kullanımı sadece proje için değil, geliştiriciye kolaylık odaklı bir yaklaşım. Her proje için PostgreSQL kullanmak şart değil, MySQL'de doğru konfigürasyonla her şey rahatlıkla yapılabilir...

Soruya gelecek olursak CRM'i birçok şekilde yazmak mümkün ama ciddi efor gerektiren asıl kısım kullanılabilir bir ürün çıkartmak için planlamayı yapmak. Genel hatları çizip bu plan dahilinde alt başlık olarak dile, framework ve teknolojilere değinmek daha uygun çünkü projenin odağı ürünün kendisi. Önünüzü görmeden projeye girişmek en büyük hata.
 
Sadece bu konu özelinde konuşulanlar için değil ama genele hakim olan bu görüşe ben de karşıyım. PHP yavaş değil, nasıl yazıldığına bağlı. ORM kullanımı sadece proje için değil, geliştiriciye kolaylık odaklı bir yaklaşım. Her proje için PostgreSQL kullanmak şart değil, MySQL'de doğru konfigürasyonla her şey rahatlıkla yapılabilir...

Oyle tabi ki. Bu isler projeye, kapsama, sureye ve ekibe gore degisir.

Dakikada 8 tane framework cikaran JS camiasi durmadan content i client tarafta mi , server tarafta mi yoksa arada bir yerde mi hydrate edecegiz diye tartisadursun; bu islerin kralini bugunku juniorlarin burun kivirdigi teknolojilerle yapan tonla muhendis var.

O yuzden CRM'in 3. harfini gorur gormez "X teknolojisi ile yapilir" diyen bir sey bilmiyordur. Diger cogu soruda oldugu gibi bunda da cevap "Duruma gore degisir" olur.
 
90 'da makine dili ile Oyun yazıyorumdum, 2000 e doğru PHP ile B2B ERP yazıyordum, şimdi JS (Sveltekit) ile yine ERP yazıyorum. Kimse kızmasın PHP çoktan obsolete yani demode, kullanım dışı oldu. Ama eski oldğu için hala en çok kullanılan dil. Burada önemli olan tek dil kullanma rahatlığı, frontend backend hatta mobilde hepsinde JS (aslında TS) kullanıyorum.

Soruya cevap: Şu an ben tek başıma LLM ler ile ERP geliştiriyurum ama önemli olan tecrübe, ne istediğini ne yapacağını ve nasıl yapacağını bilmek. Bu soruyu soran kişi muhtemelen bu konularda hiç tecrübeli değildir, amatörce vakit geçireceksen yap, yoksa geri dön derim.

SSR olup olmamasiyla alakasi yok PHP kullaniminin. Teknolojileri birbirine karistiriyorsun. PHP bir front end dili degil, backend dili. PHP ile CRM yapilir, yapiliyor da zaten. Cumlemi de eksik okuma lutfen;

SSR yapilsin dememisim. PHP bir frontend araci degil demisim. Ek olarak Livewire kullanarak, server side updateleri client-sidea tasiyabiliyorsun. Livewire | Livewire Teknik olarak SSR sinifina girmez ama yukun bir kismini sunucuya offload edebiliyorsun.

Bkz; Laravel Eloquent; Eloquent: Getting Started - Laravel 12.x - The PHP Framework For Web Artisans
Bkz; Laravel Mongodb; MongoDB - Laravel 12.x - The PHP Framework For Web Artisans

PHP front end teknolojisi degil.
Ek olarak bkz; SuiteCRM - Open Source CRM Software Application for Businesses, GitHub - salesagility/SuiteCRM: SuiteCRM - Open source CRM for the world
Eki Görüntüle 2509473

Backend ve frontend arasindaki ayrimi yapmayi ogrenmelisin. Backend icin PHP kullanirken, frontend icin, react veya svelte kullanamazsin gibi bir sey yok. PHP uygulamalari her zaman fullstack olmak zorunda degil.

Yanlis bilgiyi duzeltelim.
Hayır sizin yazdığınız yanlış. Artık backend de JS kullanabiliyoruz, ama frontend de PHP kullanamazsınız yine JS öğrenmek zorundasınız. Dolayısı ile JS kullanan birinin PHP ile backend yazması artık hiç mantıklı değil.
 
Hayır sizin yazdığınız yanlış. Artık backend de JS kullanabiliyoruz, ama frontend de PHP kullanamazsınız yine JS öğrenmek zorundasınız. Dolayısı ile JS kullanan birinin PHP ile backend yazması artık hiç mantıklı değil.
Kanitlar misiniz yanlis oldugunu? :) Yazdigim seyi zaten anlamamissiniz ama frontend'de PHP kullanamazsiniz iddianiza yanit vereyim; HTML, CSS, PHP ile yapabiliyorsunuz Livewire uzerinden frontend gelistirmeyi. JS yazmak zorunda degilsiniz. Livewire'in kendi JS paketi zaten hydration, round trip vb seyleri yapiyor.

Yani belli olmaz, bunu da yanlis anlarsiniz diye ustune basa basa yazayim da; siz tek satir JS yazmadan, hic JS olmadan demiyorum. Kendiniz tek satir JavaScript yazmadan, sadece Livewire ile gelen JS'i embedleyerek, PHP uzerinden asiri ozel olmayan UI elementleri yazabilirsiniz. Hatta kendi gelistirdikleri bunun icin bi component librarysi bile var; Flux · Livewire UI kit
1772558737977.png


Ki orijinal mesajimda da zaten PHP'nin bir frontend teknolojisi olmadigini soylemisim. Ikincisi JS kullanan birinin backend'de PHP kullanmak icin sebepleri olabilir.

Bunlardan biri tek basina Laravel. Laravel devasa bi framework ve batteries plugged geliyor. Yani asiri iddiali ama fazlasiyla yanlis bi metin olmus.
Kimse kızmasın PHP çoktan obsolete yani demode, kullanım dışı oldu. Ama eski oldğu için hala en çok kullanılan dil.
Obsolete degil. Duzenli guncelleme aliyor. Modern bi dil suan. Yetmiyormus gibi Swoole/Open Swoole gibi production ready cok guclu runtimelari var. Yazilimda hic bi sey silver bullet degil. Her dilin bi trade-off'u var. JS'e bu kadar anlam yuklemenin bi anlami yok.
 
Kanitlar misiniz yanlis oldugunu? :) Yazdigim seyi zaten anlamamissiniz ama frontend'de PHP kullanamazsiniz iddianiza yanit vereyim; HTML, CSS, PHP ile yapabiliyorsunuz Livewire uzerinden frontend gelistirmeyi. JS yazmak zorunda degilsiniz. Livewire'in kendi JS paketi zaten hydration, round trip vb seyleri yapiyor.

Yani belli olmaz, bunu da yanlis anlarsiniz diye ustune basa basa yazayim da; siz tek satir JS yazmadan, hic JS olmadan demiyorum. Kendiniz tek satir JavaScript yazmadan, sadece Livewire ile gelen JS'i embedleyerek, PHP uzerinden asiri ozel olmayan UI elementleri yazabilirsiniz. Hatta kendi gelistirdikleri bunun icin bi component librarysi bile var; Flux · Livewire UI kit
Eki Görüntüle 2669969


Ki orijinal mesajimda da zaten PHP'nin bir frontend teknolojisi olmadigini soylemisim. Ikincisi JS kullanan birinin backend'de PHP kullanmak icin sebepleri olabilir.

Bunlardan biri tek basina Laravel. Laravel devasa bi framework ve batteries plugged geliyor. Yani asiri iddiali ama fazlasiyla yanlis bi metin olmus.

Obsolete degil. Duzenli guncelleme aliyor. Modern bi dil suan. Yetmiyormus gibi Swoole/Open Swoole gibi production ready cok guclu runtimelari var. Yazilimda hic bi sey silver bullet degil. Her dilin bi trade-off'u var. JS'e bu kadar anlam yuklemenin bi anlami yok.
PHP ile frontend yazamazsınız tabi ki, JS üretebilirsiniz ancak. Yani iyi bir uygulama için de JS bilmeniz gerekir. E şimdi ben browserda JS biliyorsam neden sunucuda PHP kullanayım ki saçma yani onu anlatmak istedim. PHP artık "obsolete" yani demode, kullanım dışıdır. Yani mesela yeni başlayan birinin artık PHP öğrenmesi gereksizdir.
 
PHP ile frontend yazamazsınız tabi ki, JS üretebilirsiniz ancak.
JS uretmiyorsunuz (code generation anliyorum uretmekten kasit olarak). Zaten var olan JS - PHP interop librarysini kullanarak frontend yaziyorsunuz. Livewire tam olarak bi interop. Sunucuyla client arasindaki iletisimi saglayan ve bunlari dispatchleyen, hydration yapan bi arkadas.

Ki JSX'i de browser dogrudan desteklemiyor zaten. Yani JSX yazdiginizda da browser direkt calistirmiyor ki. Bu mantikla gidersek JSX'le de frontend yazamazsiniz, JS uretirsiniz (ki bu gercekten code generation). Vite yada Vue ne kullaniyorsaniz, alacak, transpilation ile <X>.createElement cagrilarina donusturup DOM build edecek.

E şimdi ben browserda JS biliyorsam neden sunucuda PHP kullanayım ki saçma yani onu anlatmak istedim.
Tercih. Aliskanliklar. Yatkinliklar. Framework secenekleri. Mesela ben JS biliyorum. Ama imkanim oldugu muddetce yazmak istemiyorum. PHP'den dil yapisi nedeniyle nefret ediyorum. Ama JS'ten PHP'den ettigimden, 20 kat daha fazla nefret ediyorum. Sirkette aktif olarak calistigim projelerden birinde JS yaziyor olmama ragmen soyluyorum bunu.
1772617219557.png


PHP'den nefret etmeme ragmen Laravel'in varligi, PHP ve JS arasinda kaldigimda, beni net bi sekilde PHP'ye itiyor. JS berbat otesi bi dil olmasi yetmiyormus gibi, Laravel kalitesinde oturmus aman aman bi framework'u yok. Belki encore simdilerde.

PHP artık "obsolete" yani demode, kullanım dışıdır.
Oyle mi olmus? Tuh son 2 yildir bizim sirket bosuna PHP yaziyormus. Neyse CTO'yla konusalim hemen JS gecelim, hemen, suan (!). Yani son 10 yilda hic bi gelismeyi okumamissiniz anlasilan. Arada bi farkli teknolojileri de arastirin.

1772617021442.png
 
JS uretmiyorsunuz (code generation anliyorum uretmekten kasit olarak). Zaten var olan JS - PHP interop librarysini kullanarak frontend yaziyorsunuz. Livewire tam olarak bi interop. Sunucuyla client arasindaki iletisimi saglayan ve bunlari dispatchleyen, hydration yapan bi arkadas.

Ki JSX'i de browser dogrudan desteklemiyor zaten. Yani JSX yazdiginizda da browser direkt calistirmiyor ki. Bu mantikla gidersek JSX'le de frontend yazamazsiniz, JS uretirsiniz (ki bu gercekten code generation). Vite yada Vue ne kullaniyorsaniz, alacak, transpilation ile <X>.createElement cagrilarina donusturup DOM build edecek.


Tercih. Aliskanliklar. Yatkinliklar. Framework secenekleri. Mesela ben JS biliyorum. Ama imkanim oldugu muddetce yazmak istemiyorum. PHP'den dil yapisi nedeniyle nefret ediyorum. Ama JS'ten PHP'den ettigimden, 20 kat daha fazla nefret ediyorum. Sirkette aktif olarak calistigim projelerden birinde JS yaziyor olmama ragmen soyluyorum bunu.
Eki Görüntüle 2670355

PHP'den nefret etmeme ragmen Laravel'in varligi, PHP ve JS arasinda kaldigimda, beni net bi sekilde PHP'ye itiyor. JS berbat otesi bi dil olmasi yetmiyormus gibi, Laravel kalitesinde oturmus aman aman bi framework'u yok. Belki encore simdilerde.


Oyle mi olmus? Tuh son 2 yildir bizim sirket bosuna PHP yaziyormus. Neyse CTO'yla konusalim hemen JS gecelim, hemen, suan (!). Yani son 10 yilda hic bi gelismeyi okumamissiniz anlasilan. Arada bi farkli teknolojileri de arastirin.

Eki Görüntüle 2670352
Kesinlikle 'obsolete' bu tartışılmaz, zaten anketler de net gösteriyor ama hala en çok kullanılan dil, sizin şirketin kullanması da temeli php olduğu içindir. Bir anda hiçbir ekip hadi bu dile geçiyoruz diye değişim yapamaz. Benim anlatmak istediğim mesela siz bir startup sınız ve yeni bir projeye başlayacaksınız, burada PHP kullanmak - hele JS biliyorsanız çok mantıksız.

İkinci konu livewire ı bilmiyorum ama ne olursa olsun JS kod üretiyor ve sizi kısıtlar. Kendiniz yazdığınızda tuvale resim yapar gibi her şeyi tam istediğiniz gibi yaparsınız. VITE VUE örneği bence yanlış olmuş evet orada bir transpile işlemi var ama koda hakimiyet kaybolmuyor sadece kod biraz şekil değiştiriyor.

Bu arada ben 52 yaşındayım belli yaşla alakalı ama bana çift dilde yazmak çok zor geldi. PHP içine JS, JS içine PHP yazdığım oldu. Belki bundan dolayı da karşı geliyorum :) Bu arada javascript çok güzel bir dil ama mutlaka TS ile kullanmak lazım, yoksa hataya çok müsait.
 
İkinci konu livewire ı bilmiyorum ama ne olursa olsun JS kod üretiyor ve sizi kısıtlar.
Uretmiyor. Yani bilmediginiz teknoloji hakkinda bu kadar kesin yorumlarda bulunmasaniz mi? JS hic yok demiyorum. Var olan bi scriptleri var, bunu embedleyerek kullaniyorsunuz. Daha once de belirtmistim bunu;
Kendiniz tek satir JavaScript yazmadan, sadece Livewire ile gelen JS'i embedleyerek, PHP uzerinden asiri ozel olmayan UI elementleri yazabilirsiniz.

Bu arada ben 52 yaşındayım belli yaşla alakalı ama bana çift dilde yazmak çok zor geldi.
Aktif calistigim projenin diger yarisi Go'da. Ilk yarisi mecburen JS'te kaldi. (Legacy code base, ustune hala ekleme yapiyoruz.)
1772619877276.png


O kadar zor degil, en azindan benim icin. Yada fazlasiyla alisik oldugumdandir belki de?
Benim anlatmak istediğim mesela siz bir startupsınız ve yeni bir projeye başlayacaksınız, burada PHP kullanmak - hele JS biliyorsanız çok mantıksız.
Startupiz zaten. Ama ekip 40 kisi falan asagi yukari. 25'i falan frontend, o arkadaslar JS ile frontend yaziyor. Backend'deki arkadaslar Laravel. Her baslanilan yeni proje icin de gecerli. Ekiptekilerin hepsinin de JS gecmisi var backend tarafinda. Ama dedigim gibi;
Tercih. Aliskanliklar. Yatkinliklar. Framework secenekleri.
Sadece Laravel'in varligi bile hic bi projede JS backend secmememiz icin yeterli bi secenek. Daha iyi performans aradigimizda Go'ya geciyoruz.
1772620142568.png
 
Mutlaka JS üretiyor çünkü browser'ın tek bildiği dil JS.
Ekibiniz hata yapıyor, backend olarak da JS kullansa bir çok avantajı olacaktı.
Hatta artık Sveltekit ile frontend | backend kavramı bile yok oldu. Svelte remote functions ı inceleyin derim. Hiç kızmayın ve kusura bakmayın, PHP yi savunan biri geride kalmıştır. Üstelik size bunu 52 yaşında biri söylüyor, hem de makine dili -> PHP -> JS kullanan biri, bana kulak verin. Ben öyle sağdan soldan duydukları ile konuşan biri değilim.
 
Hatta artık Sveltekit ile frontend | backend kavramı bile yok oldu.
Yani fullstack SSR kesfetmissiniz. Ne diyebilirim. Hayirli olsun. Bunu yillardir yapiyorlar zaten PHP ile de. Hatta Java, Kotlin, C# vb ile de yapiyorlar.
Mutlaka JS üretiyor çünkü browser'ın tek bildiği dil JS.
Burda anlasamadigimiz konu JS uretme konusu. Uretmek ne demek? Code generation mi? Intercom mu? Eger intercom ise, uretmek kelimesini yanlis kullaniyorsunuz. Bunu ucuncu kez aciklamak istemiyorum. O yuzden atlayacagim.

PHP yi savunan biri geride kalmıştır. Üstelik size bunu 52 yaşında biri söylüyor, hem de makine dili -> PHP -> JS kullanan biri, bana kulak verin. Ben öyle sağdan soldan duydukları ile konuşan biri değilim.
Yani kusura bakmayin ama goruntu oyle durmuyor. JS silver bullet degil. Her hafta bi critical RCE cikan JS library ve frameworklerini kullanmayi silver bulletmis gibi sunan birini ciddiye alasim gelmiyor. Dil secimi trade offlardan olusuyor. Bizim sirketin konumunda PHP -5 ile basliyorsa, skor almaya, JS -15 ile basliyor. Basit websocket isleri haric nadiren JS ile backend basliyoruz. Suan Go +5 ile basliyor mesela.
 

Bu konuyu görüntüleyen kullanıcılar

Technopat Haberler

Yeni konular

Geri
Yukarı