Bilmek istediğin her şeye ulaş

Aslan Akali, 

Web Developer

Elifweb.com şirketi yöneticisi

Nisan 2014

Aslan Akali bir yanıt verdi.

Yazılımcıysanız internetten yeni bir programlama dili ya da teknoloji öğrenmek için (mobil uygulama, vs.) hangi sitelerden yararlandınız? Faydalı oldu mu? Böyle bir sitede olmasını istediğiniz bir özellik var mı?

Örneğin Android öğrenmeye başlarken bir kitaptan faydalandım. Temel konuları 1 hafta içinde çözdükten sonra ufak tefek uygulamalar yapmaya çalıştım. Bunu yaparken Google'da İngilizce kelimelerle aramalar yaptım. Bizimkiler matbaa çağında tıkanmış halen. Sonuç olarak uygulamayı adım adım tamamladım ve yeni uygulamalara yöneldim.

Şu sıralar da Blender'a merak sardım. Bunu öğrenmeye başlarkense youtube'da temel konuları anlatan bir video serisi buldum. Burdan başlayıp video'da izlediklerimi uyguladım.

Yani Türkçe başla ve belli bir raddeye geldikten sonra İngilizce devam et. İngilizcem kötü gibi bir durum varsa kafaya takmamak lazım. Ufak tefek projeler geliştirirken araştırmalarında okumalık temel ingilizce ve translate yeterli oluyor.
Nisan 2014

Aslan Akali bu yanıtı beğendi:

Yazılımcıysanız internetten yeni bir programlama dili ya da teknoloji öğrenmek için (mobil uygulama, vs.) hangi sitelerden yararlandınız? Faydalı oldu mu? Böyle bir sitede olmasını istediğiniz bir özellik var mı?

Temel konuları aslında birçok siteden öğrenebiliyorsunuz. Asıl işin detaylarına inmeniz gerektiğinde ise işe yarar bilgiler hep yabancı sitelerde. Teknolojinin detaylarını genelde sorunlarla karşılaşıp çözerken öğrendim. Teknolojilerde konu odaklı anlatım yapan değil, soru-cevap tarzında yayın yapan ve projelerin paylaşıldığı platformlar daha faydalı oldu açıkçası.
Stackoverflow, codeproject, codeplex gibi...
Nisan 2014

Aslan Akali bir yanıta alt yorum yaptı

Farklı, yeni bir fikirse ve tutacağından eminseniz = Bu fikrin patenti,
Standart, geçmişte benzeri yapılmış bir web sitesi fikrinin tasarım ve kodlaması yaptırılacaksa;
Sitenin adının patent kurumunda tescil'i,
İşe başlanırken gizlilik sözleşmesi,
İşe başlandığında ön ödeme verirken hizmet sözleşmesi,
Tasarım yapılınca isterseniz tasarımı patentletebilir, yazılım tamamlanınca yazılımı patentletebilirsiniz.

Bunların hepsini talep eden müşterilerimle yapıyorum. Ama belirttiğim gibi bunlar yazılımcılar için değil sansar olarak nitelediğim kişilerin projeyi ele geçirmesini tasarımı, kaynak kodları korumaya yönelik. Yazılımcılar değil ama yazılımcıyım diye geçinenlerde bu sansar kategorisine girer bazen bu yüzden evet bu açıdan da dikkatli olmaya gerek olan bir sektör.
Bugüne değin en az 300-400 site sıfırdan kodlamışımdır. Bir yazılımcıda fikir boldur. Elimin altında tasarımı hazır onlarca kendime ait proje varken etik konusunu geçtim gidip bir müşterimin projesini çalmaya uğraşmam. Hadi çalacak kadar adi bir insan oldum diyelim buna o projeyi yaptıran kadar çok önem vermem vakit ayırmam. Bu nedenle bu tarz endişeler anlamsız. Fakat çok farklı çok yeni bir projeniz varsa patentlersiniz fikri. Buna rağmen endişeniz yazılımcı değil pazarlamacılar ve sektör rakipleridir.
Nisan 2014

