SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
Programação para não
             programadores
          Uma gentil introdução à computação usando
                          Processing


Alexandre Freire
@freire_da_silva
alex@industriallogic.com
Programação para não
   programadores
   Programe ou seja programado!
Programação para não
    programadores
Como sobreviver em um regime de tecnocracia!
Alexandre Freire
        @freire_da_silva
  alex@indutriallogic.com
Um pouco de história
Charles Babbage, 1822. “O motor analítico”
Ada Lovelace, 1843.
1a programadora do
      mundo.
Alan Turing, 1936. “A máquina de Turing”
   2a Guerra Mundial, 1939, “Enigma”
Na primeira visão sobre
     os computadores
    pessoais, não havia
 distinção entre usuários
     e programadores.
Ted Nelson, 1974. “Computer Lib/Dream Machines”
Motivação
http://ecodigital.blogspot.com/2010/07/rushkoff-
       programe-ou-seja-programado.html
Linguagens de
 programação
Linguagens de
 programação
Sintaxe
O professor ensina sintaxe

  Sujeito    verbo   objeto
Semântica
Dicionário
                  ou
                 API
(application programming interface)
Traduções
compilar ou interpretar
Linguagens de marcação
        HTML
Linguagens de máquina
      Assembler
Linguagens Procedurais
          C
Linguagens Funcionais
        LISP
Linguagens Visuais
  Pure Data (PD)
Linguagens Lógicas
      Prolog
Linguagens Orientadas à Objetos
          Smalltalk
Aprendendo a programar
Crie vários
rascunhos:
  - pequenos
  - independentes
  - salve versões
1- análise
2- sintese
3- avaliação (debug)
4- enquanto não está pronto,
vá para 2
MAS
ANTES...
matriz de pixels
      11x8
        2,1,5,1,2
        3,1,3,1,3
          2,7,2
      1,2,1,3,1,2,1
          0,11
       0,1,1,7,1,1
     0,1,1,1,5,1,1,1
        3,2,1,2,3
Progamacao para não programadores

Más contenido relacionado

La actualidad más candente

Paradigmas De Linguagem De Programação.
Paradigmas De Linguagem De Programação.Paradigmas De Linguagem De Programação.
Paradigmas De Linguagem De Programação.Valmon Gaudencio
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de ProgramaçãoBeDMK
 
Python Training #1, ed. 6
Python Training #1, ed. 6Python Training #1, ed. 6
Python Training #1, ed. 6Fabio Spanhol
 
Conceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoConceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoSidney Roberto
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação12anogolega
 
Algoritmo Introdução
Algoritmo   IntroduçãoAlgoritmo   Introdução
Algoritmo IntroduçãoAndré Nobre
 
Programação 1
Programação 1Programação 1
Programação 1essa
 
Aprendizado Profundo & CNNs
Aprendizado Profundo & CNNsAprendizado Profundo & CNNs
Aprendizado Profundo & CNNsFabio Spanhol
 
Algoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de ProgramaçãoAlgoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de ProgramaçãoElaine Cecília Gatto
 
Python Training #1 ed.6
Python Training #1 ed.6 Python Training #1 ed.6
Python Training #1 ed.6 Fabio Spanhol
 
Python Training #1 - ed4
Python Training #1 - ed4Python Training #1 - ed4
Python Training #1 - ed4Fabio Spanhol
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09essa
 
Python Training #0.5 ed. 7
Python Training #0.5 ed. 7Python Training #0.5 ed. 7
Python Training #0.5 ed. 7Fabio Spanhol
 
Paradigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - IntroduçãoParadigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - IntroduçãoAdriano Teixeira de Souza
 
Linguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos IntrodutóriosLinguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos IntrodutóriosFabio Spanhol
 
Linguágens de programação
Linguágens de programaçãoLinguágens de programação
Linguágens de programaçãoAlbertoVach
 

La actualidad más candente (20)

Paradigmas De Linguagem De Programação.
Paradigmas De Linguagem De Programação.Paradigmas De Linguagem De Programação.
Paradigmas De Linguagem De Programação.
 
Linguagens de programação
Linguagens de programaçãoLinguagens de programação
Linguagens de programação
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação
 
Python Training #1, ed. 6
Python Training #1, ed. 6Python Training #1, ed. 6
Python Training #1, ed. 6
 
Conceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de ProgramaçãoConceitos Iniciais de Linguagens de Programação
Conceitos Iniciais de Linguagens de Programação
 
Paradigmas de programação
Paradigmas de programaçãoParadigmas de programação
Paradigmas de programação
 
02 historia da programação
02   historia da programação02   historia da programação
02 historia da programação
 
Linguagens de Programação
Linguagens de ProgramaçãoLinguagens de Programação
Linguagens de Programação
 
Algoritmo Introdução
Algoritmo   IntroduçãoAlgoritmo   Introdução
Algoritmo Introdução
 
Programação 1
Programação 1Programação 1
Programação 1
 
Python tutorial-ed3
Python tutorial-ed3Python tutorial-ed3
Python tutorial-ed3
 
Aprendizado Profundo & CNNs
Aprendizado Profundo & CNNsAprendizado Profundo & CNNs
Aprendizado Profundo & CNNs
 
Algoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de ProgramaçãoAlgoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de Programação
 
Python Training #1 ed.6
Python Training #1 ed.6 Python Training #1 ed.6
Python Training #1 ed.6
 
Python Training #1 - ed4
Python Training #1 - ed4Python Training #1 - ed4
Python Training #1 - ed4
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09
 
Python Training #0.5 ed. 7
Python Training #0.5 ed. 7Python Training #0.5 ed. 7
Python Training #0.5 ed. 7
 
Paradigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - IntroduçãoParadigmas de Linguagens de Programação - Introdução
Paradigmas de Linguagens de Programação - Introdução
 
Linguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos IntrodutóriosLinguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos Introdutórios
 
Linguágens de programação
Linguágens de programaçãoLinguágens de programação
Linguágens de programação
 

Destacado

Psychology of performance
Psychology of performancePsychology of performance
Psychology of performanceStoyan Stefanov
 
Tudo que você precisa saber sobre picture e srcset
Tudo que você precisa saber sobre picture e srcsetTudo que você precisa saber sobre picture e srcset
Tudo que você precisa saber sobre picture e srcsetCaelum
 
Annabel Lee
Annabel LeeAnnabel Lee
Annabel Leebmtravis
 
Progressive Web Apps: o melhor da Web appficada
Progressive Web Apps: o melhor da Web appficadaProgressive Web Apps: o melhor da Web appficada
Progressive Web Apps: o melhor da Web appficadaCaelum
 

Destacado (7)

Reactive JavaScript
Reactive JavaScriptReactive JavaScript
Reactive JavaScript
 
Psychology of performance
Psychology of performancePsychology of performance
Psychology of performance
 
Vida de Programador
Vida de Programador Vida de Programador
Vida de Programador
 
Tudo que você precisa saber sobre picture e srcset
Tudo que você precisa saber sobre picture e srcsetTudo que você precisa saber sobre picture e srcset
Tudo que você precisa saber sobre picture e srcset
 
Plano de estudo 4º bimestre
Plano de estudo 4º bimestrePlano de estudo 4º bimestre
Plano de estudo 4º bimestre
 
Annabel Lee
Annabel LeeAnnabel Lee
Annabel Lee
 
Progressive Web Apps: o melhor da Web appficada
Progressive Web Apps: o melhor da Web appficadaProgressive Web Apps: o melhor da Web appficada
Progressive Web Apps: o melhor da Web appficada
 

Similar a Progamacao para não programadores

Linguagensdeprogramao 100611235520-phpapp01
Linguagensdeprogramao 100611235520-phpapp01Linguagensdeprogramao 100611235520-phpapp01
Linguagensdeprogramao 100611235520-phpapp01Romário santos
 
Linguagem C Entendendo a Programação
Linguagem C Entendendo a ProgramaçãoLinguagem C Entendendo a Programação
Linguagem C Entendendo a ProgramaçãoMonike Santos
 
Linguagem c wellington telles - aula 01
Linguagem c   wellington telles - aula 01Linguagem c   wellington telles - aula 01
Linguagem c wellington telles - aula 01profwtelles
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoFelipeDi
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoWeldir Fernando Dias
 
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)Filipe Chagas Ferraz
 
Conceitos de linguagens de programação
Conceitos de linguagens de programação Conceitos de linguagens de programação
Conceitos de linguagens de programação FabianaNKInformtica
 
