6 Projetos para ensinar seus filhos computação com linux neste verão

É oficial. Nas palavras de glam rock lenda Alice Cooper, fora da escola para o verão.

Não há mais classe. Não mais escola prazo. Não mais trabalhos de casa. Apenas longos dias de verão sem fim que aparentemente arrastar para sempre. Mas como você manter seu filho ocupado durante aqueles longos, os meses de Verão? Talvez mais importante, como você manter seu filho ocupado e entretido enquanto ensinando-lhes uma importante habilidade carreira, como computação?

Se você está à procura de inspiração, não se preocupe. Eu tenho você coberto. Confira estes seis projetos que vai ensinar seu filho os conceitos básicos de computação, com Linux no centro de todos eles.

Construir um jogo ou Phone App Com Kivy

A linguagem de programação Python é uma linguagem de programação introdutório favorecido ensinado nas aulas de ciência da computação nos EUA e Reino Unido, graças à sua sintaxe simples e a facilidade com que pode ser aprendido. Uma das vantagens do Python acima outras línguas - como o risco do MIT (nós vamos chegar a isso mais tarde) - é a sua ampla oferta de plugins e bibliotecas.

Bibliotecas são usados ​​para estender a funcionalidade de um programa. Há centenas de milhares deles para Python. Uma biblioteca popular é Kivy, o que torna possível o desenvolvimento de jogos e aplicativos para o desktop, e para dispositivos móveis.

Com Kivy, você pode construir um jogo para celular sofisticado para iOS e Android - como Pong - com apenas algumas centenas de linhas de código. Você pode até mesmo construir jogos de desktop e aplicações para Windows, OS X e Linux.

linuxcode-pong

E porque é Python, você ainda está usando a mesma sintaxe, gentil seu filho provavelmente aprendeu na escola.

Um bom ponto de partida para aprender Kivy está na documentação oficial Kivy, onde eles construíram um simples jogo Pong. Aqui, você pode aprender com algumas linhas de código, você pode colocar objetos na tela, controlar a física do jogo, e até mesmo manter o controle de pontuação.

Esta demo do jogo está licenciado sob a licença MIT -, uma licença de software livre permissiva que permite fazer modificações e cópias - assim você pode transformá-lo em seu próprio jogo, e compartilhá-lo on-line sem ter que pedir permissão antes. Você pode até mesmo construir APKs Android e distribuir seu jogo Kivy na App Store da Apple. Mas para um tutorial mais orientada para Kivy, veja a PyCon Montreal palestra de Richard Jones.

Instalando Kivy no Linux é fácil. Se você estiver usando uma distro baseada no Debian, fazer isso.

sudo add-apt-repository ppa: Kivy-team / Kivy
sudo apt-get install python-Kivy

Instruções sobre como instalar o Ubuntu para OpenSUSE, Gentoo e Fedora pode ser encontrada aqui.

Aprender os fundamentos do Código com o Scratch

Se você tem uma criança mais jovem que ainda está para ter uma aula formal, ciência da computação, e que pretende apresentá-los a programação, você pode querer considerar a instalação de Scratch - disponível para OS X, Windows e Linux.

coçar, arranhão não é uma linguagem de programação que vai dar-lhe uma carreira de programação lucrativo. Mas isso é bom. Não é destinado para isso. Em vez disso, ele é usado para ensinar os conceitos básicos por trás de ciência da computação.Como ensinar programação Crianças From Scratch!Como ensinar programação Crianças From Scratch!consulte Mais informação

Scratch é uma linguagem de programação visual, então ao invés de digitar o código, você arrastar-e-soltar blocos de construção para criar programas simples. Este apresenta uma maneira simples, acessível para ensinar seu filho sobre como o software é construído, e conceitos como condicionais, iteração e recursão de programação.

Mas não deixe que a natureza simplificada do Scratch enganá-lo. Só porque é fácil, isso não significa que você está restrito em que você criar. Pessoas construíram tudo, desde jogos - como um jogo multiplayer pong - para animações - como um cartão extravagante - a arte interativa.

codelinux-pastel

E uma vez que você terminou sua obra-prima, você pode compartilhá-lo com a comunidade risco acolhedor on-line, que podem fornecer feedback e incentivo através de ‘gosta e comentários.

E se você ficar entediado lá, você pode utilizar zero para construir Internet de projetos turísticos Arduino-based. Neat, certo?Medo de programação no código? Tente raiz para ArduinoMedo de programação no código? Tente raiz para ArduinoRaspe 4 Arduino permite que novatos como me para construir projetos Arduino emocionantes com uma interface visual. É simples, é divertido, e ele vai ensinar-lhe os blocos de construção fundamentais da programação.consulte Mais informação

Controlar sua casa com o Raspberry Pi

