SlideShare uma empresa Scribd logo
1 de 105
Baixar para ler offline
Luciano Ramalho
programador repentista



                         1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Primeira onda: a microinformática
●   Computadores fora do CPD
●   “Computers for the people”
    ●   PCC: The People's Computer Company
●   A bicicleta da mente




                                             30
31
32
33
34
35
36
37
38
39
40
41
42
A cultura do Apple II
●   Plataforma de desenvolvimento
    ●   Applesoft BASIC: Gráficos coloridos 280x192, muita 
        documentação, muitos exemplos, Assembly 6502
    ●   Cartão CP/M: CPU Z­80, 80 colunas,Turbo Pascal
●   Online
    ●   BBS: conexões a 300bps, ou 1200/75bps (sim, 0.3Kbps)
    ●   Videotexto Telesp
●   Produtos
    ●   Várias revistas, muitos livros, muito software pronto e 
        muitas ferramentas de desenvolvimento
    ●   “Clube dos Applemaníacos”
                                                                   43
44
45
46
47
48
A onda da GUI (interface gráfica)
●   Macintish: 
    ●   desktop publishing
    ●   Hypercard
    ●   Excel
●   Windows 2: desktop publishing
●   Windows 3:
    ●   Office
    ●   Visual Basic

                                        49
A onda da GUI, fase 2
●   Visual Basic: a primeira ferramenta viável para 
    desenvolvimento in­house
●   Disparou a onda de migração de sistemas do 
    ambiente texto do DOS para o ambiente gráfico do 
    Windows
●   Popularizou a arquitetura cliente­servidor: desktops 
    gráficos trocando dados com servidores SQL
●   Com Delphi, este modelo continua popular
    –   mas o futuro é incerto



                                                            50
1
    51
2
    52
3
    53
A onda da Multimídia
●   Macintosh: a plataforma pioneira
●   Windows: Microsoft escolhe a Soundblaster
●   Publicidade em quiosques interativos
●   CD­ROMs
    ●   Entretenimento de massa chega ao desktop
    ●   “A turma da cozinha”: primeiro CD­ROM infantil 
        criado no Brasil



                                                          54
55
O tsunami da Internet
●   Em 1994 a Internet vira notícia
●   Mídia impressa sente­se ameaçada
    ●   Confirmado: é a primeira vítima
●   GUI, arquitetura cliente­servidor, redes locais, 
    multimídia: tudo é repensado




                                                        56
57
58
59
60
61
62
63
64
65
O terremoto do Software Livre
●   GNU/Linux, Apache, Mozilla Firefox, BitTorrent, 
    Python, Django, Ruby on Rails, MySQL, PostgreSQL, 
    Eclipse, Java livre
    ●   Existe uma nova maneira de desenvolver software, e ela 
        funciona tão bem que gera produtos capazes de competir e 
        mesmo liderar em muitas categorias
●   Desenvolvimento aberto e colaborativo
    ●   Nunca foi tão fácil mostrar o seu trabalho
        –   Código desenvolvido, dúvidas respondidas, bugs diagnosticados...
        –   O trabalho continua duro, apenas ficou mais fácil mostrá­lo!
    ●   Independente de certificações e até de diplomas
                                                                           66
A onda dos frameworks Web
●   O desenvolvimento de sites deixa de ser 
    artesanal
●   Primeira geração: frameworks sofisticados, 
    otimizados para os casos mais complexos 
    (Vignette, J2EE, Zope)
●   Segunda geração: frameworks ágeis, 
    otimizados para o caso básico (Ruby on Rails, 
    Django/Python)
    ●   Profissionalização do desenvolvimento de sistemas 
        web in­house
                                                             67
1
    68
2
    69
3
    70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
Flow: entre o tédio e a ansiedade




                                    101
102
1
    103
2
    104
3
    105

Mais conteúdo relacionado

Semelhante a Programador Repentista

Microsoft .Net
Microsoft .NetMicrosoft .Net
Microsoft .Netjaumnc
 
IntroduçãO Ao Desenvolvimento Web 2
IntroduçãO Ao Desenvolvimento Web   2IntroduçãO Ao Desenvolvimento Web   2
IntroduçãO Ao Desenvolvimento Web 2Maurício Linhares
 
ArduinoDay 2015 - OpenDevice
ArduinoDay 2015 -  OpenDeviceArduinoDay 2015 -  OpenDevice
ArduinoDay 2015 - OpenDeviceRicardo Rufino
 
Utilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucesso
Utilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucessoUtilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucesso
Utilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucessoJUGMS
 