Linguagen..
Linguagen..Linguagen..
Linguagen..essa
 
Conceitos Iniciais LP I
Conceitos Iniciais LP IConceitos Iniciais LP I
Conceitos Iniciais LP IPatrícia Melo
 
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdfsilo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdfAmlieOGalaxias
 
Introdução à informática tsc cederj-01
Introdução à informática tsc cederj-01Introdução à informática tsc cederj-01
Introdução à informática tsc cederj-01Waldemar Neto
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoUbirajara Cavaco
 
Aula 02 informática aplicada - sistemas operacionais
Aula 02  informática aplicada - sistemas operacionaisAula 02  informática aplicada - sistemas operacionais
Aula 02 informática aplicada - sistemas operacionaisRobson Ferreira
 
1 º parte conceitos e fundamentos
1 º parte   conceitos e fundamentos 1 º parte   conceitos e fundamentos
1 º parte conceitos e fundamentos Atila Curso Pontual
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09essa
 

Similar a Progamacao para não programadores (20)

Linguagensdeprogramao 100611235520-phpapp01
Linguagensdeprogramao 100611235520-phpapp01Linguagensdeprogramao 100611235520-phpapp01
Linguagensdeprogramao 100611235520-phpapp01
 
LP002 - AULA 1.potx
LP002 - AULA 1.potxLP002 - AULA 1.potx
LP002 - AULA 1.potx
 
LP003 - AULA 2.potx
LP003 - AULA 2.potxLP003 - AULA 2.potx
LP003 - AULA 2.potx
 
F oc aula_02a
F oc aula_02aF oc aula_02a
F oc aula_02a
 
Linguagem C Entendendo a Programação
Linguagem C Entendendo a ProgramaçãoLinguagem C Entendendo a Programação
Linguagem C Entendendo a Programação
 
Linguagem c wellington telles - aula 01
Linguagem c   wellington telles - aula 01Linguagem c   wellington telles - aula 01
Linguagem c wellington telles - aula 01
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
Aula - Introdução (Curso de Python Básico -- FATEC SENAI MT)
 
Conceitos de linguagens de programação
Conceitos de linguagens de programação Conceitos de linguagens de programação
Conceitos de linguagens de programação
 
Linguagen..
Linguagen..Linguagen..
Linguagen..
 
Conceitos Iniciais LP I
Conceitos Iniciais LP IConceitos Iniciais LP I
Conceitos Iniciais LP I
 
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdfsilo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
silo.tips_paradigmas-e-linguagens-de-programaao-prof-josino-rodrigues-neto.pdf
 
Introdução à informática tsc cederj-01
Introdução à informática tsc cederj-01Introdução à informática tsc cederj-01
Introdução à informática tsc cederj-01
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Aula 02 informática aplicada - sistemas operacionais
Aula 02  informática aplicada - sistemas operacionaisAula 02  informática aplicada - sistemas operacionais
Aula 02 informática aplicada - sistemas operacionais
 
1 º parte conceitos e fundamentos
1 º parte   conceitos e fundamentos 1 º parte   conceitos e fundamentos
1 º parte conceitos e fundamentos
 
Seminário: Lisp
Seminário: LispSeminário: Lisp
Seminário: Lisp
 
Hierarquia de níveis
Hierarquia de níveisHierarquia de níveis
Hierarquia de níveis
 
Linguagens de programação 03-12-09
Linguagens de programação   03-12-09Linguagens de programação   03-12-09
Linguagens de programação 03-12-09
 

Más de alexandre freire

Making People Awesome @Nubank TDC Floripa 2019
Making People Awesome @Nubank TDC Floripa 2019Making People Awesome @Nubank TDC Floripa 2019
Making People Awesome @Nubank TDC Floripa 2019alexandre freire
 
Technical Product Management at Nubank
Technical Product Management at NubankTechnical Product Management at Nubank
Technical Product Management at Nubankalexandre freire
 
Making People Awesome TDC POA 2018 - Alexandre Freire
Making People Awesome   TDC POA 2018 - Alexandre FreireMaking People Awesome   TDC POA 2018 - Alexandre Freire
Making People Awesome TDC POA 2018 - Alexandre Freirealexandre freire
 