O Raspberry Pi é uma pequena acessível, computador do tamanho, de cartão de crédito capaz de rodar Linux. Aliás, também é capaz de executar um despojado versão do Windows 10, projetados para a construção Internet das Coisas projetos.

O Pi é um animal versátil, tendo repetidamente se mostrado capaz de executar qualquer coisa de instalações de arte, para servidores web, até mesmo para servidores de Minecraft.

Uma aplicação para o Raspberry Pi que chamou minha atenção foi James Bruce projeto de automação residencial, que utiliza uma ampla miscelânea de tecnologias para controlar a iluminação da sua casa.Home Automation com Raspberry Pi e ArduinoHome Automation com Raspberry Pi e ArduinoO mercado de automação residencial é inundado com sistemas de consumo caros, incompatíveis um com o outro e caro para instalar. Se você tem um Raspberry Pi e um Arduino, basicamente você pode conseguir a mesma coisa no ...consulte Mais informação

Bruce usa tudo, desde MongoDB (que foi explicado habilmente por Taylor Bolduc aqui), Ao javascript NodeJS framework de desenvolvimento web, para Arduino. Mas no centro de tudo é o Linux e o Raspberry Pi.

A natureza multidisciplinar deste projecto significa que ele vai introduzir o seu filho para uma série de facetas da ciência da computação, como javascript, administração de sistemas, e eletrônica.

Se não tenho jogado ao redor com o Raspberry Pi antes, e você está olhando para um projeto mais simples para afundar seus dentes de leite em, considere Christian Crawley de Printer Raspberry Pi sem fio.Faça sua própria impressora sem fio com um Raspberry PiFaça sua própria impressora sem fio com um Raspberry Picabos menos, flexibilidade sobre onde você pode colocar a sua impressora - sem fio impressão é uma win-win. A menos que você tem uma impressora mais antiga. Raspberry Pi para o resgate!consulte Mais informação

Construir um Twitter Bot

Não é nenhum segredo que eu sou um grande fã da linguagem de programação Python.

É tão poderoso e versátil, e a ampla oferta de plugins e bibliotecas significa que você pode fazer quase qualquer coisa.

Python faz você se sentir como um Super heroi. Basta pensar em alguma coisa, e as chances são altas você pode construí-lo com Python. Mas eu não estou falando apenas jogos ou sistemas de automação residencial Raspberry Pi. Você pode até mesmo construir aplicações que constroem em cima sites de redes sociais existentes.

Facebook. LinkedIn. Twitter. Todos eles têm APIs (Application Programming Interfaces) que permitem que você use os dados e funcionalidade destes locais no âmbito dos seus próprios programas. Eles podem, no início, ser muito intimidante. Mas eles não são.Quais são APIs, E como APIs Abertas Mudando o InternetQuais são APIs, E como APIs Abertas Mudando o InternetVocê já se perguntou como os programas no seu computador e os sites que você visita "conversa" um ao outro?consulte Mais informação

Dominá-las pode levar a pena algumas horas de trabalho, mas uma vez que você aprendeu a usar uma API específica, você vai ser capaz de fazer algumas coisas incríveis.

Tome Twitter, por exemplo, que permite aos desenvolvedores acesso aos seus dados por meio de três APIs separadas. Há a API Firehose, que oferece, acesso em tempo real ilimitado a cada tweet, mas vem com um preço exorbitante que atinge os milhares de dólares.

codelinux-twitterapis

Há também duas APIs que são livres de usar. Twitter tem a API do Streaming, que lhe permite acompanhar os tweets em tempo real, mas sem garantia de que você vai ter cada tweet. Há também a API de pesquisa, que permite pesquisar o banco de dados do Twitter, mas a quantidade de consultas que você pode fazer são severamente limitada.

A API Streaming é especialmente interessante, porque você pode construir aplicações que podem responder a tweets em tempo real. Há uma quantidade infinita de projetos que você pode construir.

Você poderia, por exemplo, tomar James Bruce cubo LED Arduino potência, e iluminar-lo sempre que alguém postar um tweet contendo uma determinada palavra. Ou você poderia construir um bot no Twitter que os tweets spoilers sempre que alguém postar “Apenas comecei a assistir A Guerra dos Tronos“. Ou, você poderia construir um bot que também usa a API Wolfram Alpha para responder a perguntas simples, como “o que é a capital do Burkina Faso”.Como fazer um cubo pulsante LED Arduino que parece que veio do futuroComo fazer um cubo pulsante LED Arduino que parece que veio do futuroSe você já se envolveu com alguns projectos Arduino iniciantes, mas está procurando algo um pouco permanente e em um outro nível de impressionante, então o humilde 4 x 4 x 4 cubo LED é ...consulte Mais informação