Visual basic apresentação
Visual basic   apresentaçãoVisual basic   apresentação
Visual basic apresentaçãoSara Gonçalves
 
Apresentação Minicurso PyS60
Apresentação Minicurso PyS60Apresentação Minicurso PyS60
Apresentação Minicurso PyS60Antonio Santana
 
Aula 1 - introdução a informática
Aula 1 - introdução a informáticaAula 1 - introdução a informática
Aula 1 - introdução a informáticaSamuelNascimento92
 
Asp.Net Mvc - Desenvolvendo em N Camadas
Asp.Net Mvc - Desenvolvendo em N CamadasAsp.Net Mvc - Desenvolvendo em N Camadas
Asp.Net Mvc - Desenvolvendo em N CamadasGiovanni Bassi
 
OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)Ricardo Rufino
 
Webinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoTWebinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoTEmbarcados
 
Minicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São GabrielMinicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São GabrielMarcelo Linhares
 
Programação Criativa com Processing
Programação Criativa com ProcessingProgramação Criativa com Processing
Programação Criativa com ProcessingLucas Cabral
 
Desenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em JavaDesenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em JavaWaldir R. Pires Jr
 
Minicurso de TotalCross e Litebase
Minicurso de TotalCross e LitebaseMinicurso de TotalCross e Litebase
Minicurso de TotalCross e LitebaseNécio de Lima Veras
 
Introdução ao desenvolvimento web - 2 - iDez 2010
Introdução ao desenvolvimento web - 2 - iDez 2010Introdução ao desenvolvimento web - 2 - iDez 2010
Introdução ao desenvolvimento web - 2 - iDez 2010Maurício Linhares
 
Trabalho - Projeto redes
Trabalho - Projeto redesTrabalho - Projeto redes
Trabalho - Projeto redesValdir Junior
 

Semelhante a Programador Repentista (20)

Microsoft .Net
Microsoft .NetMicrosoft .Net
Microsoft .Net
 
Software Livre Java
Software Livre JavaSoftware Livre Java
Software Livre Java
 
IntroduçãO Ao Desenvolvimento Web 2
IntroduçãO Ao Desenvolvimento Web   2IntroduçãO Ao Desenvolvimento Web   2
IntroduçãO Ao Desenvolvimento Web 2
 
ArduinoDay 2015 - OpenDevice
ArduinoDay 2015 -  OpenDeviceArduinoDay 2015 -  OpenDevice
ArduinoDay 2015 - OpenDevice
 
Utilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucesso
Utilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucessoUtilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucesso
Utilizando Java, Arduíno e a Web para criar empreendimentos próprios de sucesso
 
Visual basic apresentação
Visual basic   apresentaçãoVisual basic   apresentação
Visual basic apresentação
 
Cocos 2d
Cocos 2dCocos 2d
Cocos 2d
 
Py S60
Py S60Py S60
Py S60
 
Apresentação Minicurso PyS60
Apresentação Minicurso PyS60Apresentação Minicurso PyS60
Apresentação Minicurso PyS60
 
Aula 1 - introdução a informática
Aula 1 - introdução a informáticaAula 1 - introdução a informática
Aula 1 - introdução a informática
 
Asp.Net Mvc - Desenvolvendo em N Camadas
Asp.Net Mvc - Desenvolvendo em N CamadasAsp.Net Mvc - Desenvolvendo em N Camadas
Asp.Net Mvc - Desenvolvendo em N Camadas
 
OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)
 
Webinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoTWebinar: Oportunidades e requisitos no projeto de hardware para IoT
Webinar: Oportunidades e requisitos no projeto de hardware para IoT
 
Minicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São GabrielMinicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
 
Umit Presentation
Umit PresentationUmit Presentation
Umit Presentation
 
Programação Criativa com Processing
Programação Criativa com ProcessingProgramação Criativa com Processing
Programação Criativa com Processing
 
Desenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em JavaDesenvolvimento de Aplicações Móveis em Java
Desenvolvimento de Aplicações Móveis em Java
 
Minicurso de TotalCross e Litebase
Minicurso de TotalCross e LitebaseMinicurso de TotalCross e Litebase
Minicurso de TotalCross e Litebase
 
Introdução ao desenvolvimento web - 2 - iDez 2010
Introdução ao desenvolvimento web - 2 - iDez 2010Introdução ao desenvolvimento web - 2 - iDez 2010
Introdução ao desenvolvimento web - 2 - iDez 2010
 
Trabalho - Projeto redes
Trabalho - Projeto redesTrabalho - Projeto redes
Trabalho - Projeto redes
 

