Çocuklar için AppleTv kelime uygulama denemeleri
Birkaç gün önce kendimi bilgisayardan uzak tutmaya çalışıp salonda çocukların oyununu izliyordum. Ellerim klavyeden uzak olsa da kafam çok uzak değildi maalesef ve “çocukları için” bilgisayarda ne yapabilirim diye düşünmeden edemedim.
Şu an 4 yaşında olan ikizlerimizi haftada bir gün 20-25’er dakika bilgisayar kullandırtıyoruz. Bunun dışında bazı şeyleri düzgün yaparlarsa 5’er dakika daha o an için izin veriyoruz. Sublime Text’de kocaman puntolarla yazı yazıyorlar ya da MS Paint’in online versiyonunda çizim yapıyorlar. Bilgisayar kullanmak bu yaşta çocuklar için iyi mi değil mi pek bilemiyoruz ama bizim gibi saatlerce oturup oraları buraları ağrımayacağı için belli bir vakitte azıcık kullanmalarında bir sıkıntı yoktur diye düşünüyoruz. Böylece ana-babalarını sürekli başında görüp kullanmak için can attıkları bilgisayardan hepten de mahrum kalmıyorlar.
Aslında çocuklar için her şeyin “fazlası” zarar. Hepimiz için bu geçerli tabi. Mesela sürekli tablet kullansalar, sürekli telefonla oynasalar, sürekli tv izleseler, sürekli çikolata yeseler vs vs. O yüzden bunları kontrol dahilinde az az yapmaları -henüz bunu becerebiliyorken- iyi bir şey. İlerde okula başlayınca çıldırıp bizi asla dinlememeleri gibi bir ihtimal de vardır tabi. En azından şimdilik durumu böyle idare ediyoruz.
Neyse bu uzun iki paragraflık kendimi savunma beyanatından sonra mevzuya gelebilirim. Bizim TV’nin uydusu neredeyse 5-6 yıldır bozuk olduğu için evimizdeki internet aboneliğimiz sırasında hediye gelen Apple TV’yi kullanıyorduk başından beri. Daha ilk elimize geçtiği gün ben buna uygulama yaparım, demiştim ama 5 yıldır öyle bir şey olmadı maalesef. Her şeyin bir vakti varmış demek ki. O gün işte salonda hadi şunlara bir Apple TV uygulaması yapayım deyip bilgisayarı aldım salona getirdim 🙂 Normalde odamda çalışırım ama işte o gün çocuklarla vakit geçirmek istediğim için kendimi böyle ikna edebildim.
Çocuklarla beraber basit bir şey yapalım diyordum. Onlar sağolsun pek rahat bırakmadılar tabi. Harala gürele derken ilk uygulamayı yaptık ama bir türlü Apple TV’ye aktaramadık. Meğer epeydir kullanmadığım için Xcode mevcut sürümüyle Apple TV’ye uygulama aktaramıyormuş. Xcode’u güncellemem gerekti. Ama onu da yapamadım çünkü lazım olan Xcode sürümü mevcut macOS sürümüme uygun değilmiş. Bu kez önce onu güncelleme yapmam icab edince bu işlemler geceyi buldu tabi.
Neyse çocuklar yatınca ben de güncellemeleri yapmış bitirmiş olarak basit bir oyun yazdım. Ekrana 10 tane üzerinde resim olan buton yerleştirdim. Her birine de İngilizce isimlerini yazdım. Hepsini tek bir fonksiyona bağladım. Bu fonksiyon basitçe butonun etiketini alıp metni İngilizce okuyor. İlk uygulama bu kadardı.
Ertesi gün çocuklar benden çook önce kalkıp TV’de farklı bir uygulama görüp tıklasınlar diye mutlaka bir uygulama ikonu da yapmam lazım dedim. En çok bu uğraştırdı desem yalan olmaz. Apple TV uygulama ikonu için bir dosya da yetmiyor uzuun genişliklerle 2-3 dosya gerekiyormuş. Deneme yamulmayla bunları da öğrenip çocukların fotoğrafını uygulama ikonu yaptım.
Ertesi gün beklediğim tepkiyi aldım 🙂 Çocuklar bu basit uygulamayı çok sevdiler. Tabi aşırı basit olduğu için hemen alıştılar. Daha çok ve rastgele gelebilecek fotoğraflar, kelimeler olsa tabi ki daha eğlenceli olabilirdi ama aceleden bu kadar yapabildim.
Araba Yarışı
Ertesi gün bu kez gerçekten beraber, yan yana oturup çalışma odasında bir oyun yapmaya kalktık. Araba oyunu istediler. Üç tane yarış arabası görseli bulduk. Bunları nasıl en basit şekilde hareket ettirebilirim diye düşündüm ve tabi ki arabaları değil üzerinde bulundukları yolu hareket ettirmek daha kolay ve mantıklı olacaktı.
Benim Xcode (yani Swift’i kast ediyorum) ile olan tecrüben UIKit’in dışına çıkmadığı için ben ancak klasik komponentlerle basit animasyonlarla işimi görebiliyorum. Yoksa bu yaptıklarımın gerçek oyun yazmakla alakası yok 🙂
Bu yeni oyun denemesi iki ekranlı oldu. İlk ekranda üç arabadan birini seçiyorlar. Her bir arabaya dokununca “Blue”, “Yellow”, “Red” diye ses geliyor. Araba seçiminden sonra bayraka tıklayınca diğer ekrana geçiyor. Burada da basitçe arka planda derme çatma bir şekilde uzattığım “yol” resmi scroll oluyor. Bitince başa dönüyor.
İşte bu kadar basit olan oyunun en zor kısmı o “scroll” olayı idi. Bunu doğru düzgün yapana kadar göbeğim çatladı. Scroll işine ne zaman bulaşsam zaten bu zorluğu çekiyorum. Aradan bu kadar zaman geçtiği için de hamlanmışım tabi.
Kelime Yazma Oyunu
Araba oyununu çocuklar yatasıya ancak bitirebildiğim için oyunla fazla vakit geçiremediler. Scroll beni darladıkça ben de onları biraz darladım. Bağırış çağırış ve stresli de olsa oyunu bitirmiştik. Fakat bu çok içime sinmeyen oyundan ziyade çocukların oynarken bir şeyler öğrenebileceği uygulamalar daha iyi olur gibime geliyordu. O yüzden daha onlar yatmadan yeni bir oyuna başladım.
Yarışma gibi bir şey yapmak istiyordum. Bu kez önce güzel bir arkaplan buldum. Sonra bu arkaplanda çocukların fotoğraflarını göstermek aklıma geldi. Onları yatmadan çağırıp perde önünde farklı farklı pozlarını çektim. Gülerken, şaşırmışken, sevinirken vs. Bu fotoğrafları arkaplandan dekupe etmek çok zaman alacağı için ücretsiz https://www.remove.bg/ servisinden yararlandım. Ücretsiz kısmı düşük çözünürlük sunduğu için elde ettiğim bu küçük fotoğrafları https://imgupscaler.com/ gibi upscale servislerinde sunulan ücretsiz haklardan yararlanarak büyüttüm. Yaşasın beleşçilik.
Aslında kafamda net bir şey yoktu. Yarışma gibi olsun, bir biri bir öbürü oynasın. Puan kazansınlar. Kazandıkça ekranda sevinen fotoğrafları oynasın. Kaybettikçe üzülen foto vs.
Sorular bir kaç şekilde olabilirdi. Ekrana bir muz resmi koyup bunu yazmalarını isteyebilirdim. Türkçe veya İngilizce. Fakat Apple TV’de yazmak dert. Ayrı bir ekranda klavye gibi bir şey çıkıyor burda kumanda ile ilerleyerek harf yazıyorsun. Yetişkin olarak biz bile beceremiyoruz. O yüzden yazma işi ekrandaki butonlara basarak olmalıydı.
Resimli soru güzel oluyor ancak güncellemesi dert. Eğlenceli olsun, hemen sıkılmasınlar diye çok resim bulmak lazım. Her bulduğumuz resmi de güzel görünsün diye @2x ve @3x ölçekli versiyonunu da oluşturmak lazım. Sırf bu o kadar zahmetli oluyordu ki sonunda dayanamadım bir tane Automator eklentisi oluşturdum. Şurda anlatıyorum. Onunla sağ tıklayıp @2x ve @3x ayarlamak kolay oldu.
Resimli soruları internetten gelebilecek şekilde ayarlamak üzere sonraya bıraktım. Basit bir panel yazıp ordan soruların tipini seçip resmini vs yükleyebilirim.
Bu arada belirteyim, çalıştığım iş yerinde 3 yıldır online sınavlar üzerine kafa yoruyoruz. Yani sabah akşam online sınavlarla yatıp kalktığımız çok oluyor. Haliyle insanin özel hayatına da sirayet ediyor bu işleyiş 🙂 Bu hazırladığım basit uygulama bir gün online sınavın bir parçası bile olabilir.
Neyse resim konusunu sonraya bırakınca uygulamanın çalışma mantığını şuna çevirdim. Yirmi otuz tane kelime girdim. Çoğu karpuz, kavun gibi kısa kelimeler. Bir kaç tane de uzun var. Meyveler, eşyalar, hatta anne baba dede nene isimleri vs. de koydum. Bizim isimlerimizi görünce tanıyorlar çünkü. Harfleri de tanıyorlar ama henüz bilmedikleri kelimeleri okuyamıyorlar.
İşte bu 20-30 kelimeden birini rastgele seçip tepeye yazıyorum. Hemen altına bu kelimedeki harf kadar buton koyup her birine bir harf yerleştiriyorum ve yerlerini karıştırıyorum. En sona da yanlış yazarsa silebilsin diye silme butonu koyuyorum. Çocuk bu butonlara bastıkça en altta yeni yazdığı kelime oluşuyor. Sorudaki kelimeyle yazdıkları uyuştuğunda “Yeeey” sesi çalıyor ve çocukların fotoğrafları gülen hale geliyor. Bir kaç saniye sonra fotoğraflar eski haline dönüyor. Doğru yaptıkça her ikisine birden puan veriyorum 🙂 Şimdilik böyle. Çünkü sabaha yetişsin diye bir an önce bitireyim dedim. Birine puan ver öbürüne verme kavga çıkabilir.
Vakit bulup düzeltince, kimin fotoğrafı seçili ise o yarışacak şekilde ayarlayabilirim. Şimdilik böyle iyi. Puanı okuyamıyorlar ki zaten 🙂
Apple TV’de çözemediğim ve başka şekilde üstesinden geldiğim bir sorundan daha bahsedip bitireyim. Kumanda üzerindeki gesture’ları algılayamadım bir türlü. O yüzden her şeyi butonlarla hallettim. Butonların da kötülüğü, transparan imaj kullansam da seçili olduklarında arkaları beyaz kalıyor. Bunu önleyemedim. O yüzden şöyle bir çakallık yaptım. Ekrana istediğim imajları koydum. Bunları gerektiğinde basit animasyonlarla hareket ettirebiliyorum. Bu imajların üzerine gelinemediği için -ya da ben beceremedim- ekrana görünmeyen butonlar yerleştirdim. Butonun alfasını tamamen 0 yapınca kontrol çalışmıyor. O yüzden 0.05 alfa kullandım. Belki 0.01 de yapılabiliyordur, denemedim. Bu düşük alfa değerinde buton neredeyse yok gibi oluyor ama arkasında küçük bir iz kalıyor tabi. Bu kadar kusur kadı kızında da olur deyip mevzuyu böyle bağladım.
Oyunu geliştirirsek belki store’a da koyarız ama Apple’ın developer sertifikası ücreti hala 100 dolarken zor görünüyor 🙂