No Linux, você pode tirar vantagem das APIs do Twitter usando a linguagem de programação Python popular, ea biblioteca Tweepy, disponível para download através do gerenciador de pacotes PIP. Para obtê-lo, basta abrir sua linha de comando e digite:

pip instalar tweepy

Se você não tem o gerenciador de pacotes PIP instalado, não se preocupe. Você também pode instalar Tweepy manualmente. Para fazer isso, você vai precisar de Git instalado.

git clone https://github.com/tweepy/tweepy.git
cd tweepy
python setup.py install

Não há falta de tutoriais on-line que vai te ensinar como usar Tweepy. Um dos melhores que eu encontrei foi em PythonProgramming.net, que vem com um tutorial de vídeo que o acompanha.

Video: Instalando Ubuntu Mate no Raspberry PI 3

As possibilidades são infinitas, e porque a API do Twitter é tão fácil de usar com Tweepy, você não precisa de um grau de Ciência da Computação. Você só precisa saber Python e ter uma idéia incrível.

Construa um site

Se você ensinar seu filho a código, e perguntar-lhes o que eles querem fazer, eles vão provavelmente diria um aplicativo móvel. Porque - vamos enfrentá-lo - que criança não quer fazer o próximo Flappy Bird? Mas depois disso, eles provavelmente vão dizer que querem construir um site.Como criar um jogo iPhone From ScratchComo criar um jogo iPhone From ScratchEm algum momento você provavelmente já desejou que você poderia fazer seus próprios jogos para iPhone. É hora de parar de desejar e começar a fazer.consulte Mais informação

Video: Beagleboard+Ubuntu- Ciência da Computação, UFAL-Arapiraca

O problema é que, quando você está aprendendo a construir para a web, você está confrontado com uma variedade estonteante de tecnologias. Se você usar o experimentadas e testadas LAMP, que usa Linux, Apache, MySQL e PHP? Ou talvez algo um pouco mais moderno (e, ouso dizer moderno) como Ruby on Rails, Balão ou Node.js?

O que é pior, este amplo buffet de tecnologias pode ser incrivelmente perturbador quando você é um programador jornaleiro, como você flit entre estruturas e linguagem com todo o foco de um Labrador Retriever.

É uma responsabilidade muito grande.

Mas eu acho que é importante lembrar que a aprendizagem para construir sites é algo que é fundamentalmente multidisciplinar.

Video: Apresentação do Software PLANNER para gerenciamento de projetos, usando o sistema operaciional LINUX

A fundação de qualquer site é HTML. Então, você faz uma boa aparência com um salpicos liberal de CSS. Uma vez que você tem os blocos básicos de construção para baixo, você começa a adicionar interatividade e dinamismo. Você começa a aprender a animar o seu HTML e CSS com javascript e JQuery.

codelinux-html

Então, você aprende sobre a persistência, e da necessidade de guardar as coisas em um banco de dados para recuperá-los mais tarde. Então, você aprende sobre MySQL, e talvez MongoDB. Você aprende sobre esquemas e atomização e relações.

Então você aprender a unir tudo isso com uma linguagem de programação do lado do servidor, como PHP, Python, javascript (com Node.js) ou Ruby, e hospedá-lo em um servidor (frequentemente Linux), que tem de ser configurado habilmente, a fim de garantir que ele permaneça seguro e confiável.

O ponto que eu estou tentando fazer é que aprender a construir sites é um processo multidisciplinar, que depende da pessoa aprender uma `pilha` de descontroladamente diferentes tecnologias e, em seguida, mentalmente amarrá-los juntos, e entender como eles funcionam em relação uns aos outros .

Para ensinar seu HTML criança, CSS e javascript, levá-los inscreveram para Codecademy, o que explica cada uma dessas tecnologias através de desafios interativos. Isso, eu descobri, é ótimo para manter a motivação, como você obtém resultados instantâneos e feedback.Codecademy - Mãos a maneira mais fácil de CódigoCodecademy - Mãos a maneira mais fácil de CódigoCodecademy é um tutorial de programação interativa novo site corte que percorre as noções básicas de javascript. Embora não tenha sido em torno de muito tempo, o site já vem gerando uma série de novidades em ...consulte Mais informação

codelinux-html

Claro, Codecademy não pode de forma abrangente ensinar algo tão grande e complexo como CSS ou javascript. Para isso, é preciso introduzir o seu filho para algum bom material de referência. Eu gostaria de evitar W3Schools, que tem sido conhecido por conter erradas - ou simplesmente falso - informações. O Mozilla Developer Network é um guia completo, preciso e acessível a todas as coisas HTML, CSS e javascript, e é altamente recomendado.