Aslan Akali bu yanıtı beğendi:

Yazılımcı olmanın yaşı var mıdır?

17 yaşında Yapay Sinir Ağları ile kanser teşhisi programını Java ile yazan ve teşhislerde %94 ile başarı elde eden genç bir kız gördükten sonra bu konuda söyleyecek pek bir sözün olmadığı düşüncesindeyim :)

Haberin kaynağı: ntvmsnbc.com/id/25369440/

Nisan 2014

Aslan Akali bir yanıt verdi.

Profesyonel bir siteyi fikrini kaptırmadan güvenilir bir şekilde nasıl yaptırabilirsin?

Bugüne değin en az 300-400 site sıfırdan kodlamışımdır. Bir yazılımcıda fikir boldur. Elimin altında tasarımı hazır onlarca kendime ait proje varken etik konusunu geçtim gidip bir müşterimin projesini çalmaya uğraşmam. Hadi çalacak kadar adi bir insan oldum diyelim buna o projeyi yaptıran kadar çok önem vermem vakit ayırmam. Bu nedenle bu tarz endişeler anlamsız. Fakat çok farklı çok yeni bir projeniz varsa patentlersiniz fikri. Buna rağmen endişeniz yazılımcı değil pazarlamacılar ve sektör rakipleridir.
Nisan 2014

Aslan Akali bu yanıtı beğendi:

Profesyonel bir siteyi fikrini kaptırmadan güvenilir bir şekilde nasıl yaptırabilirsin?

Çok yaratıcı bir proje değilse bunun endişesine düşmemek gerekir. Çünkü projeyi oluşturan sizsiniz. Programcının yazdığının kaç katı şey düşünüyorsunuz, ileriye yönelik planlarınız var. Bunu kod yazacak adam aynı şekilde kavrayabilecek mi? Sizinle aynı gözden bakacak mı? Projeyi büyütmek ve geliştirmek için bütçesi var mı?

Ben bir emlak yazılımı düşünüyorum deyip proje saklanmaz. Belki çok inovatif, çok farklı bir proje. Ama gitmek istediğiniz yeri siz biliyorsunuz. Yani hazinenin haritası sizsiniz. Projeyi çalıp yayınlasa bile takip ederek yanlış ya da doğruları görebilirsiniz. Yani bir yandan da size katma değer verir.

Twitter projesi ile programcıya gittiğinizde acaba ne düşünürdü? "140 karakter ne alaka ya? İnsanlar ne yazacak, neden yazacak 140 karakterlik metinleri? " gibi düşünceler olabilir. Ama siz Twitter'in bu günkü halini hayal etmişseniz, programcı buradan bir fayda sağlayamaz. Alıp sistemi çöpçatan tarzı sisteme bile çevirebilir.

Ama kısa, öz ve viral etki yapacağınızı düşündüğünüz projeleri tanıdığınız, bildiğiniz insanlara yaptırın. Çünkü bu tür projeler ben para kazanacağım, çok ilgi göreceğim diye bağırır.
Nisan 2014

Aslan Akali bu yanıtı beğendi:

Profesyonel bir siteyi fikrini kaptırmadan güvenilir bir şekilde nasıl yaptırabilirsin?

Noterden gizlilik sözleşmesi yap. Eğer bir ihlal olursa sadece çalan kişi ile senin anlattığın kişi arasındaki bağlantıyı ispat etmen yeterli olur. 
Nisan 2014

Aslan Akali bu yanıtı beğendi:

Profesyonel bir siteyi fikrini kaptırmadan güvenilir bir şekilde nasıl yaptırabilirsin?

