EKİBİMİZ
Dergi Yürütücüsü Serhat Bahadır KERT Danışma Kurulu Mehmet Fatih ERKOÇ Sabiha YENİ Yazarlar Hatice ATA Oktay DEMİRHAS Selin ÇETE Yonca PEHLİVAN Redaktörler Hatice ATA Selin ÇETE Yonca PEHLİVAN Grafik Tasarım & Dizgi Hatice ATA Selin ÇETE Yonca PEHLİVAN Yayıncı Yıldız Teknik Üniversitesi Eğitim Fakültesi Bilgisayar ve Öğretim Teknolojileri Eğitimi Bölümü İletişim baslatdergi@gmail.com
Merhaba, Her geçen gün teknolojinin yaşamımızda daha fazla yer edinmeye başladığı bir dönemden geçiyoruz. Renkli animasyonlar, gerçekçi bilgisayar oyunları, insansı robotlar, gelişmiş uçan araçlar ve daha birçokları her birimizin hayranlığını uyandırıyor. Hayranlık duymanın ötesinde, bu yeni teknolojilerin nasıl geliştirildiğine yönelik merakımız da günden güne artıyor. İşte, var olduğuna inandığımız bu merakı ve üretme isteğini bir adım ileriye taşımak için Yıldız Teknik Üniversitesi (YTÜ) Bilgisayar ve Öğretim Teknolojileri Eğitimi (BÖTE) Bölümü olarak Başlat dergisini çıkardık. İlk sayısını geçen yıl yayınladığımız dergimiz, geleceğin bilişim teknolojileri öğretmenleri tarafından şekillendirilmektedir. Bu sayıdaki yolculuğumuza, uzayın sırlarını keşfederek başlayacağız, ardından, Scode ve blok temelli programlama çalışmalarıyla bir yazılım geliştirme sürecinin vazgeçilmez öğesi olan programlama dillerinin temellerini inceleyeceğiz. Kendi elektronik devrelerimizi oluşturmak için Ardunio setlerinin kullanımı, Tinkercad ile modelleme işlemleri, 3 boyutlu yazıcılar, hayatımıza yeni giren teknolojik araçlar ve daha birçok ilginç ve farklı konuya değineceğiz. Ayrıca, bir yazılımcıyla röportaj yaparak programlamaya başlama sürecine ve kendi çalışmalarına ilişkin bilgiler alacağız. Kısacası, teknolojinin sadece kullanıcısı olarak kalmamak, onu üretmek ve tüm üretim süreçlerinin heyecanını yaşamak için ipuçları bulacağız. Bilgisayar biliminin derinliğini anlamanıza ve hayallerinizi şekillendirmenize katkı sunacağına inandığım dergimizin hazırlanmasında emekleri geçen tüm YTÜ BÖTE bölümü öğrencilerimize teşekkür ederim, keyifle okumanız, keyifle üretmeniz dileklerimle.. Doç. Dr. Serhat Bahadır KERT —————————————— Yıldız Teknik Üniversitesi Eğitim Fakültesi Bilgisayar ve Öğretim Teknolojileri Eğitimi Bölümü Başkanı
UZAYIN SIRLARI UZAY Uzay deyince aklınıza neler geliyor? Boşluk, gezegenler, yıldızlar, karadelikler ve daha fazlasından oluşan ‘büyülü bir atmosfer’ uzay. Evrenin sınırlarını henüz insanlık olarak bilmiyoruz. Evrenin nasıl oluştuğuna dair birçok görüş bulunsa da bilim insanları yaklaşık, 15 milyar yıl önce meydana gelen büyük bir patlamanın evrenimizi oluşturduğuna inanmaktadırlar. Big Bang terimi ile bu büyük patlama tanımlanmaktadır. 15 milyar yıl önce, maddenin, enerjinin, uzayın ve zamanın bir saniye içinde oluştuğu düşünülmektedir. 15
milyar yıl önce meydana gelen çok büyük bir patlama (Big Bang) sonrası trilyonlarca santigrat derecelere ulaşan büyük bir sıcaklık oluşmuştur. Hiç kimse Big Bang’e neyin sebep olduğunu bilememektedir, çünkü; patlama öncesi zamana bakabilmek imkanı yoktur. Ancak; patlamadan hemen sonra evrenin, sıkıca kümelenmiş parçacıklardan oluşan, yaklaşık bir bezelye büyüklüğündeki bir pakete dönüştüğü düşünülmektedir.
KARA DELİK Kara delik; uzayda bulunan ve ışığın dahi kaçamadığı çok çok güçlü bir çekim gücüne sahip olan kozmik gökcismidir. Einstein’ın genel görelilik kuramıyla tanımlanmış olan kara delikler ışık yaymadığı için kara olarak nitelendirilir. Dünya'ya en yakın kara deliğin kod ismi V4641 Sagitarii ve ilk bulgulara göre 1.600 ışık yılı uzaklıkta olduğu belirlenmiş.
YILDIZLARIN VEDASI Yıldız; gökyüzünde görülen ağırlıklı olarak hidrojen ve helyumdan oluşan ışıklı cisimlere genel olarak verilen addır. Gece gökyüzüne baktığımız zaman gördüğümüz sayısız ışıklı nokta aslında bizim dünyamızdan, hatta güneşimizden çok daha büyük birer güneştir. Fakat bize çok uzak oldukları için küçük bir nokta gibi görünürler. Güneş dünyamıza en yakın yıldızdır. Güneşten gelen ışıklar bize 8 dakika içerisinde ulaşır, hal böyle iken geceleri gördüğünüz bazı yıldızların ışıkları belki de milyonlarca yıl önce ölmüş bir yıldızın ışığı olabilir. Yaşadığımız gezegen ve evrenin henüz bir sürü sırrı çözülmüş değil. Belki bizden çok uzaklarda yeni dünyalara açılan kapılar var. Bu kapıları tek tek açmak ve sırları çözmek için astronot olmaya ne dersin?
GEZEGENLER Dünyamız güneş sistemi içerisinde yer alır. Güneş Sistemi’nde 8 tane gezegen, en az 10 tane de cüce gezegen vardır. Cüce gezegenlerin sayısı tam net değildir bu sayı her geçen gün yapılan gözlemlerle artabilir. Örneğin uzun bir süre gezegen olarak bildiğimiz Plüton’un aslında cüce bir gezegen olduğunu öğrendik. Her gezegenin kendine has özellikleri vardır. Dünya insanların yaşaması için en elverişli koşullara sahip gezegendir. Bizim küçük sevimli dünyamız tam olarak 4.54 milyar yaşında. Güneş Sistemi'nde güneşe en yakın üçüncü gezegen ve güneş sistemindeki en yoğun ve beşinci büyük gezegendir. Gelin şimdi diğer gezegenlerin bize çok ilginç gele-
cek özelliklerine bakalım. Merkür • 4,879 kilometrelik çapıyla Güneş Sistemi’ndeki en küçük gezegendir. • Merkür’de bir yıl 88 gün sürer, bir Merkür günü ise 176 Dünya gününe eşittir. • Merkür, Güneş’e en yakın gezegen olsa da Güneş görmeyen tarafında ısı -170°C’ye kadar düşmektedir. Venüs • Dünya’ya boyut olarak çok benzediğinden Dünya’nın kardeş gezegeni olarak da adlandırılır. • Diğer tüm gezegenlerden farklı olarak saat yönünde dönmektedir. Güneş batıdan doğar, doğudan batar. • Venüs, ortalama 462 °C yüzey sıcaklığı ile Güneş Sistemi’nin en sıcak gezegenidir.
Mars • Mars’a gönderilen 39 araçtan sadece 16’sı başarılı olmuştur. • Güneş Sistemi’nin en yüksek dağı (21 kilometre) Mars yüzeyinde bulunmaktadır. • Güneş Sistemi’nde Dünya’dan sonra yaşama en uygun gezegen Mars’tır. Jüpiter • Jüpiter’in 67 adet uydusu bulunmaktadır. • Jüpiter bir gaz devidir, yani kayaç bir yapı yerine gazlardan oluşmaktadır. • Jüpiter’in kütlesi Güneş Sistemi’ndeki diğer tüm gezegenlerin toplam kütlesinden 2,5 kat daha büyüktür. Satürn • Çıplak gözle Dünya’dan gözlemlenebilen 5 gezegenden biridir. • Satürn üzerinde hızı saatte 1,800 kilometreye kadar ulaşan rüzgarlar bulunmaktadır.
Satürn, Güneş Sistemi’ndeki yoğunluğu en düşük gezegendir. Uranüs • Uranüs’ün ekseni 98 derece eğiktir. Dünya büyüklüğünde bir gezegen ile çarpışması sonucu eksenin kaydığı düşünülmektedir. • Uranüs, Güneş Sistemi’nin en soğuk gezegenidir. Yüzey sıcaklığı 224°C’dir. • Gezegenin bilinen 13 halkası vardır. Bu halkalar Satürn’ün halka sistemi gibi geniş ve belirgin değildir. Neptün • Plüton’un gezegen statüsünün alınmasından sonra Güneş Sistemi’ndeki Güneş’e en uzak gezegendir. • Neptün’ün Güneş etrafında bir turunu tamamlaması 164.8 Dünya yılı sürmektedir. • Güneş’ten uzaklığı tam olarak 30 AU, yani 4,503,000,000 kilometre•
Eğitici Bir Uygulama ScodeAPP Nedir? Scode ile ilgi alanınıza göre oluşturulmuş senaryolarla kendi yazılımlarınızı yapmayı eğlenceli bir hale dönüştürüyor. Hem algoritma hem de programlama dili eğitimi sağlayan mobil platform için tasarlanmış ücretsiz bir uygulama. Kurgulanmış senaryolarla yazılım öğrenimi sağlamayı amaçlayan bu uygulamada şimdilik 3 farklı senaryo bulunuyor: Başkomutan, Teknik
Direktör, Takım Koçu. Kullanıcıların bu 3 senaryonun her birinde ilerlemeleri için içerisinde programlama bilgisi de barındıran sorulara doğru yanıtlar vermeleri gerekiyor. Uygulamaya girdiğinizde hesap oluşturma sayfası karşımıza çıkıyor. Buradan üye olabilir ya da üye olmadan ilerleyebilirsiniz. Uygulamada şu an için sadece “Python” programlama dili var. Onu da seçerek ilerliyoruz.
Adım adım hikayeler karşımıza çıkıyor, her birinin amacı farklı. Antrenman senaryosunun amacı; algoritma mantığını öğrenmek. Algoritma, bir problemin çözümünde izlenilecek yoldur ve tüm programlama dil-
lerinde geçerlidir. Uygulamada seviyeleri atladıkça diğer senaryolara ilerliyorsunuz. İlk Adım kısmında Python eğitimine giriş yapılıyor. Diğer senaryolarda ise Kontrol Yapıları, Fonksiyonlar ve Modüller kurgulanmış.
Antrenman senaryosuna tıkladığınızda karşınıza kodlama bilginize göre bir yönlendirme sayfası çıkıyor. Yeni başlıyorsanız Algoritma Eğitimi ile ilerlemeniz programlama dilini öğrenmeniz açısından daha faydalı olacaktır.
Seçim yaptığınızda karşınıza etkinlik adımları çıkıyor ve her adımın talimatları var. Birinciden başlayıp ilerleyebilirsiniz. Verilen talimatlar doğrultusunda sorulara cevap vermeniz gerekiyor.
Uygulamanın sorduğu sorulara yanlış cevap verdiğinizde ekrana bunun uyarısı geliyor, doğru cevapta diğer soruya geçiyorsunuz ve başarı pu-
anları topluyorsunuz. İlerlediğinizde her bölümde de cevaplarınız için puan kazanıyorsunuz. Uygulamada, önceki bölümleri tamamlamadan
Bu eğlenceli ve eğitici uygulamayı indirerek rahatlıkla kullanabilirsiniz. Bir göz atın deriz. iyi kodlamalar!
TIKLANMAYA
Microsoft, Google gibi pek çok büyük firmaların desteklediği Code.org keyifli bir şekilde algoritma ve programlamayı öğrenmek amacıyla hazırlanmış bir web sitesi veya portaldır.
Sisteme üye girişi ile girilebiliyor. Bu sayede çocuklar alıştırmalarına kaldıkları yerden devam edebiliyorlar. Çalışmalarını tamamlayan öğrencilere bir Code.org Sertifikası veriliyor.
SpriteBox her platformda çalışan ücretsiz bir uygulama. Yön ve zıplama tuşlarını kullanarak normal bir oyun gibi uygulamayı oynamaya başlayabilirsiniz. Uygulama kendi içinde başlangıç yönergeleri-
ni veriyor. Açılan kod satırına boşluk bırakabilir ya da yön tuşları ile istediğiniz malzemeyi ekleme yaparak oyuna kaldığınız yerden devam edebilirsiniz.
DEĞERLER
Code.org tarafından geliştirilen CodeCombat oyunu, Python, JavaScript ve Lua dillerinin öğretimi için hazırlanmış web tabanlı bir strateji oyunudur. Türkçe dil desteği de bulunan oyun öğrencilere
“Oyun oynayarak kodlamayı öğren” sloganıyla kodlamada gösterilecek başarılı bir platformdur. Siz de hem oyun oynayıp hem kodlamak isterseniz CodeCombat’a mutlaka bir göz atın.
Lightbot İle Kodlama Saati! Light-bot programcılık yeteneklerini sınamak veya geliştirmek isteyenlerin hoşuna gidecek bir oyun. Oyun özellikle modüler programlama, alt-program kullanım mantığı-
nın oturması açısında çok faydalı. 12 ayrı seviye ve bu seviyelerin kendine ait bölümlerinden oluşuyor. Ayrıca Oyunu hazırlayan Danny Yaroslavski 17 yaşındaymış.
TIKLANMAYA
BotLogic.us çocuklar ve yetişkinlere, karmaşık programlama problemlerinin üzerinden gelmek için programlama çözümlerini eğlenerek öğreten bir eğitsel bulmaca
oyunudur. Siz de hem eğlenmek hem öğrenmek hem de ödüller kazanmak istiyorsanız Botlogoc’i mutlaka ziyaret edin.
MIT tarafından geliştirilen platform, çocukların sürükle bırak yolu ile Android telefonlar için kendi uygulamalarını hazırlamasını sağlıyor.
APP Inventor ile yapılan uygulamaları isterseniz Google Play’e de yükleyebilirsiniz.
DEĞERLER
Programlamayı destekleyici oyunlarımızdan bir tanesidir. Bu oyun da 90 farklı seviye vardır. Öğrenciler adım adım seviye geçerek programlamayı muz toplayarak
öğrenmeye çalışırlar. Code Monkey sadece web tabanlı çalışan bir platformdur. Bu web platformunda kod komutları İngilizce’dir.
Scratch, ABD’de bulunan MIT’nin geliştirdiği, 8-16 yaş arası çocukların kullanımına göre tasarlanmış oldukça basit bir arayüze sahip programlama ortamıdır. Gelenek-
sel programlama dillerinin aksine kullanıcı, istediği fonksiyonları fare ile tıklayıp sürükleyerek animasyonlar, oyunlar ve hikayeler yaratabilirsiniz.
ASCII KODLARI Kod 065 066 067 068 069 070 071 072 073
Chr A B C D E F G H I
Kod 074 075 076 077 078 079 080 081 082
Chr J K L M N O P Q R
Kod 083 084 085 086 087 088 089 090
Chr S T U V W X Y Z
Haydi Başlayalım! ASCII kullanarak aşağıda bulunan kelimeleri kodla bakalım… BAŞLAT DERGİSİ MAKER ROBOTİK
PROGRAMLAMA STEPHAN HAWKING ELON MUSK YILDIZ TEKNİK ÜNİVERSİTESİ TASARIM İNTERNET BILL GATES UZAY
BU SAYFA SENİN Kimsenin anlamadığı bir günlüğün olmasını ister misin? ASCI karakter kodlarını kullanarak günlüğünü yazmaya başla !
Tinkercad Nedir? Tinkercad, herkesin kolayca kullanabileceği çevrimiçi 3D tasarım ve 3D baskı uygulamasıdır. Tinkercad hayal ettiklerinizi dakikalar içerisinde tasarlamanızı sağlar. Tasarımcılar, hobi amaçlı kullanıcılar, öğrenciler veya çocuklar bu uygulamayı kullanarak oyuncak, prototip, ev dekoru modelleri ve mücevher tasarımı yapabilirler. Kendi tasarımlarınızı yapmaya başlamak istiyorsanız ücretsiz bir hesap açıp profilinizi oluşturabilir, yaptığınız modelleri kayde-
dip daha sonra üzerlerinde tekrar oynayabilirsiniz. Ayrıca profilinizi açtıktan sonra yaptığınız modelleri paylaşabilir, paylaşılmış başka modelleri kullanabilirsiniz. Böylece aslında üzerinde oynayabileceğiniz bir sürü modele de sahip oluyorsunuz. Oluşturduğunuz modelleri 3 boyutlu yazıcılar için indirebilir ve basabilirsiniz. Böylece bu basit programı ve 3 boyutlu yazıcıları kullanarak aklınızdaki fikirleri hızlı bir şekilde gerçeğe dönüştürebilirsiniz.
ADIM ADIM
1
Yapacağımız etkinlik basit bir “3D Anahtarlık Tasarımı” projesidir. Bu adımları uyguladığınızda 3D Printer’dan kişisel anahtarlıklarınızı çıkarabilirsiniz. Öncelikle TinkerCAD’e üye olmanız gerekiyor. Üyelik işlemi ücretsizdir, üyelik işlemini gerçekleştirdikten sonra giriş yaparak sayfanıza ulaşabilirsiniz. Sonrasında açılan sayfada Yeni Tasarım Oluş-
tur diyerek çalışmanıza başlayabilirsiniz. Yeni Tasarıma başladığınızda karşınıza gelecek ekran bu şekildedir. Bu alanı çalışma masanız olarak da görebilirsiniz. Tasarımlarınızın hepsini bu alanda yapacaksınız. Pencerede sağda gördüğünüz şekiller, tasarım yapmak için kullanıcıların ihtiyacı olan temel şekillerdir. Biz de bu şekiller yardımı ile, projemizi tasarlayacağız.
2
İlk olarak düzlemimize, sürükle bırak yöntemi ile bir kutu ekliyoruz. Kutuyu seçip alana tıkladığınızda kutu eklenmiş oluyor. Gördüğünüz gibi kutu ile ayarlar da beraberinde gözüküyor. Burada şeklimizi istediğimiz gibi biçimlendirebiliriz. Bizim yapacağımız uygulamada şeklimizin bir anahtarlık boyutuna gelmesini istediğimiz için, sağ alttaki küçük kareye tıklayarak kutumuzu boyutlandı-
rıyoruz. Şeklimiz bir küp olduğu için gelen oranlar sabit 20.00 şeklindedir. Biz onu 40 ve 60 olarak bir dikdörtgene çeviriyoruz ve bu hale geliyor. Sonrasında ayarlamamız gereken şey, şeklin yüksekliği. Çok kalın olmasını istemediğimiz için onu da 5 birim olarak değiştiriyoruz. (Sayıları kendi isteğinize göre düzenleyebilir o şekilde bir tasarım oluşturabilirsiniz.)
3
Sağdaki şekil özelliklerinden yarıçapını biraz arttırıyoruz ve şeklimizin kenarlarını yumuşatıyoruz. Görüntüsü bu halde oluyor ve yumuşatma işlemi de opsiyoneldir, istediğiniz gibi ayarlayabilirsiniz. Şeklimize anahtarlığın geçmesi için bir delik ekliyoruz. Sağda bulunan silindir objesini düzlemimize yerleştiriyoruz. Burada dikkat etmemiz gereken silindirin “Delik” halini düzleme yerleştirmek. Ancak bu şekilde bir delik açabiliriz hazırladığımız tasarımlarda. Özellikler kısmında da cismin Katı mı yoksa delik mi olduğunu düzenleyebiliriz. Eklediğimiz silindirin sol alt karesine tıklayarak boyutunu değiştiriyoruz. 5 olarak ayarladık.
Tekrar yüksekliğini ayarlamamız gerekiyor. Hazırladığımız anahtarlıktan yüksek olmalı ki tamamen delik açılsın. Burada da yüksekliği 10 vermemiz yeterli. Silindiri delik açılmasını istediğimiz yere taşıyoruz. Sol taraftan düzlemde nasıl durduğunu kontrol ettikten sonra şeklin tamamını seçip sağ üst köşeden grupluyoruz.
4
Burada gruplamaktaki amaç şekilde delik açma işlemini gerçekleştirmek ve baskı yapılacağı zaman 3D printer’ın bu işlemi algılamasını sağlamak. Gördüğünüz gibi delik açma işlemi gerçekleşmiş oldu. Daha son-
ra sağ taraftaki şekillerden Text objesini alıyoruz. Metin kısmına anahtarlıkta yazmak istediğimiz kelime ne ise onu yazıp, boyutunu anahtarlığımıza göre istediğimiz şekilde ayarlıyoruz.
5
Biz burada sayıları yazımızın boyutuna göre 1256 olarak verdik. Yazımızın belli olması için rengini de özelliklerden değiştiriyoruz ve anahtarlığımıza taşıyoruz. Nasıl göründüğü-
nü kontrol ettikten eğer yüksekliği fazla gelirse yine değiştirebilirsiniz ve isterseniz anahtarlığa başka şekiller de ekleyebilirsiniz, nasıl tasarlamak istediğiniz size kalmış.
İşte bu kadar basit! Projemiz burada bitiyor. 3D Baskı almak için çalışmanızı indirebilirsiniz. İYİ ÇALIŞMALAR...
BLOK TABANLI KODLAMA 21. yüzyıl bilgi ve iletişim teknolojileri yeterliliklerinin kazandırılması için çeşitli uygulamalarla birlikte, programlama eğitimi ortaokul, hatta ilkokul ve ana sınıfı öğrencileri için önemli görülmeye başlanmıştır. Araştırmalar, üst düzey düşünme becerilerinin geliştirilmesini sağlamak için erken yaşta programlama eğitiminin verilmesi gerektiğini gös-
termektedir. Yazılım geliştirme süreçleri bireylerde algoritmik düşünme, problem çözme becerilerinin gelişiminin yanı sıra üst düzey düşünme becerilerinin gelişimi için önemli kabul edilmektedir. Programlama eğitimi, çocukların üretim yapabileceklerinin farkına varmalarına olanak tanıyacaktır.
Erken yaşta programlama öğretiminde ortaya çıkan en büyük engellerden biri olarak, geleneksel programlama dillerinin karmaşık yapılarından ötürü öğrencilerin programlama öğrenimine yönelik olumsuz duygu ve düşüncelere sahip olabilmeleri gösterilmektedir. Bununla birlikte günümüzde çocuklara programlama öğretiminde kullanılmaya başlanan blok tabanlı program-
lama ortamlarının çocukların derleme veya sözdizimi hatalarını önemsemeden karmaşık görsel programlar oluşturabilmesini sağlamaktadır. Böylece blok tabanlı programlama ile öğrencilerin programlama eğitimine yönelik duygu ve düşüncelerinin olumlu yönde gelişeceği düşünülmektedir. Buna örnek olarak blok tabanlı programlama ortamlarından olan Scratch’i gösterebiliriz.
“
Blok tabanlı programlama ortamları genel olarak iki ana amaç için oluşturulmaktadır. Buradaki ilk amaç “Programlama sözdizimlerini basitleştirmek ve böylece temel programlama bilgisine sahip herkesin programlama yapabilmesini sağlamaktır. İkinci amaç ise “Hedef kitlenin ilgisini çekerek ve programlama ile ilgilenen birey sayısını artırmaktır. Çünkü programlamanın hedef kitlesi, yalnızca programlama bilgi ve becerisi belirli seviyede olan bireylerle sınırlı değildir. Bu
nedenle programlama bilgi ve becerisi düşük ya da hiç olmayan bireylerin programlama öğrenmelerinde blok tabanlı programlama ortamları yararlı araçlar olarak görülmektedir. Kullanılan her programlama ortamının (App Inventor, Scratch, Alice, Looking Glass gibi) belirli hedef kitleler için ve belirli amaçlarla hazırlandıkları söyleyebiliriz. Örneğin App Inventor, Massachusetts Institute of Technology (MIT) tarafından geliştirilen Android tabanlı bir platformdur.
3D yazıcılar, bilgisayar üzerinde tasarlanmış modelleri özel malzemeler yoluyla elimizle tutabileceğimiz nesneler haline getiren cihazdır. 3D yazıcılar ile tasarlanmış sayısız ürün birçok alanda karşımıza çıkmaktadır. İşte bunlardan bazıları: Sağlık sektöründe yapay organ basım denemeleri, eksik kemik parçalarını tamamlama ve kişiye özel protez yapımı gibi araştırmalar ile geleceğin insan sağlığı anlamında çığır açan teknolojisi olarak ilerlemesini sürdürmektedir.
Moda sektöründe de kendinde bir yer edinen 3D yazıcılar ile artık hayal edilen tüm tasarımlar gerçekleştirilebiliyor. İleri görüşlü mimarlar tarafından 3D printer teknolojileri mimari alanda da kullanılmaya başlandı. Ve bu konuda yapılan çalışmalar, aynı tıp alanında olduğu gibi çok farklı şekillerde ve farklı amaçlara hitap ediyor. Sanat alanında ise 3D yazıcılar ile dünyanın her yerindeki önemli sanat eserlerinin birebir aynısının yazdırılıp daha geniş kitlelere ulaşması da sağlanabiliyor.
Ufak Tavsiyeler 1 - Tasarım Yeteneğini Geliştir 2 - Anılarını 3 Boyutlu Şekilde Sakla 3 - Odanın Dekorasyonunu Yap 4 - İşine Yarayacak İhtiyaçları Üret
FLOWLAB Flowlab, tarayıcınızda 2 boyutlu oyun yapmak için kullanabileceğiniz bir araçtır. Flowlab için tarayıcı tabanlı oyun yapma araçları arasında eğitim amaçlı da kullanabileceğiniz en iyi örneklerden diyebiliriz. Tarayıcı tabanlı olduğundan, değişiklikler yapmak çok kolaydır. Hazırladığınız oyun ile editör arasında çok hızlı geçiş yapabilirsiniz.
Yazdığınız kodları ya da hazır bir oyun yapma aracında hazırladığınız oyunu test etmek istediğinizde yaptıklarınızı hazır halini görmek için beklemek istemezsiniz. Flowlab bu konuda oldukça hızlıdır. Projeniz tarayıcı üzerinde olduğundan derlenme ve güncelleme sırasında beklemezsiniz.
Flowlab herhangi bir programlama deneyimi gerektirmez. Oyundaki basit davranışları karmaşık oyun mantığına Flowlab ile bağlayabilirsiniz.
Görsel olarak kolay tasarlandığından araçları kullanmak ve oyunda kullanacağınız hareketleri birbirlerine bağlamak kolaydır. (Şekil 1)
(Şekil 1)
Flowlab üzerinde hazırladıklarınız bulut teknolojisinde depolanır. Bu yüzden arkadaşlarınızla takım kurabilir, oyunu tamamladığınızda linkini onlarla da paylaşabilirsiniz. Flowlab aynı zamanda içerisinde çizim ve animasyon araçları da barındırır. Oyununuzda kullanacağınız dokuları ve animasyonları içerisinde bulunan araçlarla halledebilirsiniz. Flowlab’ın biraz da kötü yönlerinden bahsedecek olursak; oyun yap-
ma deneyiminizi kötü yönde etkileyen şeylerden biri de az sayıda bulunan kaynak ve öğretici videolar diyebiliriz. Bir sorununuz olduğunda bunun cevabını bulmak ya da örnek olarak hazırlanan bir oyun bulmak oldukça zor. Bunun dışında Flowlab genelde platform mekaniği kullandığından hazırlanan oyunlar arcade (atari oyunları gibi) tarzı oyunlar olmaktır.
Bunun dışında bulut tabanlı bir platformda çalışma yapmak sağlam internet bağlantısı da gerektirmektedir. Bu yüzden kötü internet bağlantıları Flowlab kullanırken sorun yaratabilir. Flowlab ilk kayıt olduğunuzda size ücretsiz 3 oyun yapmak hakkı tanıyor. Bunun yanında hazırladığınız oyunları çıktı olarak almanıza da izin vermiyor. Yani Windows, IOS
ve android üzerinden oyununuzu oynamak istediğinizde bunu yapamıyorsunuz. Indie, Education ve Studio olmak üzere 3 ekstra da üyelik çeşidi bulunuyor. Bu 3 üyeliğin 10, 24 ve 32 dolar olmak üzere ücreti var ve bu üyeliklerle sınırsız oyun yapma hakkına sahip oluyorsunuz. Bunun dışında oyununuzu istediğiniz platformda(Windows, IOS, Android) çıktı alabiliyorsunuz.
Google 2.000.000.000 kod satırı ile en fazla kod satırına sahip site olduğunu biliyor muydunuz?
Hindistan'ın Güneş Enerjisi Ağacı’nın beş evin aydınlatılması için yeterli enerji ürettiğini biliyor muydunuz?
Dünyanın en büyük medya paylaşım ağı olan Facebook’un kendi adına içerik üretmediğini biliyor muydunuz?
Sophia’nın insana en çok benzeyen robot olması sebebiyle ilk vatandaşlık verilen robot olduğunu biliyor muydunuz?
Çin’in dünyanın en büyük yüzen güneş enerjisi tarlasını kurduğunu biliyor muydunuz?
3 boyutlu yazıcılar kullanılarak yapay organ üretildiğini ve birçok insanın hayatını kurtardığını biliyor muydunuz?
Bilgisayar programcılığının temelini atan ilk yazılımcının Ada Lovelace olduğunu biliyor muydunuz?
Dünyanın en büyük taksi şirketinin olan Uber’in kendine ait bir aracı bile olmadığını biliyor muydunuz?
RÖPORTAJ
TURKCELL Zafiyet Yönetimi ve Penetrasyon Testi Uzmanı
ANIL BAŞ
Öncelikle kendinizi biraz tanıtır mısınız? Merhaba ben Anıl BAŞ. Yıldız Teknik Üniversitesi BÖTE bölümünden 2017 yılında mezun oldum. 2017 Nisan ayından bu yana Turkcell’de Zafiyet Yönetimi ve Penetrasyon Testi Uzmanı olarak çalışıyorum.
Kaç yaşından beri bilgisayar üzerine çalışıyorsunuz? Emin değilim ama 10 yaşından itibaren içli dışlıyım sanırım. Bilgisayarda temel amacım her çocuk gibi oyun oynamaktı. İlerleyen zamanlarda oyun oynama isteğinin üzerine çocukluk merakı da eklenince yazılım dünyasını keşfettim. Tüm macera “Bu tuşlara basıldığında mario nasıl hareket ediyor?” sorusu ile başladı. Sonrasında ilk “Hello World!” mesajımı ekrana yazdırdım tabi. Daha sonrasında farklı meraklar farklı yazılımlar getirdi. Lise za-
manına gelince de bu kadar ilgili olduğum bir alanı mesleğim olarak sahiplenmek istedim ve bilişim teknolojileri alanında okudum. Liseden sonra YTÜ Bilgisayar Programcılığı bölümünde ön lisans eğitimimi tamamladım. Daha sonrasında da YTÜ BÖTE lisans eğitimimi tamamladım. Öğrenciyken başladığım mesleğimle birlikte hala bilgisayar ve bilgisayar sistemleri üzerinde çalışıyorum. Bilgisayar size ne kattı neyi yaparken daha çok eğleniyorsunuz ya da keyif alıyorsunuz? Bilgisayar bana algoritmik düşünceyi kazandırdı. Bilgisayarın değdiği her alan bana eğlenceli geliyor. Bilgisayarı oyun oynamak, video izlemek için de kullanırım, yapmak için uzun süreler harcadığım ve vakit kaybettiğim günlük işlerimi yaptırmak için de kullanırım.
Kendini geliştirmekte istek kadar merak da önemli.
Kendinizi nasıl geliştirdiniz hangi aşamalardan geçtiniz? Bence kendini geliştirmekte istek kadar merak da önemli. Merak ettiğim konuları araştırmaktan keyif alıyorum. Yazılım geliştirirken karşılaştığım problemleri hep araştırarak çözüme giderim. Kendimi bu problemler hakkında çokça makale okurken buldum. Bu makaleleri okudukça karşılaştığım her konu için optimum uygulama yöntemlerini keşfettim. Bu şekilde sürekli devam eden bir süreç oluştu. Bunun yanında konferanslar ve etkinliklere katıldım. Bu
etkinliklerde farklı insanlardan farklı düşünce modelleri öğrendim. Bu işler üzerine yeni çalışmaya başlayan arkadaşlarımıza tavsiyeleriniz nelerdir? Bir öğretmenimin çok sevdiğim bir sözü vardı “acı çekerek öğrenilen konuları kolay kolay unutmazsınız.” Ben de bu sözü benimsemiştim. Her konuda önümüze çokça engeller çıkıyor önemli olan pes etmeyip sonuna kadar gitmek. Sonuna kadar gittiğimizde acı çekmiş ama öğrenmiş oluyoruz ve öğrendiklerimizi kolay kolay unutmuyoruz.
Yapacağımız etkinlik bir Arduino Projesi yapacağız. Atık ve kolay bulunabilir malzemeleri kullanarak gerçekleştireceğimiz bu proje ile bir robot tasarlayacağız.
Görü Malzeme listesi sağda gördüğünüz gibidir. Süslemek için istediğiniz objeleri kullanabilirsiniz. Bir örneği aşağıdaki görselde vardır yaratıcılığınızı konuşturun! Haydi robotumuzu yapalım !
2 Adet Mukavva Arduino UNO, Jumper Kablo 3 Adet Servo Motor 3 Adet Potansiyometre Süslemek İçin Atık Malzeme Breadboard Silikon ve Silikon Tabancası (ya da yapışkan) Makas Bilgisayar ve Arduino Programı
Robotun görünüşü için ihtiyacımız olan bir robot gövdesi, bir robot kafası ve iki tane de koldur. Bunlar mukavva kesilerek yapılır. Kafanın gövdeden daha küçük olması ve bir yüzünün açık küp şeklinde olması gerekmektedir. Çünkü o kısımlardan Servo Motor silikon ile yapıştırılacaktır. Öncelikle gövde katlandığında küp şeklini alacak şekilde çizilir. Boyu-
ROBOT GÖVDE Taslağı
ROBOT KAFA Taslağı
ROBOT KOL Taslağı (2 Adet)
tunu kendinize göre ayarlayabilirsiniz. Sonrasında mukavva kesilir. Daha sonrasında gövdeden daha küçük olan robotun kafası küp şeklinde çizilir ve kesilir. İkisi de katlanarak kenarlarından yapıştırılır. Sonra kollar uzun bir küp olacak şekilde bir ucu açık kalmak şartıyla çizilerek kesilir ve yapıştırılır. Sonucunda elimizde 4 adet parça bulunur. Kenarlarından silikon tabancasıyla yapıştırılır.
Devre kurulduktan sonra, Servo motorlar kartonlara delik açılarak silikonlanır. Öncelikle baş ve gövde vidalanır, silikon ile yapıştırılır. Sonrasında kollar bedene vidalanır ve silikonlanır. Böylece robotun görüntüsü oluşturulur. Robotun kafası, yüzü kişilerin
tasarımına bırakılır. Gözlere led takılabilir, atık malzemeler değerlendirilebilir. Robot tamamlandıktan sonra devre bilgisayara bağlanarak programın kodu atılır ve çalıştırılır. Kod diğer sayfada mevcut. Projeyi isteğinize göre geliştirip, düzenleyebilirsiniz. İyi Çalışmalar !
#include <Servo.h> int pos1 = A0; int pos2 = A1; int pos3 = A2; Servo myservo; Servo myservo2; Servo myservo3; int deger_1_1 = 200; int deger_2_2 = 200; int deger_3_3 = 200; void setup() { myservo.attach(3); myservo2.attach(5); myservo3.attach(6); pinMode(7, OUTPUT); pinMode(8, OUTPUT); } void loop() { digitalWrite(7, HIGH); digitalWrite(8, HIGH); int deger_1 = analogRead(pos1);
deger_1 = map (deger_1,0,1023,0,180); if (deger_1 != deger_1_1); { deger_1_1 = deger_1; myservo.write(deger_1); } int deger_2 = analogRead(pos2); deger_2 = map (deger_2,0,1023,0,180); if (deger_2 != deger_2_2); { deger_2_2 = deger_2; myservo2.write(deger_2); } int deger_3 = analogRead(pos3); deger_3 = map (deger_3,0,1023,0,180); if (deger_3 != deger_3_3); { deger_3_3 = deger_3; myservo3.write(deger_3); }