Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
####### # # E-scripts e notas sobre a palestra do Dia-D # # Note 1: use the eev command (defined in eev.el) and the # ee alias (in my .zshrc) to execute parts of this file. # Executing this file as a whole makes no sense. # An introduction to eev can be found here: # # (find-eev-quick-intro) # http://angg.twu.net/eev-intros/find-eev-quick-intro.html # # Note 2: be VERY careful and make sure you understand what # you're doing. # # Note 3: If you use a shell other than zsh things like |& # and the for loops may not work. # # Note 4: I always run as root. # # Note 5: some parts are too old and don't work anymore. Some # never worked. # # Note 6: the definitions for the find-xxxfile commands are on my # .emacs. # # Note 7: if you see a strange command check my .zshrc -- it may # be defined there as a function or an alias. # # Note 8: the sections without dates are always older than the # sections with dates. # # This file is at <http://angg.twu.net/e/04dia-d.e> # or at <http://angg.twu.net/e/04dia-d.e.html>. # See also <http://angg.twu.net/emacs.html>, # <http://angg.twu.net/.emacs[.html]>, # <http://angg.twu.net/.zshrc[.html]>, # <http://angg.twu.net/escripts.html>, # and <http://angg.twu.net/>. # ####### debian-talks 1) Creative Commons 2) Liberdade em outras áreas * conhecimentos tecnicos (e.g., medicina, quimica, marcenaria): com o tempo tecnicas sao melhoradas e simplificadas * nao faz sentido restringir a divulgacao dessas tecnicas * medicamentos genericos * direitos autorais, bibliotecas 3) SL * Unix: * muitas pequenas ferramentas, simples, melhoraveis, substituiveis * ideias que se tornam mais simples com o tempo * comunidade - voce se ve cercado de "contribuicoes", e e' natural contribuir * surgiu e se desenvolveu nao-comercialmente - a ideia de que software so' surge via investimentos comerciais e' falsa * nada e' uma caixa preta - programa ilegiveis nao sao consertaveis ou previsiveis, e acabam sendo substituidos 4) Debian * fiel ao espirito de comunidade - tem regras (DFSG) que proibem comportamento anti-social [reescrever isso!] * qualidade: cada desenvolvedor toma conta de uns poucos pacotes com os quais tem muita intimidade * acessibilidade: facil instalar e desinstalar novos pacotes * facil explorar: facil instalar pacotes-fonte, roda-los passo-a-passo, modifica-los * qualquer um tem acesso a tudo que e' necessario para usar e modificar o sistema - nao e' necessario nem ter acesso a livros com licencas nao-livres 5) Debate *** You have joined channel #debian-rj *** Users on #debian-rj: edrx2 savio_R edrx *** #debian-rj modes: +n *** #debian-rj was created on Friday 2004/07/16 13:21:52 *** #debian-rj: [freenode-info] why register and identify? your IRC nick is how people know you. http://freenode.net/faq.shtml#nicksetup <edrx2> oi <edrx2> problema de firewall, parece ERC> /join #debian-br <savio_R> Putz... <edrx2> voce pode me mandar por mail? e' pequeno, nao e'? <edrx2> edrx@mat.puc-rio.br <savio_R> já estou mandando... <edrx2> tomara que a minha conta da puc aceite mails desse tamanho <savio_R> Estou mandando... <savio_R> O troço tem quase 1Mb <savio_R> Putz, está em 20% ainda... <savio_R> Vamos ao que interessa... <edrx> ta' <savio_R> Este filme enfoca a questão do Copyright. É bem didático. <edrx> eu vi ele ha' muito tempo atras <edrx> mas se as pessoas acham que informacao e' so' pra ser consumida, i.e., que elas nunca sao produtoras de informacao <savio_R> Poderíamos começar por ele, que é bem atual (ano passado) e começar a retroceder no tempo... <edrx> isso e' uma boa ideia <edrx> alias, otima ideia <edrx> eu devo poder dar uma boa nocao de como e' que as coisas eram no inicio <edrx> surgimento do unix, etc <savio_R> Hummm... <edrx> sabe o que me ocorreu? que a gente fala em software livre e informacao livre e as pessoas pensam em programas de graca e troca de mp3 pela internet <savio_R> Ôpa! acertou na mosca! <savio_R> temos que deixar claro o que é de graça... <edrx> talvez a gente possa enfatizar um outro ponto de vista, que e' o modo academico de divulgar informacao - artigos, credito aos primeiros descobridores, um esquema nao comercial, etc <edrx> tem uma mencao em algum texto da gnu, vou tentar descobrir qual e', do que aconteceu num laboratorio de biologia que uns pesquisadores japoneses tinham instalado numa ilha do pacifico antes da segunda guerra <savio_R> Também é legal... <edrx> veio a guerra e eles tiveram que abandonar o laboratorio... ai' o que eles fizeram? deixaram tudo arrumadinho pra quem quer que viesse depois, com um bilhete sobre isso <savio_R> Então podíamos atacar em várias frentes: SL, Medicamentos genéricos, Meio acadêmico, Direito autoral livre... <edrx> isso! <edrx> boa lembranca, essa dos genericos <edrx> perai, vai escrevendo, vou pegar mais bolo e volto num instante :) <edrx> o swf chegou na puc, tou baixando ele pra ca' <savio_R> Legal... <savio_R> Depois mostrarmos que esta é uma discussão em vários lugares e com diferentes abordagens. Entramos em Unix, depois Linux e finalmente Debian. Ufa! <edrx> outra coisa que me ocorreu - tem muitas situacoes em que os autores querem que o trabalho deles seja divulgado <edrx> fanzines, por exemplo <edrx> pessoas gastavam dezenas de horas fazendo seus fanzines e depois vendiam alguns, ganhando uma grana que pagava o material mas nao o tempo <edrx> a gente e' ensinado que software so' se desenvolve com investimento comercial <edrx> e o movimento do software livre tai' pra mostrar que nao <edrx> putz <edrx> agora lembrei de mais uma coisa que eu gostaria de mostrar... <savio_R> Essa questão do dinheiro, não sei como abordar. <edrx> tem alguns tipos de pesquisa em que voce gasta meses ou anos procurando uma solucao que e' a melhor e mais simples <edrx> e o resultado e algo que cabe em poucas paginas, e' clarissimo e depois que voce ve aquilo fica totalmente obvio <edrx> muitos algoritmos sao assim <savio_R> Veja esta página: http://www.async.com.br/~kiko/FISL2003/babel/ <edrx> e varias linguagens de programacao foram evoluindo pra se tornarem mais simples, nao mais complicadas <savio_R> Acho que aí nos desviaremos... <savio_R> Viu a página? <edrx2> talvez... mas talvez de pra mencionar isso pra mostrar que em muitos casos a melhor ferramenta ou solucao e' algo intrinsicamente nao-comercial <edrx2> tou vendo <savio_R> Aí mostra que o SL tem dono e como se constroi o troço... <savio_R> Baseado nele podemos entrar no assunto Debian... <savio_R> Ficaria assim: <savio_R> 1) Creative Commons <savio_R> 2) Liberdade em outras áreas <savio_R> 3) SL <savio_R> 4) Debian <savio_R> 5) Debate <savio_R> Que acha? <edrx2> gostei <edrx2> sobre SL ter dono <edrx2> muitas vezes ele tem dono por uma exigencia legal - se nao tiver autor ninguem pode defende-lo <edrx2> (pense no departamento legal da GNU, e na exigencia deles de que a copyright seja passada pra GNU - apesar de o "authorship" continua sendo do autor) <edrx2> mas de qualquer modo tem um assunto que a gente ainda nao comecou a abordar <edrx2> o que que a gente vai falar do debian? :) <edrx2> ah, olha essa citacao aqui: <edrx2> Mike Perry relates a story about Chuck's CAD system which ran <edrx2> on the board whose design it had been written for. Chuck <edrx2> showed Mike that he had written the core of the CAD application <edrx2> in about five lines of code. When Mike asked him how long it <edrx2> had taken, he replied, "Oh, about two years." <edrx2> . <savio_R> Não entendi... Dá para contextualizar a citação? <edrx2> pode parecer que eu estou sendo muito dispersivo mas eu tou procurando alguns pouquinhos itens que a gente possa usar pra falar de liberdade em software e em outras areas... <edrx2> sim <edrx2> os computadores e softwares que a gente ve por ai dominando o mercado estao se tornando cada vez mais complicados e ineficientes <edrx2> as maquinas se tornam 10x mais rapidas e um editor de texto se torna 2x mais rapido (pense em word pra windows) <edrx2> mas tem uma galera que ta' puta da vida com isso ha' anos <edrx2> um pessoal que trabalha com uma linguagem de programacao chamada Forth <edrx2> eu ja' vi implementacoes de Forth feitas em 2kbytes ou menos <edrx2> e Forth e' tao extensivel que voce implementa algoritmos super otimizados bem facilmente, etc etc etc <savio_R> Ainda não entendi o contexto do CAD acima... Explique melhor <edrx2> o Chuck Moore, que e' o cara mencionado acima <edrx2> e' o autor (ou "descobridor") do Forth <edrx2> e ele tem essa obcessao por simplicidade e eficiencia <edrx2> desde a decada de 80 ele vem fazendo processadores cujo instruction set e' baseado em Forth <edrx2> os ultimos tem cerca de 16000 transistores (um pentium tem, sei la, 2 milhoes) e sao riiculamente rapidos <edrx2> ele desenvolve esses chips num CAD de chips que ele proprio escreveu <edrx2> esse CAD dele deve ter, se la', 25kbytes de codigo <edrx2> e pelo visto o nucleo do CAD foi encolhendo com o tempo <edrx2> ate' chegar a 5 linhas de codigo <edrx2> e' isso <edrx2> mas eu estou ciente de que pra mostrar uma citacao dessas eu teria que dar um contexto claro, e mostrar como `as vezes o mesmo problema admite uma solucao simples e elegante e uma solucao porca e bloated <edrx2> hm <edrx2> se bem que o espirito do unix e' esse <edrx2> um monte de ferramentas basicas, faceis de usar em conjunto (pense em pipes de shell) <edrx2> e as vezes as ferramentas sao debugadas ou trocadas pro outras melhores <edrx2> hm <savio_R> Estou achando teu discurso muito para iniciados... <edrx2> conhecimento cientifico e' intrinsicamente nao-comercial, bom software tambem... <edrx2> talvez voce tenha razao <savio_R> Que tal falar do Unix assim: Unix é modular portanto permite ser feito por várias pessoas e portanto poderá ser livre? <edrx2> eu gostaria de poder mostrar porque e' que algumas pessoas se empolgam tanto por programacao e porque e' que pra elas e' um prazer entender as ferramentas que ja' existem e melhora-las, e criar outras <edrx2> nao e' so' uma questao de "pode ser livre" <edrx2> existe uma nocao de comunidade - voce comeca a usar unix e voce ve que ja' existe uma comunidade, em que muita gente contribuiu - quem contribuiu ganhou o respeito e o carinho dos demais <edrx2> passa a ser natural contribuir <edrx2> e meio sociopatico nao contribuir <edrx2> voce acha que eu tou viajando demais? <savio_R> É por aí... Ligar: Unix e conhecimento coletivo. <edrx2> eu sei que eu ainda tou um pouco longe de poder expor isso bem em 5 minutos... <savio_R> Sinceridade: longe pá_caralho... <savio_R> Já abri um documento para anotar nossas idéias. <edrx2> nao sei se tao longe assim... acho que com algumas horas em cima dessas ideias eu consigo compactar algumas das ideias principais bem em uns 3 slides <savio_R> Você concordou com a estrutura da coisa? <edrx2> o meu orientador uma vez me disse uma coisa que eu achei batatissima <edrx2> sim, a estrutura ta' otima <edrx2> que e' muito mais dificil preparar uma apresentacao de 15 minutos do que uma de 45 <savio_R> Então anota aí: <edrx2> manda <savio_R> 1) Creative Commons <savio_R> 2) Liberdade em outras áreas <savio_R> 3) SL <savio_R> 4) Debian <savio_R> 5) Debate <savio_R> Item 1 - resolvido, a menos que o auditório não tenha datashow. Beleza? <edrx2> isso a gente ja' tem (eu vou salvar o log todo da conversa) <edrx2> beleza <edrx2> de novo: como e' que a gente vai caracterizar o debian? (item 4) <savio_R> Item 2 - muito genérico. Qualquer coisa que agente falar está bom. É só citar que existe isso em outros lugares. <savio_R> Beleza? <edrx2> como uma ponte entre a ideia de desenvolvimento comunitario e usabilidade? <edrx2> tudo bem, mas eu tou a fim de dar uma caprichada nesse item 2 <savio_R> Usabilidade???? <savio_R> Não entendi... <edrx2> no sentido de que os pacotes sao facilmente acessiveis, faceis de instalar em conjunto, o sistema e' funcional, a organizacao social e' bem azeitada, etc <edrx2> "usabilidade" foi uma palavra ruim <savio_R> Não é bem isso que estou pensando... <savio_R> Quero politizar a questão do SL através do item 2. O que acha? <edrx2> ah, entao o item 3 e' uma visao mais tecnica, e a parte politica vai pro item 2? <edrx2> ok <savio_R> Isso que pensei... <savio_R> Concorda? <edrx2> sim <savio_R> Item 2, resolvido? <edrx2> so' uma curiosidade... voce esta' fazendo outras coisas ao mesmo tempo? :) <edrx2> sim <savio_R> sim <edrx2> achei que eu talvez estivesse perdendo 90% do que voce estava pensando, ja' que voce estava mandando msgs tao devagar :) <savio_R> Ôpa! Não é por causa disto não... <savio_R> Eu sou "catamilhógrafo"... <edrx2> :) <edrx2> eu bato quase so' com os indicadores, mas muito rapido <savio_R> Item 3 - agora a porca torce o rabo... <savio_R> Eu digito com todos mas não tão rápido... <edrx2> tou tentando escrever uns versao com subitens... <savio_R> 3) abordaremos a modularidade do Unix, a borboleta do Stalman, Torvalds e sei lá o que mais.. <edrx2> borboleta? <savio_R> Confundi o bug da impressora com a borboleta sei lá de onde... <edrx2> ah, ta' <savio_R> Reparei uma coisa: sua acentuação é assim: esta'. Por que? <savio_R> Você está itemizando a coisa? <savio_R> Vou fazer um prato de comida e já volto... <edrx2> estou, mas estou hesitando bastante, por isso tou meio devagar <edrx2> e' que nem sempre eu recebo acentos direito quando eu uso esse cliente de IRC, entao eu me acostumei a escrever sem acentos... <edrx2> e', esta', nao <savio_R> voltei <edrx2> oi <savio_R> Voltei conversar com você almoçando. Você não vai ligar se eu falar de boca cheia, né? <edrx2> nao <edrx2> e se voce melecar o seu teclado eu nao vou nem reparar <savio_R> A questão dos acentos é problema, ou melhor, a solução de quem usa utf-8. Você não precisa se preocupar com isto. Nós não entendemos eles mas eles nos entendem... <edrx2> o erc nem sempre entende acentos <edrx2> e eu nao tive paciencia de entender as entranhas dele, ou de perguntar pros desenvolvedores <savio_R> ERCati... <savio_R> brincadeirinha.. <savio_R> Respeito o Emacs pra caramba. Apesar de não entender nadinha... <edrx2> alias, o diogo ta' bem animado pra gente marcar aqueles encontros em que eu vou mostrar o basico de emacs e lisp... <savio_R> Eu também! <edrx2> e uma amiga minha que tambem e' professora da uerj tambem esta' <edrx2> oba! deixa so' eu me liberar dos cursos que eu tou dando... <savio_R> Putz! Já tem cara de curso... <savio_R> Curso de Emacs com Edrx... <savio_R> Se for aí, acabo por te convencer a usar o Sid... <savio_R> O Emacs dele já é gráfico! <edrx2> o do woody tambem e' <edrx2> e eu uso o emacs do cvs tanto aqui quanto num redhat incrivelmente primitivo no laboratorio da puc <edrx2> a interface grafice dele e' muito boa <savio_R> o do woody é o 21 <savio_R> o do woody é o 21? <edrx2> 21.2.1 <edrx2> o do CVS e' 21.3.50 <edrx2> alias, voce ja' viu isso aqui? e' so' uma curiosidade, mas... <edrx2> http://angg.twu.net/elisp/tron.el.html <edrx2> tem um link pra um .png <savio_R> O do sid é: 21.3+1-5 0 <edrx2> legal <edrx2> aqui eu tenho tanto o do cvs quanto o da woody <savio_R> Voltando: quais são suas hesitações na itemização? <edrx2> vou juntar o que eu ja' itemizei e pastar aqui... <savio_R> manda! <edrx2> 1) Creative Commons <edrx2> 2) Liberdade em outras áreas <edrx2> * conhecimentos tecnicos (e.g., medicina, quimica, marcenaria): com o tempo <edrx2> tecnicas sao melhoradas e simplificadas <edrx2> * nao faz sentido restringir a divulgacao dessas tecnicas <edrx2> 3) SL <edrx2> * Unix: <edrx2> * muitas pequenas ferramentas, simples, melhoraveis, substituiveis <edrx2> * ideias que se tornam mais simples com o tempo <edrx2> * comunidade - voce se ve cercado de "contribuicoes", e e' natural contribuir <edrx2> 4) Debian <edrx2> 5) Debate <edrx2> . <edrx2> viu, ainda nao pus muitos subitens... <edrx2> voce ja' viu isso aqui? <edrx2> http://www.gnu.org/philosophy/right-to-read.html <savio_R> Estou abrindo, espere... <savio_R> Não sei se pega bem usar este tipo de discurso, ameaçador... <savio_R> O que acha? Não é melhor ficar em cima de fatos concretos? <edrx2> esse "right to read" e' uma caricatura <edrx2> feita pra enfatizar um ponto <edrx2> num extremo todo o conhecimento e' livre <edrx2> no outro extremo tudo e' pago <edrx2> alias a ideia de creative commons e' exatamente essa, nao e'? <edrx2> "unencumbering" <savio_R> Traduz, por favor... <edrx2> como eu estou sem placa de som eu devo estar perdendo metade do barato do filminho da CC... <savio_R> Metade? Sem som não dá... <edrx2> poder usar coisas sem restricoes e complicacoes... <edrx2> versus viver com medo de estar violando clausulas legais <savio_R> Acho que você deve dar um pulinho aqui em casa... Ambiente gráfico, gnome, etc... <edrx2> e nao ter acesso ao que voce precisa <edrx2> tambem acho <edrx2> voce tem o dict-gcide, nao tem? <savio_R> o que é isto? <edrx2> PUTZ! :) <savio_R> Pô! Não vai falar? <edrx2> apt-get install dict dictd dict-gdcide dict-jargon <edrx2> ops <edrx2> apt-get install dict dictd dict-gcide dict-jargon <savio_R> Espere aí... <edrx2> depois: dict encumber <edrx2> me diz quando tiver visto e entendido <edrx2> ah sim: e apt-get install dict-wn <savio_R> Não estou entendendo... <edrx2> sao dicionarios <savio_R> encumber retornou vazio <savio_R> São para modo gráfico? <edrx2> o dict e' pra modo texto <edrx2> o dictd e' um daemon <edrx2> e os dict-xxx sao os dicionarios <edrx2> tenta com alguma outra palavra em ingles <edrx2> muito estranho <savio_R> Tenho instalado o stardict, não é a mesma coisa? <savio_R> stardict - International dictionary for GNOME 2 <savio_R> É bem bacana este. Ligo ele, arrasto o rato na tela e aparece a tradução... <edrx2> hmm <edrx2> parece legal <edrx2> que dicionario ele usa? <edrx2> acho que o primeiro dicionario serio/grande livre foi um antecessor do dict-gcide <edrx2> um monte de voluntarios bateram a edicao de 1913 do webster, que tinha caido em dominio publico <edrx2> e a partir dai' foram atualizando <savio_R> Não sei qual usa, deixa eu ver pelo dpkg... <edrx2> o dicionario do dict-gcide, gzipado, tem 13M <edrx2> se a gente tivesse algo assim em portugues talvez desse pra reduzir o analfabetismo da comunidade SL brasileira :P <edrx2> que que voce acha da gente deixar o resto da conversa pra depois? <edrx2> eu tenho homeopata as 19:00hs e ainda nao almocei <savio_R> Está certo... <edrx2> ah, perai <edrx2> adicionei uns itens, vou pastar como a minha lista esta' agora <savio_R> manda.. <savio_R> Almocei conversando contigo... ERC> /dcc send savio_r /tmp/palestra-itens.txt *** DCC: offering /tmp/palestra-itens.txt to savio_r <edrx2> tou mandando por dcc, ve se funciona... ERC> mldonkey <edrx2> poder usar coisas sem restricoes e complicacoes... <edrx2> versus viver com medo de estar violando clausulas legais <savio_R> Acho que você deve dar um pulinho aqui em casa... Ambiente gráfico, gnome, etc... <edrx2> e nao ter acesso ao que voce precisa Unix muitas pequenas ferramentas, simples, melhoraveis, substituiveis ideias que se tornam mais simples com o tempo Conhecimento tecnico: unix e' modular: idem algoritmos: idem Unix e' tecnicamente melhor, e muito mais empolgante espirito de comunidade algoritmos e modulos do unix: idem http://mussi.homelinux.org/~elias/cdd.pdf http://people.debian.org/~tille/debian-med/talks/paper-cdd/debian-cdd.html/index.en.html <edrx> pronto <edrx> acabei conversando um bocado com o rafael (o historiador) na quinta <savio> Ah é? <savio> Diga... <edrx> ele deu umas sugestoes pra gente reduzir a intersecao da nossa palestra com a dele <savio> Quais? <edrx> que a gente reduzisse a parte de debian na nossa palestra e fizesse uma <savio> uma???... <edrx> palestra sobre software livre, que seria uma preparacao pra palestra dele, que e' sobre o projeto debian... <savio> Deixe-me ver o nosso arquivo da palestra... <edrx> eu achei isso legal, porque de qualquer modo a gente ia ter que espremer a parte sobre debian em tres ou quatro slides no final <savio> 1) Creative Commons <savio> 2) Liberdade em outras áreas <savio> * conhecimentos tecnicos (e.g., medicina, quimica, marcenaria): com <savio> o tempo tecnicas sao melhoradas e simplificadas <savio> * nao faz sentido restringir a divulgacao dessas tecnicas <savio> * medicamentos genericos <savio> * direitos autorais, bibliotecas <savio> 3) SL <savio> * Unix: <savio> * muitas pequenas ferramentas, simples, melhoraveis, substituiveis <savio> * ideias que se tornam mais simples com o tempo <savio> * com <savio> unidade - voce se ve cercado de "contribuicoes", e e' <savio> natural contribuir <savio> * surgiu e se desenvolveu nao-comercialmente - a ideia de que <savio> software so' surge via investimentos comerciais e' falsa <savio> * nada e' uma caixa preta - programa ilegiveis nao sao <savio> consertaveis ou previsiveis, e acabam sendo substituidos <savio> 4) Debian <savio> * fiel ao espirito de comunidade - tem regras (DFSG) que proibem <savio> comportamento anti-social [reesc <savio> rever isso!] <savio> * qualidade: cada desenvolvedor toma conta de uns poucos pacotes <savio> com os quais tem muita intimidade <savio> * acessibilidade: facil instalar e desinstalar novos pacotes <savio> * facil explorar: facil instalar pacotes-fonte, roda-los <savio> passo-a-passo, modifica-los <savio> * qualquer um tem acesso a tudo que e' necessario para usar e <savio> modificar o sistema - nao e' necessario nem ter acesso a livros <savio> com licencas nao-livres <savio> 5) Debate <edrx> isso <savio> Então o item 4 vai pro beleleu... <savio> Vou entrar na página para ver a programação... <edrx> se a gente resolver topar a sugestao... porque afinal so' eu estava la' na quinta, e como o indiox tava numa situacao estranhissima com a palestra dele <savio> Não entendi... <savio> O que o indiox tem a ver com isso? <edrx> (ele nao aparece, ta' ocupadissimo, e quando perguntaram pra ele sobre a plaestra dele, isso em varias ocasioes diferentes, a reacao dele foi de "putz, e' mesmo... sobre que que e' a minha palestra mesmo?") <edrx> entao o pessoal tava falando de considerar que a palestra dele nao vai existir <edrx> e eu nao sabia bem como e' que ia ser a nossa situacao <savio> Não estou encontrando a palestra dele na programação... <edrx> qdz, o rafael perguntou se havia alguma chance de eu acabar dando a nossa palestra sozinho (mesmo que a preparacao seja a dois) e eu disse que nao sabia, talvez sim <edrx> acho que ja' devem ter tirado, entao... <edrx> e' sobre debian em outros nucles <edrx> nucleos <edrx> mas entao <savio> Ah! Me lembrei... <savio> Quanto a nossa e a do Rafael, estão muito distantes no tempo. Uma deveria seguir a outra... <savio> Veja na programação. <edrx> eu pensei o seguinte: a gente comeca com o creative commons e dai' a gente vai recuar pra mostrar a origem da ideia... <edrx> acho que o horario vai ser mudado. <savio> Lá no CREA vai ter um datashow para vermos o arquivo em flash? <savio> Se tiver acho que é uma super introdução... <edrx> sim <savio> Então beleza... <savio> Item 1 definido! <savio> Item 2: <edrx> entao: algumas pessoas da plateia talvez nao saibam muito bem o que e' um programa, entao a gente faz uma introducao rapida a isso... eu tive uma ideia bem legal de como apresentar isso: <savio> Fala... <edrx> comecar descrevendo uma cena: na cafeteria na Bell Labs um programador - deixa eu ate' aproveitar e encontrar o nome dele agora... <savio> Só para não me perder... <savio> Isto estaria em que item? <edrx> no 3... mas talvez o 2 e o 3 se misturem, talvez ate' mudem de ordem... <savio> Tá, fala da idéia... <edrx> ok: Brian Kernighan (o programador), Lynn Jelinski (Quimica) <edrx> estavam conversando na cafeteria da Bell Labs; ela diz: "...e cada artigo tem varios diagramas de estruturas moleculares, como esse aqui, e cada um da' um bocado de trabalho pra fazer a nanquim..." <edrx> e o BK diz: "ei, eu acho que eu posso fazer um programa que vai facilitar o seu trabalho"... <edrx> uma semana depois o programa esta' pronto. <edrx> slide seguinte, uma nocao de como e' um "programa" desses. <edrx> (um instante, estou trocando o CD) <edrx> pronto... no inicio as pessoas tinham um sistema que permitia a elas especificarem coordenadas e desenhas pontos, retas, e texto... <edrx> tipo isso aqui <edrx> BOLINHA 0 1 <edrx> BOLINHA 4 0 <edrx> BOLINHA 1 5 <edrx> BOLINHA 3 4 <edrx> LINHA 0 1 4 0 <edrx> TEXTO -0.5 0 (0,1) <edrx> etc <edrx> e do lado uma figurinha do que isso vira <savio> Não entendi nada... <edrx> ok, pensa que o slide e' o seguinte <savio> O que é "BOLINHA"? <edrx> do lado esquerdo 10 linhas de codigo numa linguagem imaginaria, mas que vai ser super facil de entender quando eu explicar <edrx> BOLINHA x y desenha um "ponto gordo" nas coordenadas x e y <edrx> LINHA x1 y1 x2 y2 liga esses dois pointos com um segmento <edrx> TEXTO x y "texto" escreve um texto comecando em certas coordenadas <edrx> ok? <edrx> slide seguinte: mesma figura, mas descrita numa linguagem um pouco mais poderosa <savio> Sim, mas aonde entra isso com a conversa dos dois e com o Unix? <edrx> a questao e': como e' que alguem pode fazer um programa em uma semana? o cara fez o autocad? fez o nero? nao - fez algo que no final eram 200 linhas de codigo no maximo <edrx> eu quero mostrar como e' que as pessoas faziam uma ferramenta aqui e outra ali, e todas se conectavam, e as pessoas seguintes iam podendo fazer coisas bem mais compicadas <edrx> porque essas coisas se tornavam simples pq a maior parte do que ela deveriam fazer ja' estava programada <edrx> ate' aqui tudo bem? isso e' pra ser uns 4 slides e 5 minutos ou menos <edrx> outra coisa: o que era um "programador" nesse tempo, no ambiente academico? o que era o trabalho que eles tinham que fazer pra continuarem no emprego? <savio> Entendi. Você está falando em um cultura de manipulação do computador... <edrx> isso! ...eles tinham que produzir programas que fossem interessantes e uteis, que virassem artigos que fossem lidos e citados depois... <edrx> eles *escolhiam* o que era mais interessante; nao havia patroes mandando "faca isso, faca aquilo" (em geral) - mas isso nao e' tao central... <savio> Você desviou muito. Que tal relacionar isto com um item já definido? <savio> * muitas pequenas ferramentas, simples, melhoraveis, substituiveis <edrx> entao o ambiente em que esses caras trabalhavam e viviam era um ambiente que estava ligado, de todos os jeitos possiveis, com tratamento de texto, prepararacao de artigos, preparacao de figuras... <savio> Você está introduzindo um item novo que seria: cultura de produção de software "antigamente" <edrx> sim, sim - eu desvie pra esse lado na conversa com o rafael pq eu nao estava com as minhas anotacoes na hora, mas repara: eu vou estar falando na pratica de quais sao algumas dessas ferramentas: no que eu mostro um programa chato com todas as coordenadas dadas explictitamente, depois um em que os pontos tem nomes, depois um que desenha uma estrutura quimica complicada so' com umas 5 linhas <edrx> eu tou introduzindo - e vou mostrar rapidamente - uma ferramente que traduz uma dessas linguagens pra outra, "expandindo abreviacoes" - e e' isso que e' uma linguagem de programacao. <edrx> alias eu encontrei uma citacao do noam chomsky outro dia... mas bom, nao ta' facil de achar agora, alguma outra hora te mando. <savio> Ôpa! Minhas crianças estão reclamando. Tenho que ir pega-las... <savio> Amanhã estarei de manhã em casa. Pode teclar? <edrx> uma outra coisa que me ocorreu - um pouco desconectada `a primeira vista, mas me pareceu uma imagem legal - e' a seguinte: <edrx> posso. ainda da' preu terminar so; essa frase? <savio> Vai... <edrx> um grupo de criancas jogando bola... a bola fura e alguem faz uma bola de meia. ai' aparece um cara bobo, chato, feio e mau, com segurancas enormes, e diz: <edrx> voces me devem xxx, eu tenho a patente da ideia da bola de meia. <edrx> claro que eu vou avisar que isso e' uma caricatura da situacao <edrx> se tiver comentarios finais manda, senao fica pra amanha. O que é um programa? AutoCAD? Como assim, fazer um programa em uma semana? Em uma hora? 5 minutos? trecho 1: Cena: Kernighan/Jilinski/Chem; em uma semana o programa estava pronto. Como é que alguém pode fazer um programa em uma semana? Alguém vai fazer um AutoCAD em uma semana? Programas são coisas simples. Exemplo: desenhanho um quadrado, versão chata e versão legal; expandindo abreviações. Diagramas químicos. Ambiente acadêmico: programadores tinham que fazer coisas interessantes e úteis e publicar artigos. Programas editavam texto e produziam figuras. Os novos programas usavam os programas anteriores. Como era a comunidade: Cultura oral, contato direto; os programadores estão mais envolvidos e mas ligados uns aos outros, mas não existe uma fronteira clara entre programadores e não-programadores; se eu faço um programa pra você você entende o programa. O feedback dos "usuários" ajuda a desenvolver o sistema. Diagrama: círculos Segurança e transparência Sobre os detalhes: "Você não precisa saber" - $. Transparência - citar ESR Questoes politicas: Ponto de vista atual: tudo que existe e' propriedade de alguem. "xxx e' meu": significado 1: pra voce usar voce vai ter que me pagar "xxx e' meu": significado 2: eu cuido de xxx (exemplo: filhos, gatos) "xxx e' meu": significado 3: eu sou o autor de xxx, eu devo ser uma das pessoas mais adequadas para explicar ou modificar xxx Responsabilidade? Ética? Qual a importância do dinheiro? Segurança: rms, emptry password, turismo Comunidades pequenas, ética, reputação Segredos; insiders; vender conhecimento. trecho 2: Grupo de crianças jogando bola. Bola de meia. Pra voce usar voce vai ter que me pagar Citação do Chomsky (palestra pra matemáticos) Unix muitas pequenas ferramentas, simples, melhoraveis, substituiveis ideias que se tornam mais simples com o tempo Conhecimento tecnico: unix e' modular: idem algoritmos: idem Unix e' tecnicamente melhor, e muito mais empolgante espirito de comunidade algoritmos e modulos do unix: idem Fun factor: <http://www.catb.org/~esr/writings/taoup/html/ch01s05.html> - This has real economic significance. The fun factor started a virtuous circle early in Unix's history. People liked Unix, so they built more programs for it that made it nicer to use. Today people build entire, production-quality open-source Unix systems as a hobby. To understand how remarkable this is, ask yourself when you last heard of anybody cloning OS/360 or VAX VMS or Microsoft Windows for fun. The `fun' factor is not trivial from a design point of view, either. The kind of people who become programmers and developers have `fun' when the effort they have to put out to do a task challenges them, but is just within their capabilities. `fun' is therefore a sign of peak efficiency. Painful development environments waste labor and creativity; they extract huge hidden costs in time, money, and opportunity. 1) Creative Commons 2) Liberdade em outras áreas * conhecimentos tecnicos (e.g., medicina, quimica, marcenaria): com o tempo tecnicas sao melhoradas e simplificadas * nao faz sentido restringir a divulgacao dessas tecnicas * medicamentos genericos * direitos autorais, bibliotecas 3) SL * Unix: * muitas pequenas ferramentas, simples, melhoraveis, substituiveis * ideias que se tornam mais simples com o tempo * comunidade - voce se ve cercado de "contribuicoes", e e' natural contribuir * surgiu e se desenvolveu nao-comercialmente - a ideia de que software so' surge via investimentos comerciais e' falsa * nada e' uma caixa preta - programa ilegiveis nao sao consertaveis ou previsiveis, e acabam sendo substituidos 4) Debian * fiel ao espirito de comunidade - tem regras (DFSG) que proibem comportamento anti-social [reescrever isso!] * qualidade: cada desenvolvedor toma conta de uns poucos pacotes com os quais tem muita intimidade * acessibilidade: facil instalar e desinstalar novos pacotes * facil explorar: facil instalar pacotes-fonte, roda-los passo-a-passo, modifica-los * qualquer um tem acesso a tudo que e' necessario para usar e modificar o sistema - nao e' necessario nem ter acesso a livros com licencas nao-livres 5) Debate O que é um programa? AutoCAD? Como assim, fazer um programa em uma semana? Em uma hora? 5 minutos? trecho 1: Cena: Kernighan/Jilinski/Chem; em uma semana o programa estava pronto. Como é que alguém pode fazer um programa em uma semana? Alguém vai fazer um AutoCAD em uma semana? Programas são coisas simples. Exemplo: desenhanho um quadrado, versão chata e versão legal; expandindo abreviações. Diagramas químicos. Ambiente acadêmico: programadores tinham que fazer coisas interessantes e úteis e publicar artigos. Programas editavam texto e produziam figuras. Os novos programas usavam os programas anteriores. Como era a comunidade: Cultura oral, contato direto; os programadores estão mais envolvidos e mas ligados uns aos outros, mas não existe uma fronteira clara entre programadores e não-programadores; se eu faço um programa pra você você entende o programa. O feedback dos "usuários" ajuda a desenvolver o sistema. Diagrama: círculos Segurança e transparência Sobre os detalhes: "Você não precisa saber" - $. Transparência - citar ESR Questoes politicas: Ponto de vista atual: tudo que existe e' propriedade de alguem. "xxx e' meu": significado 1: pra voce usar voce vai ter que me pagar "xxx e' meu": significado 2: eu cuido de xxx (exemplo: filhos, gatos) "xxx e' meu": significado 3: eu sou o autor de xxx, eu devo ser uma das pessoas mais adequadas para explicar ou modificar xxx Responsabilidade? Ética? Qual a importância do dinheiro? Segurança: rms, emptry password, turismo Comunidades pequenas, ética, reputação Segredos; insiders; vender conhecimento. trecho 2: Grupo de crianças jogando bola. Bola de meia. Pra voce usar voce vai ter que me pagar Citação do Chomsky (palestra pra matemáticos) Unix muitas pequenas ferramentas, simples, melhoraveis, substituiveis ideias que se tornam mais simples com o tempo Conhecimento tecnico: unix e' modular: idem algoritmos: idem Unix e' tecnicamente melhor, e muito mais empolgante espirito de comunidade algoritmos e modulos do unix: idem Fun factor: <http://www.catb.org/~esr/writings/taoup/html/ch01s05.html> - This has real economic significance. The fun factor started a virtuous circle early in Unix's history. People liked Unix, so they built more programs for it that made it nicer to use. Today people build entire, production-quality open-source Unix systems as a hobby. To understand how remarkable this is, ask yourself when you last heard of anybody cloning OS/360 or VAX VMS or Microsoft Windows for fun. The `fun' factor is not trivial from a design point of view, either. The kind of people who become programmers and developers have `fun' when the effort they have to put out to do a task challenges them, but is just within their capabilities. `fun' is therefore a sign of peak efficiency. Painful development environments waste labor and creativity; they extract huge hidden costs in time, money, and opportunity. %page O que é um programa? %fore "orange", size 7 Hoje em dia: %%fore "white" %% Exemplos: AutoCAD, Windows, jogos Complicados Custam caro %% More Programming Pearls, p.91 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% mail -s 'texto dos slides' saviodebian@terra.com.br <<'%%%' %page O que é um programa? Personagens: Brian Kernighan (programador) Lynn Jelinski (química) Bell Labs, cafeteria, 1983 (?) Problema: desenhar estruturas químicas. <<<lsd-erowid.png>>> Em uma semana o programa estava pronto. 500 linas de Awk, 70 linhas de Pic ...e um artigo de 16 páginas (Computers and Chemistry, 1987) %page O que é um programa? Hoje em dia: M$-Windows, AutoCAD, jogos Complicados Custam caro Quem faz? Nerds e profissionais. %page O que é um programa? BOLINHA 0 1 BOLINHA 4 0 BOLINHA 5 4 BOLINHA 1 5 LINHA 0 1 4 0 LINHA 0 1 4 0 LINHA 0 1 4 0 LINHA 0 1 4 0 TEXTO -0.5 0 "(0,1)" TEXTO 3.5 -1 "(4,0)" <<<quadrado1>>> %page O que é um programa? PONTO A 0 1 "(0,1)" abaixo PONTO B 4 0 "(4,0)" abaixo PONTO C 5 4 PONTO D 1 5 SEGMENTOS A B B C C D D E <<<quadrado1>>> %page O que é um programa? Idéia-chave: expandir abreviações. Editor de texto Sistema para desenhar pontos e linhas Sistema que expande abreviações "Abreviações" para química Listas de abreviações são texto Programas são texto %page O que é um programa? proc PONTO {nome x y texto posicao} { BOLINHA $x $y TEXTO $x $y $texto $posicao COORDS $nome $x $y } PONTO A 0 1 "(0,1)" abaixo BOLINHA 0 1 TEXTO 0 1 "(0,1)" abaixo COORDS A 0 1 %page Transparência Você aparece com um problema. Eu faço um programa pra você (50 linhas) e explico ele em todos os detalhes. Você aprende como o sistema de abreviações funciona, etc. Bem-vindo ao clube! %page O que era um programador profissional? Ambiente acadêmico - pesquisa Programas Artigos Tinham que ser: Interessantes Úteis Claros Inovadores %page O conhecimento se acumulava... Editor de texto Sistema para desenhar pontos, retas e letras Abreviaturas (linguagens de programação) Diagramas Estruturas químicas ... %page Posse e responsabilidade "X é meu" tem vários significados: Eu posso usar (exemplo: pincel, carro, panela) Eu cuido de X (exemplo: filhos, bichos de estimação) Eu sou o autor de X (exemplo: X é um programa), \ daí eu devo ser uma das pessoas mais adequadas para explicar ou modificar X Pra usar X você vai ter que me pagar \ (exemplo: programa comercial) Eu posso fazer o que quiser com X \ (exemplo: terreno de 10,000 Km2 no Pará cheio de \ madeiras nobres, minérios e uns índios inúteis) %page Posse e responsabilidade Ponto de vista atual: tudo que existe e' propriedade de alguem. "Responsabilidade"? Como assim? Dinheiro %page Segurança Hoje em dia meu computador tem: a minha senha do banco, os sites pornôs que eu acesso, meu diário (e diário é coisa de menina). Se alguém acessa meu computador eu tou ferrado. Hoje em dia a gente vive com medo. Era mais fácil viver com um subemprego nos anos 60 e 70 \ do que hoje em dia. Muitas pessoas levavam as suas utopias a sério e \ experimentavam estilos de vida alternativos. Stallman: vida de monge hippie, dedicação integral à \ programação e ao movimento do Software Livre. %page Segurança Sistema: ITS (MIT, início da década de 70) Qualquer usuário podia ler e alterar qualquer arquivo. Pessoas de outras universidades podiam se conectar no \ sistema remotamente e fazer o que quisessem. Pessoas do MIT podiam ver o que os visitantes estavam fazendo. ("Espiar por cima do ombro") Pessoas podiam ler os e-mails de outras Em geral os visitantes entendiam como deviam se comportar. %page Unix Surge no meio de toda essa experimentação Criado por programadores, sem "ordens vindas de cima" Pequeno, modular, prático, claro, modificável Feito pra ser mais prático Pra tornar os programadores mais eficientes Não havia distinção entre programador e usuário Era fácil conectar um módulo ao outro Feito pra gerar espírito de comunidade %page Unix Em poucos anos rodava em vários computadores diferentes, \ em vários lugares do mundo Os computadores rodavam o sistema distribuído pelo fabricante \ e mais o Unix (Os fabricantes não davam suporte técnico ao Unix) Pessoas usando por hobby Grupos de usuários em vários lugares %page Unix Haviam usuários mais experientes, mas "todo mundo era \ autodidata" Você aprendia: Lendo os programas e "artigos" dos outros (programas \ são texto!) Escrevendo os seus programas e "artigos" Já havia uma forma primitiva de internet (por telefone) O sistema ia incorporando as melhores contribuições %%% Minorias Autodidatas Mas não foi sempre assim. Computadores Impressoras Revistas acadêmicas Discussões Utopias Panfletos, etc Disseminação de informação Inclusive underground Discutia-se tudo. Atitude com relação ao usuário, segurança, etc. Informação livre Notícias Denúncias %% %fore "red" %fore "white" %pause Responsabilidade? Ética? Qual a importância do dinheiro? %% Jon Bentley: More Programming Pearls, p.91 %% http://www.cs.pdx.edu/~trent/gnu/groff/122.ps %% http://cm.bell-labs.com/netlib/typesetting/chem.gz # Local Variables: # coding: utf-8-unix # End: