Metaverse geliyor…
Metaverse, sanal gerçeklik ve blockchain teknolojileri kullanılarak oluşturulmuş, etkileşimli ve merkezi olmayan bir dijital evrendir. Bu evren, kullanıcıların birbirleriyle etkileşime geçebilecekleri, ticaret yapabilecekleri ve farklı dijital varlıklara sahip olabilecekleri bir platform sunar.
Metaverse, çeşitli alanlarda kullanılabilir, örneğin sanal dünyalarda, e-ticarette, eğitimde, oyunlarda, sanatta ve daha birçok alanda. Bu dijital evrende kullanılan blockchain teknolojisi, dijital varlıkların ve işlemlerin merkezi olmayan bir şekilde yönetilmesini ve güvenli bir şekilde gerçekleştirilmesini sağlar.
Metaverse’un temel özellikleri arasında, merkezi olmayan yapı, gerçek zamanlı etkileşim, özelleştirilebilir avatarlar, dijital varlık sahipliği, akıllı sözleşmeler ve sanal dünyaların yaratılması gibi özellikler yer alır.
Metaverse, gelecekte giderek daha fazla insanın kullanacağı bir teknoloji olarak kabul ediliyor ve bu nedenle birçok girişimci ve şirket bu alana yatırım yapmaya başladı.
Sende metaverse de yerini almak istiyorsan birkaç seçenek mevcut.
1 – Mevcut metaverse projelerinden birinden NFT olarak avatar, land(arsa) ve benzeri şeyleri alıp gelecekte değerlenmesini bekleyebilirsin.
2 – Kendi metaverse projeni geliştirebilir veya gelişmekte olan bir metaverse projesine katılabilirsin.
Metaverse kavramı giderek daha popüler hale geldikçe, birçok şirket ve proje bu alanda çalışmalar yapmaya başladı. İşte dünyada en popüler metaverse projeleri:
- Decentraland: Sanal bir dünya olan Decentraland, blockchain teknolojisi ile merkezi olmayan bir yapıya sahip. Kullanıcılar, bu dünyada arazi satın alabilir, evler ve ticaret merkezleri inşa edebilir ve diğer kullanıcılarla etkileşime geçebilir.
- The Sandbox: Sandbox, kullanıcıların 3D dünyaları tasarlamalarına ve bu dünyaları diğer kullanıcılarla paylaşmalarına olanak tanıyan bir platformdur. Sandbox, ayrıca kullanıcıların kendi dijital varlıklarını yaratmalarına, bunları satabilmelerine ve ticaret yapmalarına da izin verir.
- Somnium Space: Somnium Space, kullanıcıların sanal bir dünya içinde dolaşmalarına, ticaret yapmalarına ve diğer kullanıcılarla etkileşime geçmelerine olanak tanıyan bir platformdur. Somnium Space ayrıca, kullanıcıların kendi dijital varlıklarını yaratmalarına ve bu varlıkları satabilmelerine de izin verir.
- CryptoVoxels: CryptoVoxels, merkezi olmayan bir sanal dünya platformudur. Kullanıcılar bu dünyada arazi satın alabilir, evler inşa edebilir ve diğer kullanıcılarla etkileşime geçebilir. CryptoVoxels, kullanıcıların kendi dijital varlıklarını yaratmalarına ve satabilmelerine de izin verir.
- Axie Infinity: Axie Infinity, blockchain teknolojisiyle desteklenen bir oyun ve metaverse projesidir. Kullanıcılar, dijital varlıklar olan Axies’leri yetiştirip, eğitip ve satabilirler. Ayrıca Axie Infinity, kullanıcıların diğer oyuncularla etkileşime geçmelerine ve ticaret yapmalarına da izin verir.
Son zamanlarda Türkiye’de de birçok metaverse projesi geliştiriliyor. İşte bazı Türk metaverse projeleri:
- Virtualis: Virtualis, Türkiye’nin ilk sanal gerçeklik platformudur. Kullanıcılar, gerçek hayattaki etkinlikleri, konserleri ve müzeleri sanal gerçeklik ortamında deneyimleyebilirler.
- Paribu Arena: Kripto para borsası Paribu tarafından geliştirilen Paribu Arena, kullanıcıların dijital varlıklarını kullanarak birbirleriyle yarışabilecekleri bir platformdur. Paribu Arena’da yarışmalar düzenlenir ve kazananlara ödüller verilir.
- Turgutreis Sanal Liman: Bodrum Turgutreis Limanı’nın sanal bir kopyası olan Turgutreis Sanal Liman, kullanıcıların sanal olarak limanda gezmelerine ve deneyimlemelerine olanak tanır.
- Reborn City: Reborn City, Türkiye’nin ilk merkezi olmayan sanal dünya platformudur. Kullanıcılar, Reborn City’de dijital varlıklarını yaratıp, satabilir ve diğer kullanıcılarla etkileşime geçebilirler.
- Wannart: Wannart, kullanıcıların dijital sanat eserlerini sergileyebilecekleri bir platformdur. Kullanıcılar, sanal galerilerinde eserlerini sergileyebilir, satışa çıkarabilir veya diğer kullanıcılardan dijital sanat eserleri satın alabilirler.
- GhoVerse: Bir oyun olaran başlayan ancak sonradan metaverse özellikleri geliştirerek devam etmiş ve Türkiye’deki yazılımcılar ile başlatılmış bir metaverse projesidir. Gezegenler, kasabalar, hayaletler ve avcıların olduğu mistik bir evren sunar. Kullanıcılar bu gezegenlerde dolaşıp istediklerini yapabilirler.
Bu Türk metaverse projeleri, ülkemizde bu alanda farkındalığın artması ve Türk girişimcilerinin metaverse teknolojilerine ilgi göstermesi ile birlikte ortaya çıkmaktadır.
Web3 Hakkında
Web3, blockchain ve kripto para birimi teknolojileri üzerine inşa edilen bir internet vizyonudur ve günümüzün hızla gelişen teknolojileri arasında önemli bir yer tutmaktadır. Web3 teknolojileri, merkezi otoriteler yerine dağıtık ağlar ve kriptografi kullanarak veri güvenliğini ve gizliliğini artırarak internet kullanıcılarının güvenliğini ve kontrolünü artırmayı hedeflemektedir.
Web3 teknolojileri, merkezi olmayan uygulamaların (dApps) ve merkezi olmayan finans (DeFi) gibi yeni nesil uygulamaların geliştirilmesine ve kullanılmasına olanak tanımaktadır. Bu uygulamalar, daha adil, şeffaf ve güvenli bir internet sağlayarak gelecekteki teknolojik gelişmelerde büyük bir rol oynayacaktır.
Bu nedenle, Web3 teknolojileri geleceğin önemli teknolojilerinden biri olarak kabul edilebilir. Ancak, bu teknolojilerin tam potansiyeline ulaşması için hala birçok zorluk ve engel vardır ve bu nedenle, Web3’nin geleceği tam olarak belirlenememektedir.
Web3 teknolojileriyle geliştirilen bazı dApps örnekleri:
- Merkezi Olmayan Finans (DeFi) Uygulamaları: Web3 teknolojileri, merkezi olmayan finans uygulamalarının (DeFi) geliştirilmesine olanak tanımaktadır. Bu uygulamalar, kripto para birimleri üzerinden kredi verme, borç alma, sigorta ve diğer finansal işlemleri gerçekleştirmek için blockchain teknolojisi kullanır.
- Dağıtık Depolama Uygulamaları: Web3 teknolojileri, dağıtık depolama uygulamalarının geliştirilmesine olanak tanır. Bu uygulamalar, verileri merkezi bir sunucuda değil, dünya genelinde dağıtılmış bir ağda depolar ve böylece verilerin güvenliği ve gizliliği artar.
- Merkezi Olmayan Sosyal Medya Uygulamaları: Web3 teknolojileri, merkezi olmayan sosyal medya uygulamalarının geliştirilmesine olanak tanır. Bu uygulamalar, kullanıcıların verilerini merkezi bir sunucuda değil, blockchain teknolojisi kullanarak dünya genelinde dağıtılmış bir ağda saklar.
- Akıllı Sözleşme Uygulamaları: Web3 teknolojileri, akıllı sözleşmelerin geliştirilmesine olanak tanır. Bu uygulamalar, belirli şartlar sağlandığında otomatik olarak çalışan ve veri manipülasyonu veya yanıltıcı işlemlerin önlenmesine olanak tanıyan programlardır.
- NFT Piyasaları: Web3 teknolojileri, NFT’ler (non-fungible tokens) gibi kripto varlıkların alım satımını mümkün kılan merkezi olmayan pazar yerlerinin geliştirilmesine olanak tanır. Bu uygulamalar, sanat eserleri, koleksiyon ürünleri ve diğer benzersiz varlıkların alım satımını gerçekleştirmek için kullanılır.
Bu sadece birkaç örnek olup, Web3 teknolojileriyle geliştirilebilecek dApps’lerin sayısı ve çeşitliliği giderek artmaktadır.
Örneğin Metaverse kavramı, genellikle Web3 teknolojileri ile ilişkilendirilir ve Web3 teknolojileri olmadan Metaverse uygulamalarının geliştirilmesi zordur. Metaverse, genellikle sanal bir dünya olarak tanımlanır ve kullanıcıların dijital varlıklarını (avatarlar, objeler, sanat eserleri vb.) oluşturmasına, paylaşmasına ve etkileşim kurmasına olanak tanıyan bir platformdur.
Web3 teknolojileri, Metaverse platformlarının merkezi olmayan ve açık kaynak kodlu olarak geliştirilmesine olanak tanır. Bu, kullanıcıların dijital varlıklarının sahipliği ve kontrolü üzerinde tam bir hakimiyet sahibi olmalarını sağlar. Blockchain teknolojisi, bu dijital varlıkların sahipliği, telif hakları ve diğer önemli özellikleri için güvenli bir kayıt tutar.
Web3 teknolojileri, Metaverse uygulamalarının güvenliği, şeffaflığı ve gizliliğinin korunması açısından da önemlidir. Kullanıcılar, Web3 teknolojileri aracılığıyla kimliklerini ve diğer kişisel verilerini koruyabilir ve Metaverse platformlarında yapılan tüm işlemler şeffaf bir şekilde kaydedilebilir.
Bu nedenle, Metaverse ve Web3 teknolojileri arasında yakın bir ilişki vardır ve Web3 teknolojileri, Metaverse platformlarının geliştirilmesi ve işletilmesi için önemli bir rol oynamaktadır.
Web3 de kullanılan blockchain ağları:
Web3 teknolojisi, merkezi olmayan uygulamaların geliştirilmesine olanak tanıyan birçok farklı blockchain ağına bağlanabilir. Bu nedenle, Web3 ağlarının sayısı sürekli olarak artıyor. Ancak, en popüler Web3 ağlarından bazıları şunlardır:
- Ethereum: Web3 uygulamalarının geliştirilmesinde en yaygın kullanılan blockchain ağı Ethereum’dur. Ethereum, akıllı sözleşmeler oluşturmak ve Web3 uygulamaları için altyapı sağlamak için kullanılır.
- Binance Smart Chain: Binance Smart Chain, Binance borsası tarafından geliştirilen bir blockchain ağıdır. Binance Smart Chain, düşük işlem ücretleri ve hızlı işlem onay süreleri sunar.
- Polygon: Polygon (eski adıyla Matic Network), Ethereum blockchain ağına köprü oluşturan bir Layer 2 çözümüdür. Polygon, Ethereum’a göre daha hızlı işlem onay süreleri ve düşük ücretler sunar.
- Solana: Solana, yüksek performanslı bir blockchain ağıdır ve Web3 uygulamalarının geliştirilmesinde kullanılır. Solana, düşük ücretler ve yüksek işlem hızları sunar.
- Avalanche: Avalanche, yüksek performanslı ve ölçeklenebilir bir blockchain ağıdır. Avalanche, Ethereum sanal makinesini destekler ve Ethereum’a benzer şekilde akıllı sözleşmeler oluşturmak için kullanılabilir.
Bu sadece birkaç örnek olup, Web3 teknolojisiyle bağlantılı farklı blockchain ağlarının sayısı sürekli olarak artmaktadır.
Ethereum, BSC, Polygon,Avalanche gibi ağlar EVM tabanlı blockchain ağlarıdır ve Solidity ile geliştirilir. Solana ise Rust dilini kullanarak akıllı sözleşmelerin oluşturulması için özel olarak tasarlanmış bir kütüphane olan Solana Programlama Arabirim Kitaplığı’nı (Solana Programming Interface Library – Solana SPL) kullanır.
Solidity:
Solidity, Ethereum sanal makinesinde (EVM) çalışan akıllı sözleşmelerin yazılması için özel olarak tasarlanmış bir yazılım dilidir. Bu nedenle, Solidity kullanarak akıllı sözleşmeler oluşturmak için Ethereum gibi EVM tabanlı ağlara ihtiyaç duyulmaktadır.
Solidity ile uyumlu bazı EVM tabanlı ağlar şunlardır:
- Ethereum: Solidity, Ethereum sanal makinesinde çalışan akıllı sözleşmelerin oluşturulması için kullanılır. Ethereum, dünyanın en büyük kripto para birimlerinden biridir ve birçok Web3 uygulamasının temelini oluşturur.
- Binance Smart Chain: Binance Smart Chain (BSC), Ethereum ile uyumlu bir blockchain ağıdır ve Solidity dilini kullanarak akıllı sözleşmelerin oluşturulmasına izin verir. BSC, hızlı işlem onay süreleri ve düşük ücretler sunar.
- Polygon (eski adıyla Matic Network): Polygon, Ethereum tabanlı bir Layer 2 çözümüdür ve Solidity dilini kullanarak akıllı sözleşmeler oluşturulmasına izin verir. Polygon, düşük ücretler ve hızlı işlem onay süreleri sunar.
- Optimism: Optimism, Ethereum tabanlı bir Layer 2 çözümüdür ve Solidity dilini kullanarak akıllı sözleşmeler oluşturulmasına izin verir. Optimism, hızlı işlem onay süreleri ve düşük ücretler sunar.
- Arbitrum: Arbitrum, Ethereum tabanlı bir Layer 2 çözümüdür ve Solidity dilini kullanarak akıllı sözleşmeler oluşturulmasına izin verir. Arbitrum, hızlı işlem onay süreleri ve düşük ücretler sunar.
Bu, Solidity dilini kullanan EVM tabanlı ağların sadece birkaç örneğidir. Solidity dilini kullanan diğer ağlar da mevcuttur ve sayıları her geçen gün artmaktadır.
Gas Fiyatı:
Gas fiyatı, Ethereum gibi blockchain ağlarında işlem gönderirken ödenen bir ücrettir. Bu nedenle, gas fiyatı en düşük olan blockchain ağları, Ethereum dışında, genellikle işlem ücretlerinde avantaj sağlarlar.
Bununla birlikte, gas fiyatı ve işlem ücretleri sürekli olarak değişkenlik gösterir ve belirli bir zaman dilimi içinde farklılıklar gösterebilir.
Ancak, şu anda gas fiyatı en düşük olan blockchain ağlarından biri Nano (NANO) olarak bilinen bir kripto para birimi ağıdır. Nano, blok zinciri teknolojisi kullanır, ancak işlem onaylamak için gas ücreti talep etmez. Bu nedenle, Nano ağında işlem yapmak ücretsizdir ve gas fiyatı en düşük olan blockchain ağlarından biridir.
Bunun yanı sıra, IOTA da (MIOTA) işlem ücreti olmadan çalışan bir blok zinciri teknolojisine sahip bir diğer kripto para birimidir. Ancak, IOTA’nın işlem ücreti olmaması, Tangle adlı özel bir protokol kullanmasından kaynaklanmaktadır.
Gwei (Giga-Wei), Ethereum ve diğer Ethereum tabanlı blockchain ağlarında kullanılan bir gas birimi olarak kullanılır. Gas, ağdaki işlemlerin işlemci gücüne ihtiyaç duyan birimdir ve her işlem için belirli bir gas ücreti ödenir.
Gwei, bir ether (ETH) değerinin 10 milyar parçasına eşittir. Yani, 1 ETH = 1,000,000,000 Gwei’dir. Gwei, Ethereum ağındaki gas ücretleri ölçmek için kullanılır ve genellikle işlem ücretleri olarak ödenir.
Örneğin, bir Ethereum işlemi için ortalama gas ücreti 100 Gwei olsaydı, bir kullanıcının o işlemi gerçekleştirmek için 0.0000001 ETH (100 Gwei = 0.0000001 ETH) gas ücreti ödemesi gerekebilir. Bu nedenle, gas fiyatları ve gwei değerleri, Ethereum ve diğer Ethereum tabanlı blockchain ağlarında işlem yaparken önemlidir.
Popüler blockchain ağları arasında gas ücretleri sürekli olarak değişebilir, ancak genellikle Ethereum, Binance Smart Chain ve Polygon (eski adıyla Matic) gibi ağlar daha popülerdir. Bu ağlar arasındaki gas ücretleri genellikle Ethereum’da en yüksek ve Polygon’da en düşük olacak şekilde farklılık gösterir.
Örneğin, 28 Şubat 2023 tarihinde yapılan bir araştırmada, Ethereum’daki ortalama gas ücreti 200 gwei (Gigawei) civarındayken, Binance Smart Chain’de 30 gwei ve Polygon’da 7 gwei civarındaydı. Bu, Polygon’un diğer blockchain ağlarına göre daha düşük gas ücretleri sunduğu anlamına gelir.
Diğer popüler blockchain ağlarının gas ücretleri şunlardır:
- Solana: Yaklaşık 0,0001 SOL (Solana’nın yerel kripto para birimi) kadar düşük gas ücretleri sunar.
- Cardano: Henüz tamamen geliştirilmediği için gas ücretleri hakkında kesin bir bilgi yoktur.
- Avalanche: Ortalama gas ücretleri yaklaşık 30 gwei civarındadır.
- Polkadot: Ortalama gas ücretleri yaklaşık 100-200 gwei civarındadır.
Bu rakamlar, blockchain ağları arasındaki gas ücretlerinin sürekli olarak değişebileceğini ve değişken olabileceğini unutmamak önemlidir.
Web3 de kullanılan yazılım dilleri nelerdir?
Web3 uygulamaları geliştirmek için birçok farklı yazılım dili kullanılabilir. Bunlardan bazıları:
- Solidity: Ethereum platformunda akıllı sözleşmeler oluşturmak için kullanılan bir yazılım dili olan Solidity, Web3 uygulamalarının en yaygın kullanılan yazılım dillerinden biridir. Solidity, Nesne Yönelimli Programlama (OOP) özelliklerini içerir ve Ethereum Virtual Machine (EVM) tarafından çalıştırılacak kodların oluşturulmasını sağlar.
- Rust: Rust, Web3 uygulamalarının geliştirilmesi için popüler olan bir diğer yazılım dilidir. Rust, performansı ve güvenliği ön planda tutan bir dildir ve Web3 uygulamaları için merkezi olmayan hizmetler geliştirmek için kullanılabilir.
- JavaScript: JavaScript, Web3 uygulamalarının geliştirilmesi için en yaygın kullanılan dillerden biridir. JavaScript, Ethereum platformu için web arayüzleri oluşturmak, akıllı sözleşmeler oluşturmak ve Web3 API’leriyle etkileşim kurmak için kullanılabilir.
- Go: Go, Ethereum platformu için akıllı sözleşmeler oluşturmak için kullanılabilir. Go, hızlı, verimli ve güvenli bir dil olarak bilinir ve özellikle merkezi olmayan uygulamalar için uygundur.
- Python: Python, Web3 uygulamalarının geliştirilmesinde kullanılan bir diğer dildir. Python, Ethereum platformu için akıllı sözleşmeler oluşturmak ve Web3 API’leriyle etkileşim kurmak için kullanılabilir.
Web3 hakkında kendimizi geliştirmek için bir akademi kurduk. Sende bu akademiye ücretsiz katılabilirsiniz. Detaylar için https://ghostakademi.xyz yi inceleyebilir ve orada bulunan discord linki üzerinden discord a giriş yapıp başvuru yapabilirsin.
Flutter ile herşey daha kolay!
Herkese merhaba,
Uzun zamandır bir yazı paylaşmadığımı farkederek genel olarak bir paylaşım yapmak istedim.
Biliyorsunuz eskiden yaptığım paylaşımlarda ios da swift , android de ise java ve kotlin kullanarak native mobil uygulama geliştirme yaptığımızdan ve flutter a geçtiğimizden bahsetmiştim.
Bu serüven devam ediyor ve yeni yapılan uygulamaları flutter da yapıyoruz. Ancak eskiden gelen bazı uygulamalar hala native swift ve java,kotlin de devam ediyor. Büyük uygulamaları flutter a geçirmek kolay değil tabiki ancak sıfırdan yazılan uygulamalarda flutter ın kolaylıklarını çok aramaya başladık.
Son 3 senedir flutter ile uğraştığımızı düşünürsek oldukça deneyimimiz oldu bu konuda. İlk başlarda eski yönteme göre alışması zor olsada bir kere alıştığınızda artık herşey daha hızlı ve kolay oluyor. Hele birde hazırladığınız bir çatı var ise bu iş artık her projede daha kolay hala geliyor.
Flutter ve Getx kütühanesi de bu işi beraber daha da hızlandırıyor.
Sizler için flutter getx örneği hazırladım. Bu örnekde flutter ı çalıştırmayı ve biraz ön bilgisi olanların anlayabileceği sade bir yapı mevcut. İçerisinde bir başlangıç seti mevcut. Nasıl bir çatı kurmalıyız? Hangi kütüphaneleri kullanmalıyız hepsi mevcut.
https://github.com/balabanferhat/FlutterGetXWithNavigation
Ayrıca sayfamdaki diğer flutter örneklerini de inceleyebilirsiniz.
İyi bir yazılımcı olmak için 11 altın kural
İyi bir mobil uygulama yazılımcısı , web yazılımcısı yada backend yazılımcısı olmak bazı ortak temel özellikleri barındırıyor.
Bu ortak özellikler şu şekilde sıralanabilir. Elbette daha vardır ama bunlar ilk etapta aklıma gelenler ve önemli olanlar. Bunları hem yazılımcıların hem müşterilerin düşünmesi için yazıyorum. Umarım herkese faydalı olur.
- Her alanda çalışabilmeli (Mobil uygulama, web uygulaması, backend). Sadece hangisine yoğunlaşır ise onda daha hızlı sonuç elde eder.
- Konsantrasyonu iyi olmalı. Odaklandığı zaman işi (yada hedeflediği kısmı) bitirebilmeli.
- Pes etmemeli. Bazen geceler boyu sabahlamak gereksede pes etmeden devam etmeli.
- Çok iyi araştırmalı. Çözemediği konuları yada daha iyi ne yapabilirim gibi düşünerek araştırma yapmalı. Kendi kendine araştıran ve çözüm üretebilen biri olması çok önemli çünkü her zaman size yardımcı olacak birini bulamazsınız.
- Temel algoritmaları bilmeli. Günümüzde yazılıma yeni başlayan çoğu kişi algoritma çalışmadan yazılım öğrenmeye kalkıyor. Yazılım dilini öğrensede, zor problemeri algoritmalar kurarak çözemiyor. Önce bir programlama dili seçip (javascript, dart, php, c# gibi) burada algoritma çalışmak çok önemli.
- Dokümantasyon yapmalı. Hem kendi için hem kendisinden sonra kodlara girecek kişi için bunu yapmalı. Kodun için gelişigüzel yorumlar yazmak yerine düzgün yorumlar yazıp, bir readme dosyası hazırlayarak içine önemli konuları not etmeli (ör: nasıl build alınır , dev ve prod ortamına nasıl deploy edilir vs…)
- Versiyon kontrolü kullanmalı. Ekip halinde çalışmıyor bile olsa, yedek almak, ileride ben ne yapmıştım diye bakmak ve kodu düzgün teslim etmek için git sistemini biliyor olmalı.
- Etik olmalı. İşi eksiksiz ve gereken kişiye anlatarak ve dokümantasyonlar ile teslim etmeye özen göstermeli. Açılan bazı hesapları müşteri adına açmalı ve bunlara ait dokümantasyonları işe başlarken tutmaya başlayıp anında müşterisi ile veya işi yaptığı kişi ile paylaşmalı. Kendisine birşey olsa işe ne olacak düşünmeli. Para kazandığı yere ihanet etmemeli, dürüst ve ahlaklı olmalı.
- Devir alabilmeli. Başkasının yazdığı kodu incelemeyi çoğu yazılımcı sevmez. Kodu inceleyip sonra sorumluluğu üstlenerek yazan kişiden devir alabilmeli. Çoğu kişi maalesef anlamaya çalışmak yerine bu olmamış ben bunu baştan yazayım diyerek hem daha çok kendine iş çıkarma derdinde hem de öncesinde kodu yazan kişiye çamur atarak prim yapma derdinde oluyor. Düzgün devir almayı öğrenmek zorundayız. Bir kere karşınızdaki kişi işten anlamıyor diye bu olmamış demek bence dolandırıcılıktan başka birşey değildir.
- İyi debug yapabilmeli. Maalesef karşılaştığım çoğu yazılımcı debug yapmayı , kodu takip etmeyi bilmiyor. Yazdığınız kodu her durumu düşünerek debug yapmanız ve nasıl davrandığını incelemeniz gerekiyor.
- Tasarım gözü iyi olmalı. Tasarımcı olması gerekmiyor ama biraz da zevk olması lazım. Bunun içinde yapılan tasarımları incelemeli , trendleri takip etmeli. Bir iş yaparken ui (arayüz) tarafına özenmeli.
Sizde iyi bir yazılımcı olmak ve bu özelliklerin üstünde durup kendinizi geliştirmek istiyorsanız benimle irtibata geçebilirsiniz.
Flutter ile Mobil Uygulama Eğitimi
Herkese merhaba,
Yazılarımı takip edenler bilirler. Çok uzun yıllardır yazılım konusunda geniş bir bilgi ve tecrübeye sahibim. Yoğun talep üzerine az sayıda kişiye ve küçük gruplara Flutter eğitimi veriyorum. Bu eğitimin amacı klasik eğitim kurumları gibi değil yakın çalışarak kişiyi gerçekten tek başına kapsamlı uygulamalar yapabilecek seviyeye getirmek. Tamamen geleceğe hazırlamak. Teoriden çok pratiğe dayalı eğitim vermek.
Eğitimin ne kadar süreceği biraz kişiye de bağlı. Temel programlama bilgisi iyi seviyede ise ve mobil uygulama geliştirme bilgisine sahip ise (java, kotlin, swift gibi), bu durumda süre kısalacaktır. Minumum ders paketi 10 dersliktir.
Eğitim tamamlandığında aşağıdaki artı değerlere sahip olacak kişi düzenli iş bularak kendini geliştirmeye devam edecektir.
- Flutter ve dart programlama diline tam hakimiyet,
- Kullanılacak kütüphaneleri tespit etme,
- Flutter UI hazırlama ve temel widget ları öğrenme,
- Firebase ile uygulama geliştirme,
- Backend json servisler ile uygulama geliştirme
- Servisten dönen datayı cache leyerek uygulamayı hızlandırma
- Login, logout kurguları
- Flutter state management
- Git üzerinden versiyon yönetimi
Bu bilgiler dışında bu eğitimden sonra elde edilebilecek avantajlar şu şekildedir.
- Eğitim tamamlandığında iyi seviyeye gelen kişileri bizzat kendim projelerin içine katarak gelişimlerinin devamını sağlayacağım. Üstelik projelerde yaptıklarının karşılığında para kazanmaya başlayarak kendilerine duydukları güven giderek artacak.
- İyi seviyeye gelen kişilere sürekli referans olacağım. İyi şekilde tanıyacağım için bundan sonraki her aşamada beni referans gösterebilecekler.
- Sürekli paylaşımda kalmaya ve gelişimlerini takip etmeye devam edeceğim.
- Kişi kendini geliştirdi ise, işsiz kalmaması için elimden gelen çabayı göstereceğim.
- Özetle, tam bir koçluk, mentörlük yapacağım.
1-1 Eğitim Paketleri
10 ders (20 saat) – 6000 TL.
20 ders (40 saat) – 11.000 TL.
30 ders (60 saat) – 15.000 TL.
Grup Eğitim Paketleri (Maks 4 kişi)
10 ders (20 saat) – 4000 TL. (kişi başı)
20 ders (40 saat) – 7000 TL. (kişi başı)
30 ders (60 saat) – 10.000 TL. (kişi başı)
NOT: Öğrencilere ve daha yüksek sayıda grup eğitimlerine farklı indirimler uygulanmaktadır.
Eğitim hakkında daha detaylı bilgi almak için iletişim formundan bana ulaşabilir veya 542 – 350 50 95 numaralı telefondan arayabilirsiniz.
Birçok proje neden başarısız oluyor?
Herkesin aklında güzel bir fikir veya yapılmasını istediği bir proje var biliyorum. Bu işi yaptırabilmek içinde güvenilir bir yazılımcı aranıyor. Yazılımın hangi tür olduğu çok önemli değil. Yaşanan sorunlar hepsinde benzer. Bu yazımda biraz bunlardan bahsedeceğim ve örnek olarak ise yine mobil uygulama üzerinden gideceğim.
Mobil uygulama yaptırmak için 2 yöntem var diyelim. Yani siz öyle sanıyor olabilirsiniz 🙂 3. yöntemi yazının devamında sabredip okuyanlar için anlatacağım.
- Freelance mobil yazılım uzmanı (mobil uygulama yazılımcısı)
- Mobil uygulama geliştiren şirket (yazılım firması)
Bana hergün o kadar çok mesaj yada telefon geliyorki inanamazsınız.
Şu freelance ile çalıştım işimi yarım bıraktı ve ödememi geri iade etmiyor ne yapmalıyım?
Şu şirket ile anlaştık başta iyi gidiyordu sonunda istediğimiz sonuca ulaşamadık şimdi ne yapacağız?
Aslında freelance mobil yazılımcı yada mobil yazılım firması baktığımızda çok farklı değil. Diyeceksiniz ki firma ile çalışmak daha garanti değil mi? Şöyle söyleyeyim hiç garanti değil. Hergün binlerce firma açılıp kapanıyor. Adresi ve telefonu var diye güvenilir olmuyor maalesef. Evet web sitesi olabilir ve birçok referans koymuşda olabilir sitesine. Ancak bunu teyit etmeniz çok zor. Freelance içinde aynı şey geçerli.
Sonuçta ne yapacağınızı bilemeyip birseçim yapıyorsunuz ve şansınız var ise istediğinize yakın bir sonuç alabiliyorsunuz. Peki, ya şansınız yok ise? O zaman paranızı ve en kötüsü zamanınızı boşa harcamış oluyorsunuz. Zaman ise bugünlerde paradan daha değerli biliyorsunuz.
Ben bu sebepten freelance yada şirket olarak iş yapmıyorum. Peki ne mi yapıyorum?
Projenize teknik liderlik yaparak sizin tarafınızda çalışıyorum. Aşağıda örnek bir mobil projede yaptığım bazı işler ve sorumluluklarım yer alıyor.

1 – Projeye ait kurgunun kontrolü/şekillendirilmesi ve apple/google politikalarına uygunluğu,
2 – Teknik ekibin kurulması ve sonrasında takibi3 – Teknik iş planının belirlenmesi,
4 – İşi yapacak teknik ekip ile ve yönetim ile haftallık düzenli toplantılar,
5 – İşin (yazılan kodun) düzgün olmasının sağlanması,
6 – Kodun ve tüm dökümanların yedeğinin alınması, git ( versiyon kontrol) sisteminin kurulması,
7 – Kalite kontrol için iyi bir test sürecinin yürütülmesi,
8 – Kodun teslim alınması ve sonrasında işin yürütülmesi için plan yapılması,
9 – Altyapının (server , backend, mimari, veritabanı) kurulması/şekillendirilmesi/işletilmesi konusunda destek,
10 – frontend uygulamalarının nasıl olacağının belirlenmesi ve yürütülmesi sırasında teknik destek.
11- Yazılımcı arkadaşların takıldığı yerde yardımcı olmak,
12 – İşveren haklarını korumak, işi hızlandırmak ve maaliyetleri düşük tutmak.
Çalışacağınız ekibi, kaç kişiye ihtiyaç olduğunu beraber belirliyoruz. Çalışacağınız taraf şirket de olabilir. Kim olursa olsun işi şansa bırakmamak için denetlenmeye ihtiyacı vardır.
Bu sektörde 20 yıldan fazladır çalışıyorum. Hala projelerin zorlu yerlerinde yazılım yapıyorum. İnanın neler gördüğümü anlatsam şaşırırsınız. Mesela başta işi kapmak için ucuz fiyat verip yok olanlar. Yada alınan ödeme ile gelişigüzel iş yapıp sonra daha çok para koparmaya çalışanlar. Her sektörün iyileri ve kötüleri vardır. Sektörü kötülemek yerine aslında amacımız doğruyu nasıl yaparızı bulmak olmalı diye düşünüyorum.
Bu belirlediğim yöntem ile örneğin flutter ile mobil uygulama yapacağız diyelim. Bize 1 flutter yazılımcısı 1 de backend yazılımcısı gerekiyor. Her ikisinide yapanlar var ama çok azdır ya da birinden birini çok iyi yapamayabilir. İki tarafda birbirinden bağımsız yazılan ama birbiri ile haberleşen önemli parçalardır. Mevcut çevrimizdeki güvendiğimiz arkadaşlar var ise onları önce tercih ederek arayışımıza başlıyoruz. Eğer onlar dolu ise bu sefer arayış ve detaylı görüşmeler devam ediyor. 2 hafta içinde istediğimiz ekibi kurduk diyelim. Burada proje sahibine şunu öneriyorum. Aylık anlaşmalar yapın! Sigortalı çalıştırırsanız ödemenizi maaş gibi ay sonunda gerçekleştirin. Sigortalı değil ise yarısı ay başında yarısı ay sonunda olabilir. Aylık değilde proje bazlı anlaşmanın birçok riskleri var. En büyük sorun çalışanların işe geçici bakmaları. Sizin açınızdan ise proje bitince projenizi teslim aldığınızı düşünelim, sonrasında işi yapan ekibin dağılması ile beraber bakım ve desteğin yapılamadığı bir durum oluşuyor. Başka yazılımcılar bulmaya çalışıyorsunuz ve herkes ben bunu baştan yapayım demeye başlıyor. Çünkü başkasının yazdığı kodu anlamak ve uğraşmak istemiyor.
Proje bazlı çalışma ve aylık çalışmayı kıyaslayalım. Bir iş var ve 3 ayda biteceğini düşünelim. İşi de profesyonel bir yazılım firmasına vereceksiniz. 3 kişilik ekibi size tahsis edecek ve 3 ay sürecek bir iş ise nerden baksanız 90-100 bin TL para istemesi lazım 3 yazılımcının 3+1(uzama riski) yani 4 aylık maliyetini çıkarıp kar etmesi için. Zaten 3 aylık frontend ve backend i olan bir iş yapıyor ve tek bir freelance ile 20-30 bin e anlaşıyorsanız iyice riske giriyorsunuz demektir. Neyse bu şirkete dönecek olursak. Buna alternatif 3 kişilik ekibi kurduğumuzu ve aylık anlaştıığımızı düşünelim. Dışarıdan çalışacakları içinde her birine 5000 veriyor olalım. Yani aylık 15000 gibi bir maaliet ortaya çıkıyor. 1 teknik lider + 2 yazılımcı ile projenizi yedeklemiş oluyorsunuz. Ben burada yapılan tüm işi tüm detayları ile bildiğimden biri ayrıldığında yerine yenisini buluyoruz ve iş o sırada aksamıyor. Bana birşey olsa (allah korusun 🙂 ) Bu durumda da diğer arkadaşlar işi biliyor oluyor. Proje birazda uzadı 4 ayda çıktı diyelim ortaya. Bu durumda 60.000 e iş yapılmış oluyor. Ancak işiniz tutacak ve daha büyüyecek ise bu ekibi kaybetmek istemezsiniz. Devam eden aylarda düzeltmeler, iyileştirmeler yada ek özellikler yaptırmaya devam ediyorsunuz. Proje bazlı işlerde bunu yaptıramazsınız. Ek sözleşme ile tekrar anlaşmanız gerekir. Sonuçta iş bitiminden 1-2 ay sonra işin ne noktada olduğunu anlamış ve proje bazlı işe göre daha az harcamış ve daha az riske girmiş olacaksınız.
Daha anlatacak çok şey var ama çok da uzatmadan konuyu toparlamak gerekirse, ben projenin büyüklüğüne ve ayıracağım zamana göre aylık bir teknik liderlik fiyatı belirliyorum. Ekibin kurulması , proje planı, tasarım süreci ve teknik herhangi birşeye başlamadan önce benimle anlaşmanız gerekiyor bu yöntemi tercih ettiğinizde. Çalışmalara hemen başlıyoruz.
Küçük projelerde(1-2 aylık) aylık 5000 TL,
Orta ölçekli projelerde(3-5 aylık) aylık 7500 TL,
Büyük projelerde(6 ay ve üzeri) aylık 10000 TL
talep ediyorum ve çok fazla projeye giremiyorum maalesef. O yüzden projeniz önemli ve sizde bu konuda yatırım yapmaya niyetli iseniz benimle irtibata geçebilirsiniz. Hem süre tasarrufu, hem maaliyetlerin düşürülmesi hem de kaliteli ve riske girmeden iş yapmak için benim önerim bu şekilde. Bu alacağım ücretin karşılığını fazlası ile alacağınızdan şüpheniz olmasın.
Sevgi ve saygılarımla.