Yazılımcı açısından konuşuyorum. Soru sahibi yazılımcı mıdır yoksa proje sahibi midir bilmiyorum ama bu yazdıklarım tüm proje sahiplerine gelsin.
  1. Benim iş ahlakım zaten o projeyi çalmama müsaade etmez.
  2. Profesyonel bir site istiyorsanız profesyonel olmanız gerekir. Randevuya geç kalan, epostaya geç cevap veren, projeyi anlatmaya üşenen proje sahibi profesyonel değildir.
  3. Planlı olun. Sitenin planlarını yazılımcıya gitmeden önce hazırlayın. Sayfalar tasarlanmış olsun, istediğiniz özellikler yazılı olarak belirtirmiş olsun. Nereye tıklayınca ne olacağı önceden belli olsun.
  4. Hiçbir yazılım projesi yaptırınca bitmez. Projeyi yayına alınca da yazılımcının işi bitmez. İnşaat yapmıyoruz sonuçta. "Bir an önce" yayına alınması, projenin bittiği anlamına gelmiyor.
  5. Bizi yönlendirme tenezzülünü göstermeniz lazım. Üşengeç olmayın. "Şuna benzesin" diye değil "şöyle şöyle olsun" diyebilecek kadar saygınız olsun kendi isteklerinize.
  6. Ne istediğinizi baştan söyleyebilecek kadar planlı olmalısınız. Yoksa yazılımcıyı kızdırma ihtimaliniz yüksektir. Son kontrollerde köklü bir değişiklik istemeniz saygısızlıktır. Sadece yazılımcıya değil, projeye de saygısızlıktır.
  7. Projeyi yazılımcıya anlatmak için bir cümleden çok daha fazlası gerekir. Yazılımcı "benden ne istiyorsunuz" diye sorduğunda saatlerce konuşabilmelisiniz, ama bu süreyi projeyi överek değil yazılımcıdan istediklerinizi anlatarak geçirebilmelisiniz.
  8. İsteklerini "alışveriş sitesi istiyorum" (burada "alışveriş" yerine istediğinizi koyabilirsiniz) cümlesiyle aktarabildiğini sanan bir insan profesyonel değildir.
  9. İşi ucuza getirmeye çalışmayın. İsteklerinize saygı duymamızı istiyorsanız emeğimize saygı duymanız gerekir. Ucuz etin yahsini sert olur. "Paran kadar konuş" cümlesi bu durumu anlatmak için birebirdir. Para veremiyorsan sonuç bekleyemezsin. Ben bu işi ekmek parası için yapıyorum, senin projen "ultra mega süper ötesi" olduğu için değil.

Nisan 2014

Aslan Akali bir yanıt verdi.

Yazılıma yeni başlamaya karar verdim, nereden ve nasıl başlamalıyım? Yaklaşık 100 kişilik bir arkadaş grubumuz var ve kendi aramızda haberleşmek için Twitter benzeri bir site kurmak istiyoruz, bunun için neler bilmek gerekir?

Fantastik cevaplar gelmiş. Projen masaüstü bir yazılım değil web yazılımı. C-C++ vb yerlerden başlaman vakit kaybı olur.

Eğer eğitim tavsiyesi isterse phpprogramlama.com'u bir incele. Ben tek başıma hallederim dersen HTML, CSS ile görmek istediğin görüntüyü çıkarmaya çalış. Photoshop ve ya Gimp üzerinde de tasarlayabilirsin. Youtube'da Photoshop website design, Gimp website design gibi aramalar yapabilirsin. Bu tasarım HTML ve CSS için sana bir ön görüntü olacak. Bu ön görüntüye bakarak HTML, CSS iskeleti oluşturacak bazen arka plan vb. görselleri buradan kopyalayacaksın.

Tasarımını hazırladıktan sonra beğenmeyeceksin. Fazla kafayı takmayıp niteliğe bak. Yoksa o proje çıkmaz. Benim başıma geldi nitekim... Zamanla değiştirir geliştirirsin.

Bu esnada kullanıcılara yönelik küçük animatif aksiyonlar olmasını ve ya kullanım kolaylığı sağlayacak şeyler yapmak için Javascript - JQuery kodları arasında bulacaksın kendini.

