
Brian Curtis
0
1226
144
Bu resmi. Caz rock efsanesi Alice Cooper'ın sözleriyle, okul yaz için çıktı.
Artık ders yok. Daha fazla okul koşusu yok. Daha fazla ödev yok. Sadece uzun, sonsuz yaz günleri görünüşte sonsuza dek sürükleniyor. Fakat çocuğunuzun bu uzun yaz aylarında meşgul olmasını nasıl sağlarsınız? Belki daha da önemlisi, çocuğunuzun bilgisayar gibi önemli bir kariyer becerisi verirken nasıl meşgul ve eğlendirildiğini düşünüyorsunuz.?
İlham arıyorsanız, endişelenmeyin. Seni korudum. Çocuğunuza bilgisayarların temellerini öğretecek bu altı projeye göz atın;.
Kivy ile Oyun veya Telefon Uygulaması Oluşturun
Python programlama dili, karmaşık sözdizimi ve öğrenilebilme kolaylığı sayesinde ABD ve Birleşik Krallık'ta bilgisayar bilimleri derslerinde öğretilen popüler bir programlama dilidir. Python'un diğer dillerin üzerindeki avantajlarından biri - MIT'in Scratch'i gibi (daha sonra başlayacağız) - geniş eklenti ve kitaplık kaynağıdır..
Kütüphaneler bir programın işlevselliğini genişletmek için kullanılır. Python için yüz binlerce insan var. Popüler kütüphanelerden biri olan Kivy, masaüstünde ve mobil cihazlarda oyun ve uygulama geliştirmeyi mümkün kılıyor.
Kivy ile iOS ve Android için Pong gibi sofistike bir mobil oyun inşa edebilirsiniz. Windows, OS X ve Linux için masaüstü oyunları ve uygulamaları bile oluşturabilirsiniz.
Üstelik Python olduğu için hala çocuğunuzun okulda öğrendiği aynı sözde sözdizimini kullanıyorsunuz..
Kivy'yi öğrenmek için iyi bir başlangıç noktası, basit bir Pong oyunu inşa ettikleri resmi Kivy belgelerinde. Burada birkaç kod satırıyla nesneleri ekrana nasıl yerleştirebileceğinizi, oyunun fiziğini nasıl kontrol edebileceğinizi ve hatta skorları takip edebileceğinizi öğrenebilirsiniz..
Bu demo oyun, MIT lisansı altında lisanslanmıştır - değiştirmeler ve kopyalamalar yapmanıza izin veren ücretsiz, izin verilen bir yazılım lisansı. Hatta Android APK'ları oluşturabilir ve Kivy oyununuzu Apple App Store'da dağıtabilirsiniz. Ancak Kivy için daha rehberli bir eğitim için Richard Jones'un PyCon Montreal konuşmasını inceleyin.
Kivy'yi Linux'a kurmak kolaydır. Debian tabanlı bir dağıtım kullanıyorsanız, bunu yapın..
sudo eklenti apt-repository ppa: kivy takımı / kivy
sudo apt-get kurulum python-kivy
OpenSUSE, Gentoo ve Fedora için Ubuntu'nun nasıl kurulacağı ile ilgili talimatlar burada bulunabilir..
Çizikli Kodun Temellerini Öğrenin
Henüz resmi bir bilgisayar bilimi dersi almayan daha küçük bir çocuğunuz varsa ve onları programlamaya tanıtmak istiyorsanız, OS X, Windows ve Linux için uygun olan Scratch'i yüklemeyi düşünebilirsiniz..
Sıfırdan Sıfırdan Programlama Nasıl Yapılır! Sıfırdan Programlama Çocuklara Nasıl Öğretilir! size kazançlı bir programlama kariyeri kazandıracak bir programlama dili değil gerçekten iyi bir programcı olmak için yıllarca kendini adamış çalışmaları alabilir; Öyleyse, yarın işe almak için, bugünden başlayacak doğru dili seçmenin bir yolu var mı? . Ama bu iyi. Bunun için tasarlanmadı. Aksine, bilgisayar biliminin arkasındaki temel kavramları öğretmek için kullanılır.
Çizik, görsel bir programlama dilidir, bu nedenle kod yazmak yerine, basit programlar oluşturmak için yapı taşlarını sürükleyip bırakın. Bu, çocuğunuza yazılımın nasıl oluşturulduğunu ve şartlı, yinelemeli ve özyinelemeli gibi programlama kavramlarını öğretmenin basit ve kolay bir yolunu sunar.
Fakat Scratch'ın basitleştirilmiş doğasının sizi aldatmasına izin vermeyin. Sadece kolay olduğu için, yarattıklarında kısıtlı olduğun anlamına gelmez. İnsanlar oyunlardan - çok oyunculu bir pong oyunu gibi - animasyonlara - tuhaf bir tebrik kartı gibi - etkileşimli sanata her şeyi inşa ettiler.
Ve başyapıtınızı bitirdikten sonra, 'beğeniler' ve yorumlar yoluyla geri bildirim ve teşvik sağlayabilecek konuksever Scratch topluluğu ile paylaşabilirsiniz..
Ve orada sıkılırsanız, Kodlamada Programlamadan Korkmak için Scratch'ı kullanabilirsiniz. Kod Programlama Korkuyor Arduino için Scratch deneyin? Arduino için tırmalamak deneyin karalamak 4 arduino benim gibi acemiler, görsel bir arayüz ile heyecan verici arduino projeleri oluşturmak için izin verir. Çok basit, eğlenceli ve programlamanın temel yapı taşlarını size öğretecek. Arduino tabanlı Nesnelerin İnterneti projeleri. Temiz, doğru?
Ahududu Pi ile Evinizi Kontrol Edin
Ahududu Pi Linux çalıştırabilen küçük, uygun fiyatlı, kredi kartı boyutunda bir bilgisayardır. Bu arada, aynı zamanda Windows 10 Windows 10 soyulmuş bir sürümünü çalıştırabiliyor - Yakında bir Arduino geliyor? Windows 10 - Size Yakın Bir Arduino'ya geliyor musunuz? , bina için tasarlanmış bir şeylerin interneti projeler.
Pi, art arda sanat enstalasyonlarından web sunucularına, hatta Minecraft sunucularına kadar her şeyi çalıştırabildiğini gösteren çok yönlü bir canavardır..
Gözüme çarpan Ahududu Pi için bir uygulama James Bruce'un ev otomasyon projesiydi Ahududu Pi ve Arduino ile Ev Otomasyonu Rehberi Ahududu Pi ve Arduino ile Ev Otomasyonu Rehberi Ev otomasyonu pazarı, birbiriyle uyumlu ve pahalı olan pahalı tüketici sistemlerine su bastı. yükleyin. Bir Ahududu Pi ve bir Arduino'nuz varsa, temelde aynı şeyi başarabilirsiniz…. Evin aydınlatmasını kontrol etmek için geniş bir teknoloji smorgasbord teknolojisi kullanıyor.
Bruce, MongoDB'deki her şeyi kullanır (ki burada Taylor Bolduc tarafından ustalıkla açıklanmıştır) Bir MongoDB Veritabanının Verilerinizi Daha İyi Düzenleyebilmesi Bir MongoDB Veritabanının Verilerinizi Nasıl Daha İyi Düzenleyebileceği MongoDB ("nemli" den) çapraz platformlu bir belge tabanlı veritabanı olarak kullanılır. MySQL'e bir alternatif.Ama bu ne anlama geliyor?), JavaScript web geliştirme çerçevesine NodeJS Node.JS nedir ve neden umursamalıyım? [Web Geliştirme] Düğüm.JS Nedir ve Neden Umursamalıyım? [Web Geliştirme] JavaScript, tarayıcıda çalışan, yalnızca istemci tarafında çalışan bir programlama dilidir, değil mi? Artık değil. Node.js, sunucuda JavaScript çalıştırmanın bir yoludur; ama bu çok daha fazlası. Eğer…, Arduino'ya. Ama her şeyin merkezinde Linux ve Ahududu Pi var..
Bu projenin çok disiplinli doğası, çocuğunuzu JavaScript, sistem yönetimi ve elektronik gibi bir dizi bilgisayar bilimi ile tanıştıracağı anlamına gelir..
Daha önce Ahududu Pi ile oynamadıysanız ve süt dişlerinizi içine sokmak için daha basit bir proje arıyorsanız, Christian Crawley'nin Ahududu Pi Kablosuz Yazıcısını Ahududu Pi ile Kendi Kablosuz Yazıcınızı Yapın Yazıcı Ahududu Pi ile Daha az kablo, yazıcınızı nereye koyabileceğinizle ilgili esneklik - kablosuz baskı bir kazan-kazan demektir. Eski bir yazıcınız yoksa. Ahududu Pi kurtarmaya! .
Bir Twitter Bot Oluştur
Bu bir sır değil Python programlama dilinin büyük bir hayranıyım.
Bu sadece çok güçlü ve çok yönlüdür ve geniş eklenti ve kitaplık kaynağı neredeyse her şeyi yapabileceğiniz anlamına gelir.
Python bir gibi hissetmenizi sağlar süper kahraman. Sadece bir şey düşünün ve şansın yüksek Python ile yapabilirsiniz. Ama sadece oyunlardan ya da Ahududu Pi ev otomasyon sistemlerinden bahsetmiyorum. Mevcut sosyal ağ sitelerine dayanan uygulamalar bile oluşturabilirsiniz.
Facebook. LinkedIn. Heyecan. Hepsinde API (Uygulama Programlama Arabirimleri) API Nedir ve Açık API'ler İnterneti Nasıl Değiştirir? API Nedir ve Açık API'ler Nasıl İnterneti Değiştirir? Bilgisayarınızdaki programları ve ziyaret ettiğiniz web sitelerini nasıl konuştuğunu merak ettiniz mi birbirlerine? bu sitelerin verilerini ve işlevselliğini kendi programlarınız dahilinde kullanmanıza izin verir. İlk başta, oldukça korkutucu olabilirler. Ama onlar değil.
Onlara hakim olmak birkaç saatlik işe değer olabilir, ancak belirli bir API'yi nasıl kullandığınızı öğrendikten sonra, inanılmaz şeyler yapabilirsiniz..
Örneğin, geliştiricilerin verilerine üç ayrı API üzerinden erişebilmelerini sağlayan Twitter'ı ele alalım. Her tweet'e sınırsız, gerçek zamanlı erişim sağlayan, ancak binlerce dolara ulaşan dik bir fiyat etiketi ile gelen Firehose API'sı var..
Ayrıca kullanımı ücretsiz olan iki API vardır. Twitter, tweet'leri gerçek zamanlı olarak izlemenizi sağlayan Streaming API'sine sahiptir, ancak her tweet'i alacağınızın garantisi yoktur. Twitter veritabanında arama yapmanızı sağlayan Arama API'sı da var, ancak yapabileceğiniz sorguların sayısı oldukça sınırlı..
Streaming API özellikle ilginçtir, çünkü tweet'lere gerçek zamanlı olarak yanıt verebilecek uygulamalar oluşturabilirsiniz. İnşa edebileceğiniz sayısız proje var..
Örneğin, James Bruce'un Arduino'lu LED küpünü alabilirsin Gelecekten Gelmiş gibi Görünen Titiz bir Arduino LED Küpü Nasıl Gelecekten Geldi Olduğunu Görünen Titiz bir Arduino LED Küpü Nasıl Yapılır? Bazı yeni başlayanlar Arduino ile uğraşıyorlar, ancak biraz kalıcı ve başka bir harika seviyede bir şey arıyorlar, mütevazi 4 x 4 x 4 LED küp…… ve biri belli bir kelime içeren bir tweet attığında onu aydınlatır. Ya da birileri ne zaman yayınlarsa spoiler tweets eden bir Twitter botu kurabilirsin “Sadece izlemeye başladım Game of Thrones“. Veya Wolfram Alpha API'sini de içeren basit bir soruyu yanıtlamak için de kullanan bir bot oluşturabilirsiniz. “Burkina Faso'nun başkenti nedir”.
Linux'ta, popüler Python programlama dilini kullanarak Twitter API'lerinden ve PIP paket yöneticisi aracılığıyla indirebileceğiniz Tweepy kitaplığından yararlanabilirsiniz. Bunu elde etmek için komut satırınızı açıp şunu yazmanız yeterlidir:
pip tweepy yükleyin
PIP paket yöneticisini kurmamışsanız, endişelenmeyin. Tweepy'i manuel olarak da yükleyebilirsiniz. Bunu yapmak için Git'in yüklü olması gerekir.
git klonu https://github.com/tweepy/tweepy.git
cd tweepy
python setup.py kurulumu
Size Tweepy'i nasıl kullanacağınızı öğretecek çevrimiçi ders sıkıntısı yoktur. Bulduğum en iyi şey, beraberinde video öğretici ile birlikte gelen PythonProgramming.net'teydi..
Olanaklar sınırsızdır ve Twitter API'sinin Tweepy ile kullanımı çok kolay olduğu için, Bilgisayar Bilimleri derecesine ihtiyacınız yok. Sadece Python'u tanımanız ve harika bir fikriniz olması gerekiyor..
Bir Web sitesi kurmak
Çocuğunuza kod yazmayı öğretir ve onlara ne yapmak istediklerini sorarsanız, muhtemelen mobil bir uygulama diyeceklerdir. Sıfırdan bir iPhone Oyunu Nasıl Oluşturulur? Sıfırdan bir iPhone Oyunu Nasıl Oluşturulur? kendi iPhone oyunlarını yapabilir. İsteyen durdurmak ve yapmaya başlamanın zamanı geldi. . Çünkü - haydi yüzleşelim - ne çocuk bir sonraki Flappy Bird yapmak istemiyor Flappy Bird'ün Kısa Hikayesi [Garip ve Harika Web] Flappy Bird'ün Kısa Hikayesi [Garip ve Harika Web] Birkaç mobil oyun kolektif bilincine giriyor ana kuşağında Flappy Bird'ün yaptığı gibi. İnternet folkloruna giriyor, ancak bu videolar viralliğini korumaya yardımcı olacak. ? Ancak bundan sonra, muhtemelen bir web sitesi oluşturmak istediklerini söyleyecekler.
Sorun şu ki, web için yapmayı ilk öğrenirken, baş döndürücü teknolojilerle karşılaşıyorsunuz. Yalnızca SSH Web Hosting İçin İmzalanan denenmiş ve test edilmiş LAMP yığınını kullanmanız gerekir mi? Endişelenmeyin - Kolayca Herhangi Bir Web Yazılımını Yükleyin Sadece SSH Web Hosting için Kayıtlı Mısınız? Endişelenmeyin - Kolayca Herhangi Bir Web Yazılımını Kurun Linux'u güçlü komut satırından çalıştırmakla ilgili ilk şeyi bilmiyor musunuz? Daha fazla endişelenme. , hangi Linux, Apache, MySQL ve PHP kullanıyor? Ya da belki biraz daha modern bir şey (ve modaya uygun diyebilirim) Ruby on Rails, Flask veya Node.js gibi?
Daha da kötüsü, geniş bir teknoloji büfesi, bir Labrador Retriever'ın tüm odağıyla çerçeveler ve dil arasında uçarken, bir yolculuk görevlisi kodlayıcısı olduğunuzda inanılmaz derecede rahatsız edici olabilir.
Almak için çok fazla.
Ancak, web siteleri oluşturmayı öğrenmenin temelde bir şey olduğunu hatırlamanın önemli olduğunu düşünüyorum. multidisipliner.
Herhangi bir web sitesinin temeli HTML'dir. Ardından, liberal bir CSS sıçramasıyla iyi görünmesini sağlarsınız. Temel yapı taşlarını indirdikten sonra, etkileşim ve dinamizm eklemeye başlarsınız. HTML ve CSS’lerinizi JavaScript ve JQuery ile canlandırmayı öğrenmeye başlarsınız.
Ardından, kalıcılık ve daha sonra bunları almak için bir veritabanında bir şeyler saklama gereksinimi hakkında bilgi edinebilirsiniz. Yani, MySQL ve belki de MongoDB hakkında bilgi edinin. Şemalar, atomizasyon ve ilişkiler hakkında bilgi edinirsiniz..
Daha sonra hepsini PHP, Python, JavaScript (Node.js ile) veya Ruby gibi bir sunucu tarafı programlama diliyle birleştirmeyi ve bunu bir sunucuda (genellikle Linux) barındırmayı, ustalıkla yapılandırılması gereken bir sunucuda barındırmayı öğrenirsiniz. güvenli ve güvenilir kalmasını sağlamak.
Yapmaya çalıştığım nokta, web siteleri kurmayı öğrenmenin çok farklı bir teknolojiden oluşan bir 'yığın' öğrenen ve daha sonra bunları zihinsel olarak birbirine bağlayan ve birbirleriyle nasıl çalıştıklarını anlayan kişiye bağlı olan multidisipliner bir süreçtir..
Çocuğunuza HTML, CSS ve JavaScript öğretmek için CodeAcademy Codecademy'e kaydolun - Code Codecademy'nin En Kolay Yolu Hands Down - Code Codecademy'nin Kodunu Kolaylaştırmanın En Kolay Yolu Codecademy'nin temellerini inceleyen yeni bir web sitesidir. JavaScript. Çok uzun zamandır olmamakla birlikte, site zaten bu teknolojilerin her birini etkileşimli zorluklarla açıklayan çok fazla vızıltı oluşturuyor. Anladığım sonuçları ve geri bildirimleri aldığınız için, bu, motivasyonun sürdürülmesi için harika.
Elbette, CodeAcademy, CSS veya JavaScript kadar büyük ve karmaşık bir şeyi kapsamlı bir şekilde öğretemez. Bunun için çocuğunuzu iyi bir referans materyali ile tanıştırmanız gerekir. Hatalı veya düpedüz yanlış bilgiler içerdiği bilinen W3Schools'tan kaçınırdım. Mozilla Geliştirici Ağı, HTML, CSS ve JavaScript ile ilgili her şey için eksiksiz, doğru ve ulaşılabilir bir kılavuzdur ve şiddetle tavsiye edilir..
Bir arka uç teknolojisi seçmek söz konusu olduğunda, çocuğunuzu yumuşak bir öğrenme eğrisi olan PHP'yi öğrenmeye teşvik ediyorum. Bunun için bir sürü dökümantasyon var. Üstelik Ubuntu’da bir LAMP sunucusu kurmak sadece bir mesele veya 'sudo apt-get install lamp-server ^' yazmanız yeterlidir..
CodeAcademy'nin bir PHP kursu vardır. Tuts + ve Lynda da öyle. Hepsi harika. Yine de, şahsen Larry Ullman'ın tavsiyesini alırım. Dinamik Web Siteleri için PHP ve MySQL, Amazon'da yazı yazarken 28.90 dolara satılıyor. Kendimin bir kopyasına sahibim ve PHP programlama diliyle ulaşılabilir, erişilebilir, web geliştirme rehberi olarak buldum..
Ortalama bir gencin bu kitabın içeriğini kavrayabileceğinden şüphem yok.
Bunu yapmazsanız, MakeUseOf PHP'yi (gerçekten sizin tarafınızdan yazılmış) bir kılavuz yayımladı, burada ücretsiz olarak okuyabilir. PHP ile İnşa Etmeyi Öğren: Crash Kursu PHP ile İnşa Etmeyi Öğren: Crash Kursu PHP, Facebook ve Wikipedia'nın kullandığı dildir. günlük milyarlarca talebe cevap vermek; insanlara web programlama öğretmek için kullanılan fiili dil. Güzel, basit ama zekice güçlü. .
Ama her şeyden önce, çocuğunuza web için yapmayı öğrenmenin bir öğrenme süreci, ve bir zaman ve özveri alır. Çocuğunuzu motive etmek için, onlara doğru çalışabilecekleri bir proje belirlemek isteyebilirsiniz..
Bir öğrenci geliştiricisi tarafından inşa edilebilecek birçok basit web sitesi vardır. Belki bir ziyaretçi defteri veya Twitter gibi bir mikroblog sitesi.
Kodlamayı öğrenmenin en göz ardı edilen yönlerinden biri geribildirimdir. Bir şey inşa ettiklerinde, onları Github'da paylaşmaya ikna etmeyi düşünün, böylece daha deneyimli geliştiriciler eleştirebilir ve rehberlik sunabilir. Programlamayı Öğren alt sınıfı da bunun için oldukça iyidir..
Ve sonra belki de çocuğunuza kendi Linux web sunucularını nasıl barındıracağını ve yönettiğini Dijital Okyanus damlası satın alarak öğretin DigitalOcean: Yeni Başlayanlar İçin En İyi Yönetilmeyen VPS Sunucusu DigitalOcean: Yeni Başlayanlar İçin En İyi Yönetilmeyen VPS Sunucusu Tüm sunucu yönetimini kendiniz idare etmek için, işte DigitalOcean'ın en iyi seçeneğinizin nedeni budur. , bu da ayda 5 ABD Doları kadar düşük bir maliyete mal oluyor.
Bir Kod Kulübüne katılın
Tamam, burada hile yapıyorum.
Bu bir proje değil, kendi başına. Fakat çocuğunuza bilgisayar işlemenin temellerini öğretmek istiyorsanız ve bunu daha yapılandırılmış, sosyal bir şekilde yapmak istiyorsanız, o zaman onları bir kod klübüne götürmelisiniz..
Bunların mevcudiyeti elbette yaşadığınız yere göre değişecektir. İngiltere'de var Kod Kulübü, 9 ile 11 yaş arasındaki çocuklara kod yazmayı öğretmeyi amaçlayan kar amacı gütmeyen bir şirket. Kod Kulüpleri, birçok terimde ve şehirlerde bulunabilir; bu kurslar 'terimler' şeklinde düzenlenmiştir. Her terim, Scratch, HTML ve CSS ve Python gibi farklı bir programlama yönünü öğretir ve ders içeriği her terim ilerledikçe daha karmaşık hale gelir..
Kod Kulüpleri, geleneksel bilgisayarlara kıyasla elde etmek için son derece ucuz olmaları nedeniyle genellikle Ahududu Pis ve Linux’tan yararlanıyor.
Ama ya havuzun karşısında?
Amerika çok, çok fazla Code Club benzeri bir makalede bahsedilecek kuruluşlar. Ama göze çarpan bazı var.
Gates ve Zuckerberg, Code.org tarafından finanse edildi. Kod Saati Hem yetişkinleri hem de çocukları, yılda bir saatini kodlamayı öğrenerek geçirmeye çalışan proje. Ancak, ABD'de bulunan ve çoğu kütüphanelerde, topluluk merkezlerinde ve okullarda mevcut olan kapsamlı bir bilgisayar bilimi dersleri listesine ev sahipliği yaptığını biliyor muydunuz??
Fakat gerçekten çok önemli işler yapan parlak Siyah Kızlar Kodundan bahsetmeseydim, çok üzülürdüm. STEM (bilim, teknoloji, mühendislik ve matematik) alanındaki utanç verici etnik ve toplumsal cinsiyet farkını ABD'deki siyah kızlara ücretsiz bilgisayar bilimi dersleri sunarak ele almaya çalışıyorlar. Sınıflar, müsaitlik durumuna bağlı olarak birçok büyük şehirde mevcuttur. Daha fazla bilgi için Siyah Kızlar Kodu web sitesine bakın..
Kod Zamanı
Tamam millet. Yaz resmen burada. Okullar kapandı veya kapanıyor. Ne yapacaksın? Onları bir kod kulübüne götürecek misin, yoksa onlara Ahududu Pi verecek ve hayal güçlerinin onları nereye götürdüğünü göreceksin.?
Her iki durumda da, duymak istiyorum. Aşağıya bir yorum bırak ve bana bildir.
Fotoğraf Kredisi: HTML Code (Marjan Krebeji), PHP Code (Bull3t Hughes), Shutterstock ile dizüstü bilgisayar kullanmayı öğrenme