Mais de Luciano Ramalho

Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem PythonLuciano Ramalho
 
Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)Luciano Ramalho
 
Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)Luciano Ramalho
 
Encapsulamento com descritores
Encapsulamento com descritoresEncapsulamento com descritores
Encapsulamento com descritoresLuciano Ramalho
 
Arduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojoArduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojoLuciano Ramalho
 
Objetos Pythonicos - compacto
Objetos Pythonicos - compactoObjetos Pythonicos - compacto
Objetos Pythonicos - compactoLuciano Ramalho
 
Iteraveis e geradores em Python
Iteraveis e geradores em PythonIteraveis e geradores em Python
Iteraveis e geradores em PythonLuciano Ramalho
 
Encapsulamento com Descritores em Python
Encapsulamento com Descritores em PythonEncapsulamento com Descritores em Python
Encapsulamento com Descritores em PythonLuciano Ramalho
 
Python: Iteraveis, geradores etc
Python: Iteraveis, geradores etcPython: Iteraveis, geradores etc
Python: Iteraveis, geradores etcLuciano Ramalho
 
Jython no JavaOne Latin America 2011
Jython no JavaOne Latin America 2011Jython no JavaOne Latin America 2011
Jython no JavaOne Latin America 2011Luciano Ramalho
 
Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Luciano Ramalho
 
OO em Python sem sotaque
OO em Python sem sotaqueOO em Python sem sotaque
OO em Python sem sotaqueLuciano Ramalho
 
Python, a arma secreta do Google
Python, a arma secreta do GooglePython, a arma secreta do Google
Python, a arma secreta do GoogleLuciano Ramalho
 

Mais de Luciano Ramalho (20)

Wiki-wiki S/A
Wiki-wiki S/AWiki-wiki S/A
Wiki-wiki S/A
 
Mongodb: agregação
Mongodb: agregaçãoMongodb: agregação
Mongodb: agregação
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
 
Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)Iteráveis e geradores (versão RuPy)
Iteráveis e geradores (versão RuPy)
 
Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)Orientação a objetos em Python (compacto)
Orientação a objetos em Python (compacto)
 
Encapsulamento com descritores
Encapsulamento com descritoresEncapsulamento com descritores
Encapsulamento com descritores
 
Iteraveis e geradores
Iteraveis e geradoresIteraveis e geradores
Iteraveis e geradores
 
Arduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojoArduino: hardware hacking & coding dojo
Arduino: hardware hacking & coding dojo
 
Objetos Pythonicos - compacto
Objetos Pythonicos - compactoObjetos Pythonicos - compacto
Objetos Pythonicos - compacto
 
Iteraveis e geradores em Python
Iteraveis e geradores em PythonIteraveis e geradores em Python
Iteraveis e geradores em Python
 
Encapsulamento com Descritores em Python
Encapsulamento com Descritores em PythonEncapsulamento com Descritores em Python
Encapsulamento com Descritores em Python
 
Dojo com Processing
Dojo com ProcessingDojo com Processing
Dojo com Processing
 
Dojo com Arduino
Dojo com ArduinoDojo com Arduino
Dojo com Arduino
 
Python: Iteraveis, geradores etc
Python: Iteraveis, geradores etcPython: Iteraveis, geradores etc
Python: Iteraveis, geradores etc
 
Open Library no Mongodb
Open Library no MongodbOpen Library no Mongodb
Open Library no Mongodb
 
Jython no JavaOne Latin America 2011
Jython no JavaOne Latin America 2011Jython no JavaOne Latin America 2011
Jython no JavaOne Latin America 2011
 
Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)Python para quem sabe Python (aula 2)
Python para quem sabe Python (aula 2)
 
OO em Python sem sotaque
OO em Python sem sotaqueOO em Python sem sotaque
OO em Python sem sotaque
 
Modelos ricos
Modelos ricosModelos ricos
Modelos ricos
 
Python, a arma secreta do Google
Python, a arma secreta do GooglePython, a arma secreta do Google
Python, a arma secreta do Google
 