Aylar geçtikten sonra PHP/MySQL ile spagetti kodlama yapmaya çalışacaksın. Çalışmalısın. Paldır küldür OOP içine dalmamalısın. Yapısal programlama temeliyle başlamak daha kolay ve şevk verici olacaktır. Ekrana bazı içerikler yazdıracak bunları güncelleyebileceğin bir alan oluşturacaksın vs. Sonrasında kullanıcı kayıt ve giriş alanlarını kodlamaya çalışacak sessionlarla, cookielerle tanışacaksın. Unutma pratik olarak yapmadan sırf okuyarak vaktini harcamamalısın. Yapmaya çalışmalı ve o an yapmak istediğin şeyi yapabilmek için okumalısın. Arada fazladan bir şeyler okuman ve kendini geliştirmen kaçınılmaz olacaktır.

Site hazır olduğunda yani belki 8 ay belki 1 yıl belki 2 yıl sonra kodlarının çok karışık olduğunu görecek ve sistemli hale getirmek isteyeceksin. Bu etapta kütüphanelerini "class" olarak değiştirip gruplayıp sınıf yapısını öğrenmeye başlayacaksın. Bu sana yetersiz geldiğinde Frameworkleri incelemeye başlayacaksın. Slim, Laravel ve Codeigniterin genel yapılarını anlamaya çalışabilirsin. Tabi o zaman daha iyi bir Framework olabilir. Bunlardan birinde karar kılar ve sistemini baştan kodlarsın.

Teorik olarak amacına uygun olmayan şeylerle başlarsan bunlar senin şevkini kırar. Web yazılım ile masa üstü yazılımcılık bambaşka. Temel mantıkları ise elbette benzer. Fakat diğer şeylerle zaman harcama çünkü bu isteğini yapman çok zaman alabilir tek başına. Eğitim bile alsan en az 4 ay nefessiz çalışman gerek.

İlk inploidim bu olsa gerek umarım faydalı olur. :)
Mayıs 2013

Aslan AkaliAjax konu başlığını takip etmeye başladı.

Ajax

Ajax, aşağıdaki anlamlara gelebilir: Ajax, bilgisayarda programlama tekniği Ajax, Hollanda'da bir futbol takımı Ajax, temizlik malzemesi...

Mayıs 2013

Aslan AkaliHtml5 konu başlığını takip etmeye başladı.

Html5

Formatting of continuation data will be changing soon. To continue using the current formatting, use the 'rawcontinue' parameter. To begin u...

Mayıs 2013

Aslan AkaliHtml konu başlığını takip etmeye başladı.

Html

yönlendirme HTML

Mayıs 2013

Aslan AkaliProgramlama konu başlığını takip etmeye başladı.

Programlama

Programlama ya da diğer adıyla yazılım, bilgisayarın donanıma nasıl davranacağını anlatan, bilgisayara yön veren komutlar, kelimeler, aritme...

Mayıs 2013

Aslan AkaliBilgisayar Mühendisliği konu başlığını takip etmeye başladı.

Bilgisayar Mühendisliği

Bilgisayar mühendisliği, temel olarak yazılım, programlama ve algoritma ile ilgilenir. Bilgisayar ağları, veritabanı yöneticiliği ve gömülü...

Mayıs 2013

Aslan AkaliBilgisayar Programları konu başlığını takip etmeye başladı.

Bilgisayar Programları

Bilgisayar programları üzerine sorulmuş sorular ve bazı programların detaylı incelemeleri..

Mayıs 2013

Aslan AkaliBilgisayar konu başlığını takip etmeye başladı.

Bilgisayar

Altbaşlıklara ayrılmış şekilde genel bilgisayar mevzuları.

Mayıs 2013

Aslan AkaliBilgisayar Destekli Tasarım konu başlığını takip etmeye başladı.

Mayıs 2013

Aslan AkaliB.T.K. ( Bilgi Teknolojileri Ve İletişim Kurulu ) konu başlığını takip etmeye başladı.

B.T.K. ( Bilgi Teknolojileri Ve İletişim Kurulu )

Formatting of continuation data will be changing soon. To continue using the current formatting, use the 'rawcontinue' parameter. To begin u...

Daha Fazla