Mobil uygulamaları üç sebepten ötürü çok seviyorum:

  • Herhangi bir app fikrinizi prototip şeklinde dahi olsa minicik bir maliyetle hızlıca pazara sunabiliyorsunuz,
  • Dijital/mobil deneyimler (eğer kitlesini bulursa) pazarda çok hızlı şekilde yolunu bulabiliyor,
  • Bu alanda başarılı olmuş örnekler ve hikayeler insanın ümitlerini yeşertiyor.

Bundan birkaç ay önce eskilerden çok sevdiğim bir arkadaşımla buluştum. Konu hobilerden açılınca bana boş zamanlarında geliştirdiği mobil uygulamalarından bahsetti. Gösterdiği uygulamalar Appstore’da yüzlercesini bulabileceğiniz türden sıradan şeylerdi ancak, belli ki kitlesini bulmuş ve birilerinin ihtiyacına cevap olabilmişti. Nasıl uygulamalardı bunlar diye merak ederseniz hemen söyleyeyim; Youtube video downloader, Dropbox’ta rehber-sms yedekleme ve Youtube katalog uygulamaları türünden basit şeyler. Çevremde pek çok arkadaşım benzer mikro girişimlere zaman ayırıyor. Çoğu başladığı işi bitiremiyor ama, bir kısmı da milyon dolar kazanamasa da aylık ev kirasını ödeyebilecek kadar gelir elde edebiliyor. Hemen söyleyeyim; gelir meselesi işin kreması, asıl olan çabalamak ve uğraşmak. Çünkü kafayı birşeye takınca güzelleşiveriyor insan; hayata bakışı değişiyor, fırsatları görebiliyor.

E o zaman bir uygulama da ben patlatayım dedim

İşim gereği bazı pazarlama kampanyalarının mobil projelerini yönetme şansım oldu. Yani proje yönetiminden biraz anladığımı söyleyebilirim. Bunun haricinde kişisel birkaç app işinden Maya hanımın (kardeşimin tatlı köpeğinin) mama parasını çıkarmışlığım da vardır. “Benim neyim eksik. Ben de bir çizgi film uygulaması patlatayım,” dedim. Yazılım kökenli olmamama rağmen, yıllar içinde orta düzeyde bir kod okur yazarlığı becerisi edinmişliğimin haklı gururunu hep yaşadım. Yalnız sınırlı vaktim olduğundan bu sefer işi uzmanına bırakıp hızlıca sonuca gitmek istedim. Bu mini projede edindiğim tecrübeleri, uygulamanın kendisi ve kaynak kodlarıyla birlikte kısaca sizlerle paylaşacağım. Hadi bakalım, başlıyoruz.

Annemin kamerasından ben ve maya hanım.

Hakan Akben (@hakanakben) tarafından paylaşılan bir fotoğraf ()

Çerçeveyi çizebilmek işin paretosu

80’e 20 kuralı yani Pareto ilkesini eminim hepiniz duymuşsunuzdur. Özetlemek gerekirse; herhangi bir işin yüzde 80’inini o işi yapanların sadece yüzde 20’si gerçekleştirir. Yani her işin yüzde 80’lik çıktısı yüzde 20’lik bir girdiden gelir. Ama hangi yüzde 20’sidir, bu konu genellikle biraz muallakta kalır. Benim projemin paretosu yapmak istediğim App’in çerçevesini çizebilmek ve uygun iş gücünü bulabilmek idi. Olabildiğince yalın ve temiz bir şekilde işi bitirmek istiyordum.

O kod mu yoksa bu kod mu diye bakınırken çekilmiş bir kare.
O kod mu yoksa bu kod mu diye bakınırken çekilmiş bir kare.

15 dolar’a hazır kod satın aldım

Uygulamaları sıfırdan yazdırmak genelde maliyetli olur. Zaten çoğu yazılımcı da kod kütüphanelerinden hazır kodlar kullanarak işe başlar. Talep olunca pazarda her türlü ihtiyaca yönelik çözümler bulmak da kolaylaşıyor. Internette hazır mobil uygulama kodları satın alabileceğiniz bir sürü pazar yeri var. Bu kodların bazıları da açık kaynak uygulamalarından. Uygulamaların özelliklerine bakıp, demosunu telefonunuza indirip, arayüzü ve  kullanım kolaylığı hakkında fikir edinebiliyorsunuz. Öte yandan daha önce satın alanların yorumlarını okuyup hangi kodun işinizi görebileceğine dair bilgi de edinebiliyor, ihtiyacınıza en uygun kod öbeklerini kolayca satın alabiliyorsunuz. Ben http://codecanyon.net/ üzerinden Fortin Video Channel App diye bir uygulamayı 15 dolar’a satın aldım. (Uygulamaya şimdi baktım da pazardan kaldırmışlar).

Yazılımcımı buldum ve işe başladık