Programador Repentista

  • 2. 2
  • 3. 3
  • 4. 4
  • 5. 5
  • 6. 6
  • 7. 7
  • 8. 8
  • 9. 9
  • 10. 10
  • 11. 11
  • 12. 12
  • 13. 13
  • 14. 14
  • 15. 15
  • 16. 16
  • 17. 17
  • 18. 18
  • 19. 19
  • 20. 20
  • 21. 21
  • 22. 22
  • 23. 23
  • 24. 24
  • 25. 25
  • 26. 26
  • 27. 27
  • 28. 28
  • 29. 29
  • 30. Primeira onda: a microinformática ● Computadores fora do CPD ● “Computers for the people” ● PCC: The People's Computer Company ● A bicicleta da mente 30
  • 31. 31
  • 32. 32
  • 33. 33
  • 34. 34
  • 35. 35
  • 36. 36
  • 37. 37
  • 38. 38
  • 39. 39
  • 40. 40
  • 41. 41
  • 42. 42
  • 43. A cultura do Apple II ● Plataforma de desenvolvimento ● Applesoft BASIC: Gráficos coloridos 280x192, muita  documentação, muitos exemplos, Assembly 6502 ● Cartão CP/M: CPU Z­80, 80 colunas,Turbo Pascal ● Online ● BBS: conexões a 300bps, ou 1200/75bps (sim, 0.3Kbps) ● Videotexto Telesp ● Produtos ● Várias revistas, muitos livros, muito software pronto e  muitas ferramentas de desenvolvimento ● “Clube dos Applemaníacos” 43
  • 44. 44
  • 45. 45
  • 46. 46
  • 47. 47
  • 48. 48
  • 49. A onda da GUI (interface gráfica) ● Macintish:  ● desktop publishing ● Hypercard ● Excel ● Windows 2: desktop publishing ● Windows 3: ● Office ● Visual Basic 49
  • 50. A onda da GUI, fase 2 ● Visual Basic: a primeira ferramenta viável para  desenvolvimento in­house ● Disparou a onda de migração de sistemas do  ambiente texto do DOS para o ambiente gráfico do  Windows ● Popularizou a arquitetura cliente­servidor: desktops  gráficos trocando dados com servidores SQL ● Com Delphi, este modelo continua popular – mas o futuro é incerto 50
  • 51. 1 51
  • 52. 2 52
  • 53. 3 53
  • 54. A onda da Multimídia ● Macintosh: a plataforma pioneira ● Windows: Microsoft escolhe a Soundblaster ● Publicidade em quiosques interativos ● CD­ROMs ● Entretenimento de massa chega ao desktop ● “A turma da cozinha”: primeiro CD­ROM infantil  criado no Brasil 54
  • 55. 55
  • 56. O tsunami da Internet ● Em 1994 a Internet vira notícia ● Mídia impressa sente­se ameaçada ● Confirmado: é a primeira vítima ● GUI, arquitetura cliente­servidor, redes locais,  multimídia: tudo é repensado 56
  • 57. 57
  • 58. 58
  • 59. 59
  • 60. 60
  • 61. 61
  • 62. 62
  • 63. 63
  • 64. 64
  • 65. 65
  • 66. O terremoto do Software Livre ● GNU/Linux, Apache, Mozilla Firefox, BitTorrent,  Python, Django, Ruby on Rails, MySQL, PostgreSQL,  Eclipse, Java livre ● Existe uma nova maneira de desenvolver software, e ela  funciona tão bem que gera produtos capazes de competir e  mesmo liderar em muitas categorias ● Desenvolvimento aberto e colaborativo ● Nunca foi tão fácil mostrar o seu trabalho – Código desenvolvido, dúvidas respondidas, bugs diagnosticados... – O trabalho continua duro, apenas ficou mais fácil mostrá­lo! ● Independente de certificações e até de diplomas 66
  • 67. A onda dos frameworks Web ● O desenvolvimento de sites deixa de ser  artesanal ● Primeira geração: frameworks sofisticados,  otimizados para os casos mais complexos  (Vignette, J2EE, Zope) ● Segunda geração: frameworks ágeis,  otimizados para o caso básico (Ruby on Rails,  Django/Python) ● Profissionalização do desenvolvimento de sistemas  web in­house 67
  • 68. 1 68
  • 69. 2 69
  • 70. 3 70
  • 71. 71
  • 72. 72
  • 73. 73
  • 74. 74
  • 75. 75
  • 76. 76
  • 77. 77
  • 78. 78
  • 79. 79
  • 80. 80
  • 81. 81
  • 82. 82
  • 83. 83
  • 84. 84
  • 85. 85
  • 86. 86
  • 87. 87
  • 88. 88
  • 89. 89
  • 90. 90
  • 91. 91
  • 92. 92
  • 93. 93
  • 94. 94
  • 95. 95
  • 96. 96
  • 97. 97
  • 98. 98
  • 99. 99
  • 100. 100
  • 102. 102
  • 103. 1 103
  • 104. 2 104
  • 105. 3 105