Modern Agile and the Future of SW Development GUMARS 2018
Modern Agile and the Future of SW Development GUMARS 2018Modern Agile and the Future of SW Development GUMARS 2018
Modern Agile and the Future of SW Development GUMARS 2018alexandre freire
 
Deploy Contínuo de Software Legado: Loucura ou Genialidade?
Deploy Contínuo de Software Legado: Loucura ou Genialidade?Deploy Contínuo de Software Legado: Loucura ou Genialidade?
Deploy Contínuo de Software Legado: Loucura ou Genialidade?alexandre freire
 
Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...
Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...
Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...alexandre freire
 
Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015
Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015
Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015alexandre freire
 
Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014alexandre freire
 
Tech Safety - um caminho inesperado à excelência
Tech Safety - um caminho inesperado à excelênciaTech Safety - um caminho inesperado à excelência
Tech Safety - um caminho inesperado à excelênciaalexandre freire
 
What NOT to test in your project
What NOT to test in your projectWhat NOT to test in your project
What NOT to test in your projectalexandre freire
 
Como não testar seu projeto de software
Como não testar seu projeto de softwareComo não testar seu projeto de software
Como não testar seu projeto de softwarealexandre freire
 
Ágil x Lean Startup no Caipira Ágil
Ágil x Lean Startup no Caipira ÁgilÁgil x Lean Startup no Caipira Ágil
Ágil x Lean Startup no Caipira Ágilalexandre freire
 
surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle alexandre freire
 
Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...
Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...
Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...alexandre freire
 
COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011
COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011
COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011alexandre freire
 

Más de alexandre freire (17)

Making People Awesome @Nubank TDC Floripa 2019
Making People Awesome @Nubank TDC Floripa 2019Making People Awesome @Nubank TDC Floripa 2019
Making People Awesome @Nubank TDC Floripa 2019
 
Technical Product Management at Nubank
Technical Product Management at NubankTechnical Product Management at Nubank
Technical Product Management at Nubank
 
Making People Awesome TDC POA 2018 - Alexandre Freire
Making People Awesome   TDC POA 2018 - Alexandre FreireMaking People Awesome   TDC POA 2018 - Alexandre Freire
Making People Awesome TDC POA 2018 - Alexandre Freire
 
Modern Agile and the Future of SW Development GUMARS 2018
Modern Agile and the Future of SW Development GUMARS 2018Modern Agile and the Future of SW Development GUMARS 2018
Modern Agile and the Future of SW Development GUMARS 2018
 
Deploy Contínuo de Software Legado: Loucura ou Genialidade?
Deploy Contínuo de Software Legado: Loucura ou Genialidade?Deploy Contínuo de Software Legado: Loucura ou Genialidade?
Deploy Contínuo de Software Legado: Loucura ou Genialidade?
 
Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...
Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...
Como influenciar sua equipe para ser excelente com medo, culpa, vergonha, pun...
 
Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015
Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015
Otimizando sua Máquina Cultural na busca pela excelência QCon SP 2015
 
Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014Como NÃO testar o seu projeto de Software. DevDay 2014
Como NÃO testar o seu projeto de Software. DevDay 2014
 
Agile #FAIL QCon 2013
Agile #FAIL QCon 2013Agile #FAIL QCon 2013
Agile #FAIL QCon 2013
 
Tech Safety - um caminho inesperado à excelência
Tech Safety - um caminho inesperado à excelênciaTech Safety - um caminho inesperado à excelência
Tech Safety - um caminho inesperado à excelência
 
What NOT to test in your project
What NOT to test in your projectWhat NOT to test in your project
What NOT to test in your project
 
Como não testar seu projeto de software
Como não testar seu projeto de softwareComo não testar seu projeto de software
Como não testar seu projeto de software
 
Divida tecnica
Divida tecnicaDivida tecnica
Divida tecnica
 
Ágil x Lean Startup no Caipira Ágil
Ágil x Lean Startup no Caipira ÁgilÁgil x Lean Startup no Caipira Ágil
Ágil x Lean Startup no Caipira Ágil
 
surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle surge con 2011 lightning talk - closed loop server lifecycle
surge con 2011 lightning talk - closed loop server lifecycle
 
Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...
Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...
Dívida tecnica: precisando de crédito? Quão fundo entrar e como evitar que o ...
 
COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011
COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011
COWBLAM! - a sua metodologia é a melhor. Agile Brasil 2011
 

Progamacao para não programadores