Quando se trata de escolher uma tecnologia de back-end, eu incentivar seu filho a aprender PHP, que tem uma curva de aprendizado suave. Há uma grande quantidade de documentação disponível para ele. E além disso, a instalação de um servidor LAMP no Ubuntu é meramente uma questão ou digitando ‘sudo apt-get install lamp-server ^`.

Codecademy tem um curso de PHP. O mesmo acontece com Tuts +, e Lynda. Todos são grandes. Embora, eu, pessoalmente, recomendo Larry Ullman de PHP e MySQL para Web Sites Dinâmicos, que na época da escrita está disponível por US $ 28,90 na Amazon. Eu possuo uma cópia mim mesmo, e tê-lo encontrado para ser um acessível, acessível, guia para o desenvolvimento web com a linguagem de programação PHP.

codelinux-php

Eu não tenho nenhuma dúvida de que o adolescente médio seria capaz de compreender o conteúdo deste livro.

Falhando isso, MakeUseOf publicou um guia para PHP (escrito por sinceramente), disponível para leia gratuitamente aqui.Aprenda a construir com PHP: Um Curso BaterAprenda a construir com PHP: Um Curso BaterPHP é a linguagem que Facebook e Wikipedia usar para servir milhares de milhões de pedidos daily- a língua de facto usado para ensinar as pessoas programação web. É maravilhosamente simples, mas brilhantemente poderoso.consulte Mais informação

Mas acima de tudo, incutir no seu filho que aprender a construir para a web é um processo de aprendizado, e que leva tempo e dedicação. Para manter seu filho motivado, você pode querer definir-lhes um projeto eles podem trabalhar.

Video: Projeto Visual Class Linux - Marilia -SP

Existem muitos sites simples que poderiam ser construídas por um desenvolvedor aluno. Talvez um livro de visitas, ou um site de microblogging como o Twitter.

Um dos aspectos mais negligenciados de aprender a código é feedback. Uma vez que eles construir algo, considere convencê-los a compartilhá-lo no Github, para que os desenvolvedores mais experientes podem criticar e oferecer orientação. O subreddit aprender programação também é muito bom para isso.

E então, talvez ensinar a criança como para hospedar e gerenciar seus próprios servidores web Linux através da compra-lhes um gota do oceano Digital, que custa tão pouco quanto $ 5 por mês.DigitalOcean: The Best VPS anfitrião para iniciantesDigitalOcean: The Best VPS anfitrião para iniciantesconsulte Mais informação

Participar de um Clube Código

Ok, eu estou enganando aqui.

Este não é um projeto, per se. Mas se você quer ensinar seu filho os conceitos básicos de computação, e você quer fazê-lo de uma forma mais estruturada, social, então você deve levá-los a um código-clube.

A disponibilidade destes irá, é claro, vai variar de acordo com onde você vive. No Reino Unido, há código Clube, um não fins lucrativos que tem como objetivo ensinar crianças entre as idades de 9 e 11 a código. Clubes código pode ser encontrado na maioria das grandes cidades, com a taxa de matrícula organizada em ‘termos. Cada termo ensina uma faceta diferente de programação, tais como risco, HTML e CSS, e Python, com o conteúdo do curso cada vez mais complexa à medida que cada termo progride.

Código clubes muitas vezes tirar proveito de Raspberry Pis e Linux, devido ao fato de que eles são extremamente barato para adquirir comparação com os computadores tradicionais.

Mas o que dizer do outro lado da lagoa?

América tem muito, muito muitos Código clube-like organizações de mencionar em um artigo. Mas há alguns que se destacam.

The Gates e Zuckerberg financiado Code.org é mais conhecido pela sua Hour of Code projeto, que tenta fazer com que adultos e crianças a gastar uma hora por ano aprendendo a código. Mas você sabia que ele hospeda uma lista quase completa de aulas de informática disponíveis nos EUA, com muitos disponíveis em bibliotecas, centros comunitários e escolas?

Mas eu seria negligente se eu não mencionar o brilhante Preto Meninas Código, que estão fazendo um trabalho muito importante. Eles estão a tentar resolver a lacuna étnica e de gênero vergonhosa no STEM (ciência, tecnologia, engenharia e matemática) Campo, oferecendo aulas de informática livre para meninas negras em todo os EUA. As aulas estão disponíveis em uma série de grandes cidades, sujeito a disponibilidade. Verifique no site da Black Girls Código para obter mais informações.

Time Code Para

Ok pessoal. O verão é oficialmente aqui. As escolas têm ou fechado, ou estão fechando. O que você vai fazer? Você vai levá-los a um clube de código, ou você está indo para dar-lhes uma Pi Raspberry e ver onde sua imaginação leva-los?

De qualquer maneira, eu quero ouvir sobre isso. Deixe-me cair um comentário abaixo e deixe-me saber.

Créditos das fotos: Código HTML (Marjan Krebeji), código PHP (Bull3t Hughes), aprendendo a usar laptop via Shutterstock

Artigos relacionados