Programcılar tarafında projenin kapsamına göre birçok seçenek var. Upwork.com (Eski Odesk) ve Freelancer.com gibi siteler üzerinden küresel yazılımcılarla da çalışabiliyorsunuz. Dünyanın farklı yerlerinden yazılımcılarla çalışmak bazı durumlarda maliyet avantajı sağlasa da dil bariyeri, -mış gibi yapmalar ve yalan dolan işin içine girince paranızı çöpe atmak işten bile olmuyor. Hintliler bu piyasayı neredeyse ele geçirmiş durumda. Bireysel yazılımcılar olduğu gibi, bu tür platformlar üzerinden proje desteği veren kurumsal yazılım firmaları da mevcut. Yazılım firmaları ile çalışmak, bireysellerle çalışmak yerine daha çok tercih edilebilir. Çünkü bu şekilde güven unsurunu bir nebze de olsa sağlama alabiliyorsunuz. Allah korusun yazılımıcınızın amcası filan ölür de projeyi yarım bırakırsa bir başka yazılımcı hemen projeyi devralabilir (Bazı Hintlilerin beyninizi yakacak türden yalanlar söyleyebildiğine şahit oldum!). Anlayacağınız yazılım firmaları proje yönetimi tarafında yine bireylere göre daha iyi hizmet veriyor. Ama her güzel şeyin bir bedeli olduğunu da unutmamak gerek.

Yazılımcılarımla tanışma ve brief maili
Yazılımcılarımla tanışma ve brief maili

Ben projenin çok basit olması ve zaman kaybettirici işe alım süreçleriyle uğraşmamak adına minik bir bütçeyle  yakın çevremdeki yazılım firmalarındaki canavar stajyerlerle çalışmayı tercih ettim. (Yazarın notu: Gerçek şu ki stajyer arkadaş müşteri yönetimi deneyimini artırmak için kodları gönüllü olarak editlemek istemişti. Ne olursa olsun her emeğin bir karşılığı olmalı. Bu yüzden harçlık niteliğinde çok cüzzi bir ödeme yaptım. Ödeme yaptığım rakamı sadece fikir vermesi için burada paylaşıyorum. 150 TL kadar.)

Genç insanlarla çalışmaktan çoğu zaman keyif alıyorum. Enerjileri ve yaratıcılıkları beni çok motive ediyor. Lakin, deneyimsiz mühendislerle çalışırken çok dikkatli olmak gerekiyor. Ne istediğinizi çok net bir şekilde ifade etmelisiniz. Deneyimsiz yazılımcılar proje içinde küçük detaylarda takılmaya ve problemlerle boğuşup projeye karşı motivasyonlarını kaybetmeye meyillidir. Bu açmazı çözebilmek için bence en güzel taktik, projeyi anlamlı parçalara ayırarak adım adım ilerlemektir. Bunu yapabilmek için her şeyin kafanızda çok net olması gerekiyor. Olmasa da olur bir sürü cici özellik ekleyip projeyi yavaşlatmak yerine MVP (minimum viable product) mantığında çalışmak gerekiyor. Bu arada Kaan Akın‘ın bu konuda çok güzel yazıları var. Yalın girişim ile ilgili şu yazısına mutlaka göz atın derim.

Birkaç yazışmadan sonra uygulama bitince şöyle birşey oldu.

custom_gallery
images not found

Uygulamayı bitirdik ama Playstore reddetti

Uygulamayı hızlıca bitirdik ve Playstore’a gönderdik fakat, içerik ile ilgili yönetmeliklerde güncelleme olduğu için uygulamamız reddedildi. Google sanırım Youtube API V3 ile gelen update ile içerik yönetmeliğini de güncellemiş  ve uygulamaları içerik lisanlarını sorgulamadan mağazaya koymuyor. İşin ilginç tarafı Playstore’da çok sayıda uygulama içerik lisanlarını resmen katlediyor. Sanırım Google ilk zamanalarda Playstore’daki uygulama sayısının artmasını istediği için bu kadar sert yönetmelikler yürürlükte değildi. Playstore’da neredeyse 1,5 milyon uygulama olduğu için artık işi sıkı tutuyorlar. Neyse bende Google ile cenkleşmek istemediğimden app’imi geri çektim.

Eğer kullanmak isterseniz debug edilmiş versiyonunu şuradan Android’li telefonlarınıza indirip, kullanabilirsiniz.

Evet, bundan sonra söz sizde. Düşüncelerinizi aşağıdaki yorum alanına yazmaktan veya bu yazıyı kendi sosyal ağınızda paylaşmaktan çekinmeyin lütfen. Umarım bu yazı hobi amaçlı dahi olsa mobil uygulama geliştirmek isteyen kişiler için faydalı olmuştur.

Görüşmek üzere…

*Kapak Görseli: Tommaso Nervegna/ CC