Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Como aprender Computação no Século 21

Como aprender Computação no Século 21

Keynote apresentado no evento Join Community em Goiânia, 31 de agosto de 2013

Luciano Ramalho

August 31, 2013
Tweet

More Decks by Luciano Ramalho

Other Decks in Technology

Transcript

  1. @ramalhoorg Why English? •A Web •documentação de linguagens e APIs

    •en.wikipedia.org •MOOCs: Massive Online Open Courses
  2. @ramalhoorg Escolha duas linguagens •Estude em paralelo •Os conceitos fundamentais

    são os mesmos •A sintaxe é um detalhe muito fácil de dominar •Sistemas modernos usam mais de uma
  3. @ramalhoorg Critérios para escolher •Linguagem de uso geral •Largamente utilizada

    na plataforma GNU/Linux •Orientada a objetos •Oferecer um console interativo para aprender testando e explorando pelo menos uma das duas deve...
  4. @ramalhoorg Plataforma GNU/Linux •A que mais cresce em todos os

    setores de maior importância •Cloud computing •Computação móvel •Android: plataforma derivada •Sistemas embarcados
  5. @ramalhoorg github •A rede social para fazer, e não só

    falar de software livre •Melhor modo de aprender git •Contribuir com a cultura livre •Recrutar ajuda para seus projetos •Incrementar seu currículo
  6. @ramalhoorg Google Summer of Code •Bolsas de $4500 (USD) para

    três meses de trabalho em um projeto de software livre importantes •Mentoria de um mantenedor do projeto (isso vale muito mais que $4500)
  7. @ramalhoorg Arduino •objetos físicos interativos: impressão 3D, entretenimento, segurança, automação

    •ambiente de programação muito simples •interface universal: USB → pinos E/S digitais e analógicos •projetos autônomos: robôs, drones
  8. @ramalhoorg MiniPC: pequeno PC de uso geral •Arquitetura ARM (tablets,

    smartphones) •Rodam GNU/Linux e/ou Android •Custam cerca de R$ 200 com nota e garantia Rodam Python, Ruby, node.js... às vezes até Java!
  9. @ramalhoorg Raspberry Pi Raspberry Pi mod. B SoC CPU GPU

    clock SO RAM Flash onboard SD card GPIO PWM ADC USB client USB host Ethernet Wifi HDMI video composto audio preço USD Arduinos open hardware Broadcom BCM2835 ARM11 (ARMv6) VideoCore IV 700 MHz GNU/Linux (vários) 512 MB ✘ SD 17 (+4 no P5) 1 ✘ ✘ 2 10/100 ✘ HDMI RCA HDMI + plug 3.5mm 35 1.0 ✘
  10. @ramalhoorg BeagleBone Black Beaglebone Black SoC CPU GPU clock SO

    RAM Flash onboard SD card GPIO PWM ADC USB client USB host Ethernet Wifi HDMI video composto audio preço USD Arduinos open hardware Texas Instruments Sitara AM335x ARM Cortex A8 (ARMv7 + NEON SIMD) PowerVR SGX 530 1 GHz GNU/Linux (vários) Android 512 MB 2 GB micro-SD 66 8 7 1 1 10/100 ✘ micro-HDMI ✘ via HDMI 45 1.3 ✔
  11. @ramalhoorg Facebook não é o melhor canal p/ devs •Não

    use para trocar informações técnicas: elas se perdem •Use o Facebook só para comunicação efêmera, passageira: divulgação de eventos, encontros, lançamentos, novos posts (feitos em blogs ou wikis)
  12. @ramalhoorg Ferramentas sociais •grupos e listas: histórico preservado •github: código,

    bugs, melhorias, docs •blog: compartilhar suas descobertas e realizações •wiki: edição colaborativa •IRC: os canais dos gurus
  13. @ramalhoorg Quem usa Python? •Muitas distros GNU/Linux, Openstack... •Google, YouTube,

    Instagram, Dropbox... •Disney Animation, ILM, Weta, Autodesk... •Globo.com, Titans Group... •Vários órgãos governamentais
  14. @ramalhoorg Sigam: @fmasanori •Prof. Fernando Masanori, FATEC São José dos

    Campos, SP •Pioneiro no uso de Python nas FATECs •Autor do novo MOOC: Python para Zumbis
  15. @ramalhoorg Aproveite o séc. 21! •Recursos online: wikis, MOOCs, github...

    •Software livre: para estudar e trabalhar! •Comunidades: grupos, IRC, hackerspaces •Mini PCs e Arduino para experimentar •Linguagens modernas, poderosas, fáceis
  16. @ramalhoorg Critérios para escolher •Linguagem de uso geral •Largamente utilizada

    na plataforma GNU/Linux •Orientada a objetos •Oferecer um console interativo para aprender testando e explorando ✔ Python ✔ Python ✔ Python ✔ Python