AHMET ÇETİN#FikrimVar

Kod ve sistemler · Gelişiyor · Yaşayan sistem

Bir bordro programı neden üç kez yeniden yazılır?

Eşimin şirketindeki gerçek bir ihtiyaçla başladı. İlk Python sürümü, PHP masaüstü uygulaması, web sistemi ve daha sade DeltaBordro aynı soruya farklı zamanlarda verilmiş cevaplara dönüştü.

Hızlı bakışBaşlıklar ve görseller Hikâyeyi okuKısa bölümler Derine inAçılır teknik notlar
WebBordro / DeltaBordro
Bölüm 01 / 04Başlangıç

BAŞLANGIÇ

Bir bordro programı neden üç kez yeniden yazılır?

Eşimin şirketindeki gerçek bir ihtiyaçla başladı. İlk Python sürümü, PHP masaüstü uygulaması, web sistemi ve daha sade DeltaBordro aynı soruya farklı zamanlarda verilmiş cevaplara dönüştü.

Bu hikâye, Atölye kayıtlarının içinden seçilen dönüm noktalarından kuruldu.
Bölüm 02 / 04Dönüm noktası

DONUM NOKTALARI

Atolyede yonu degistiren kararlar.

Bu hikâyenin eski bölümleri yeni akışta okunabilir adımlar olarak toparlandı.

01GERÇEK İHTİYAÇ

Kodlamayı yeni öğrenirken, hata kabul etmeyen gerçek bir işin karşısına geçtim.

WebBordro’nun hikâyesi bir ürün fikriyle değil, eşimin şirketindeki ihtiyaçla başladı. O sırada AÖF Bilgisayar bölümünün ikinci sınıfına yeni başlamıştım; web tasarımı ve kodlama dersleri yeni bitmişti. Bu işi, öğrendiklerimi gerçek kullanımda sınayabileceğim bir meydan okuma olarak gördüm: gerçekten kullanılan bir programı kendim yapabilir miydim? İlk hedef büyük bir platform kurmak değildi. Şirketin işini gerçekten kolaylaştıran bir araç yapabilmekti.

02DÖRT GÖVDE

Aynı ihtiyaç, her sürümde başka bir ders verdi.

İlk Python masaüstü: İzin, işten çıkış, tazminat ve başka personel işlemlerini taşıyan ilk büyük sürüm. Çalıştı, fakat ağırlaştı. PHP masaüstü: İlk sürümden memnun kalmayınca PHP ile yeniden kurdum. Program artık gerçek iş akışının içinde yaşıyordu. WebBordro: İlk web sürümü yalnızca hesap yapıyordu. Firma, kullanıcı, rapor ve yönetim katmanları ihtiyaç geldikçe eklendi. DeltaBordro: Eşim ve şirket daha sade bir araç isteyince sistemi küçültmek yerine yeniden yazdım. Bugün güzel ve kararlı çalışıyor.

03İLK BÜYÜK DERS

Çalışması yetmedi.

Bir program sonuç üretebilir ama doğru ürün olmayabilir. İlk sürüm çok şey yapıyordu; gerçek kullanıcı ise daha az karmaşa istedi.

04KODDAN DAHA ZOR OLANLAR

Hikâyeyi özellikler değil, değişen kararlar taşıdı.

Çalışan program neden yeniden yazılır?: Çünkü çalışmak, bakımının kolay olduğu veya kullanıcıya doğru biçimde hizmet ettiği anlamına gelmez. Yeniden yazmak burada başarısızlık değil, öğrendiklerimi daha temiz bir yapıya taşıma kararıydı. Web sürümü neden doğdu?: Masaüstünde çalışan hesabın kurulu olduğu bilgisayara bağlı kalmaması fikri web sürümünü doğurdu. İlk hâli küçüktü; gerçek ihtiyaç geldikçe büyüdü. Kullanıcı neden daha az özellik istedi?: Geliştirici için kapsam güç gibi görünebilir. Günlük kullanıcı için hız, açıklık ve gereksiz adımların olmaması daha değerlidir. DeltaBordro bu geri bildirimin sonucudur.

05YAPAY ZEKÂ VE BEN

Yapay zekâ kodu hızlandırdı; ihtiyacı belirlemedi.

Bu hikâyedeki en belirleyici kararlardan biri yeni özellik eklemek değil, daha sade bir sürüm yapmaktı.

06BUGÜN NEREDE?

Tek bir “en iyi sürüm” yok; her biri başka bir ihtiyacın kaydı.

İlk Python projesi: Çok modüllü ilk yaklaşım. Sonraki sürümlerin neyi değiştirmesi gerektiğini gösterdi. PHP masaüstü: Eşimin şirketine kurulan ve masaüstü kullanımını sınayan sürüm. WebBordro: Basit hesap sayfasından daha kapsamlı bir web sistemine dönüşen yaşayan proje. DeltaBordro: Daha sade ihtiyaca cevap veren hafif, nesne yönelimli Python sürümü.

Bölüm 03 / 04Kanıt

GÖRÜNENLER

İşin görünen yüzü.

Atölye kayıtlarına eklenen görseller ve medya parçaları burada hikâyeyi destekler.

Bölüm 04 / 04Sonuç

BUGUN

Bugun nerede duruyor?

Bu dosya bugün "Gelişiyor" durumunda duruyor. Hikâye, seçilmiş kayıtların okunabilir hâli olarak korunuyor.

Bugünkü Durum

Hikâye burada bitiyor ama proje yaşıyor.

Son Güncelleme:

Proje Notu

Aynı probleme farklı zamanlarda verilen cevaplar, gelişimin ayak izleridir.