Diferencia entre revisiones de «Participación y Gestión de Proyectos de Software Libre»
Línea 333: | Línea 333: | ||
## Servidor (nntp.aoie.org, news.aoie.org, [https://greycoder.com/best-free-usenet-servers/] ) | ## Servidor (nntp.aoie.org, news.aoie.org, [https://greycoder.com/best-free-usenet-servers/] ) | ||
## Online: Google Groups [https://secure.wikimedia.org/wikipedia/en/wiki/Google_Groups], Gmane [https://secure.wikimedia.org/wikipedia/en/wiki/Gmane] Binsearch [http://binsearch.info/groupinfo.php] | ## Online: Google Groups [https://secure.wikimedia.org/wikipedia/en/wiki/Google_Groups], Gmane [https://secure.wikimedia.org/wikipedia/en/wiki/Gmane] Binsearch [http://binsearch.info/groupinfo.php] | ||
− | ## Ejemplos mensajes importantes: [https://groups.google.com/forum/#!msg/comp.os.minix/dlNtH7RRrGA/SwRavCzVE7gJ]. Ver mensaje de Linus Torvalds | + | ## Ejemplos mensajes importantes: [https://groups.google.com/forum/#!msg/comp.os.minix/dlNtH7RRrGA/SwRavCzVE7gJ]. Ver mensaje de Linus Torvalds[https://www.cs.cmu.edu/~awb/linux.history.html] Historia de linux [https://ponderwall.com/index.php/2019/04/02/linux-tanenbaum-newsgroup-linus-torvalds/] Tanenbaum/Linus |
− | [https://www.cs.cmu.edu/~awb/linux.history.html] Historia de linux | ||
− | [https://ponderwall.com/index.php/2019/04/02/linux-tanenbaum-newsgroup-linus-torvalds/] Tanenbaum/Linus | ||
## Servidores ejemplo: news2.neva.ru , nntp.aioe.org, news.aioe.org | ## Servidores ejemplo: news2.neva.ru , nntp.aioe.org, news.aioe.org | ||
+ | ## Suscribirse a comp.os.minix | ||
# Herramientas comuniación y coordinación: Listas, Foros, IRC, Bug reports, Control de versiones, Manejo de proyectos | # Herramientas comuniación y coordinación: Listas, Foros, IRC, Bug reports, Control de versiones, Manejo de proyectos | ||
## Listas de Correo (publicas, desarrollo, etc) | ## Listas de Correo (publicas, desarrollo, etc) |
Revisión del 10:20 17 sep 2020
14 reuniones, 4 horas cada una = 56 horas - clases 2 reuniones, 4 horas cada uno = 8 horas - evaluaciones Lista de la materia: tpi-est-proysl@listas.unq.edu.ar
Sumario
- 1 Programa
- 2 Bibliografía
- 3 Evaluación
- 4 Contribuciones proyectos de software libre 2018s01
- 5 Contribuciones proyectos de software libre 2019s01
- 6 Contribuciones proyectos de software libre 2020s01
- 7 Clase 1
- 8 Clase 2
- 9 Clase 3
- 10 Clase 4
- 11 Clase 5
- 12 Clase X
- 13 Clase X
- 14 Clase X
- 15 Clase 11
- 16 Ideas
Programa
* Cibercultura y cultura hacker. Nuevos modos de relacionarse en internet: cultura abierta, distribuída, libre, producción colaborativa en red. * Idea de software libre, movimiento de software libre, principios, principales productos y logros. * Participación en proyectos de software libre: fuentes de información, formas que puede asumir la participación. * Creación de proyectos de software libre: de la idea a la formulación * El sitio de la comunidad del proyecto: forjas de software libre y otros espacios de trabajo colaborativo. * Herramientas para el desarrollo de un proyecto de software libre, en particular: herramientas de comunicación del proyecto, de análisis y diseño y desarrollo de aplicaciones, de gestión de código y control de versiones, de gestión de la documentación. * Gestión de la admisión de contribuciones, requerimientos, errores y parches. * Etiqueta en la comunicaciones electrónicas en el marco de los proyectos. * Motivaciones de los desarrolladores y de los grupos de software libre. * Roles usados más frecuentemente, mecanismos de decisión dentro del proyecto. * Bifurcaciones de proyectos, conexiones entre proyectos, cierre de proyectos. * Licencias para obras intelectuales, en particular para software y para su documentación técnica asociada. Licencias de software libre. BSD. GNU. Mozilla. * Experiencia concreta de participación en al menos un proyecto existente.
Bibliografía
Lo que se pensaba del Futuro 15 años atrás
- Camino al Futuro - Bill Gates
- Ser Digital - Nicholas Negroponte
Peliculas
- Nerds 1 y 2.0.1
- Los piratas del Silicon Valley
- Revolution OS
- Linux Code
- The History of hacking Documentary
- En busca de hackers - Odisea
- Hippies from hell
Libros
- Internet, hackers y Software libre, Carlos Gradin Compilador [1]
- Software libre para una sociedad libre - Richard Stallman [2]
- Etica hacker, Pekka Himanen [3]
- Aprender la Libertad, Ariel Vercelli [4]
- Repensando los bienes intelectuales comunes, Ariel Vercelli [5]
Articulos
- ¿Por que el futuro no nos necesita? - Bill Joy [6]
- Trampa en el ciberespacio, Roberto Di Cosmo [7]
- Documentos Halloween [8]
- Anarchism Triumphant: Free software and the death of copyright [9]
- http://biblioweb.sindominio.net/telematica/hacker-como.html
- https://es.wikipedia.org/wiki/Debate_Tanenbaum%E2%80%93Torvalds
En Argentina
- Llaneros Solitarios, Raquel Roberti y Fernando Bonsembiante [10] [11] 44-80, Argentina
- Mendozaconch 95, Fernando Bonsembiante [12]
- Congreso de hackers en Buenos Aires, Raquel Roberti [13]
- HBO- hacked by owl - zine Argento [14][15][16]
- Minotauro [17] [18] [19] [20]
- CIA [21]
- Todos los zines 80-90 https://vault.int256h.com/
- https://es.wikipedia.org/wiki/Hackmeeting
- ftp://rock.pungas.space/
Internacional
- 2600 [22] [23]
- CCC ( Chaos Computer Club) [24][25]
- https://carding.network/
The Architecture of Open Source Applications
- 500 lines or less
- http://www.aosabook.org/en/
Contributor covenant
Linus
- Does not use debian: https://www.youtube.com/watch?v=qHGTs1NSB1s
- top ten rules: https://www.youtube.com/watch?v=xZRo37r70lE
Otros
Evaluación
Criterios de evaluación
* Asistencia a clase * Horarios * Participación en clase * Tipo de participación en clase * Predisposición y cumplimiento de tareas parciales * Resultado, proceso de aprendizaje y puesta en común del Trabajo práctico * Resultado, proceso de aprendizaje y puesta en común del Trabajo final
Temas
Para aprobar la materia se debera hacer al menos una contribución real a un proyecto de software libre. Además se deberá documentar en el proceso en un informe a presentar. ( Proyecto, Problemática, Como se resolvío, Para que, canales de comunicación utilizados, errores y/o problemas, conclusión de la participación)
* https://github.com/MunGell/awesome-for-beginners * https://github.com/search?utf8=%E2%9C%93&q=label%3Afirst-timers-only+is%3Aissue+is%3Aopen&type= * https://goodfirstissue.dev/ * https://github.com/yourfirstpr/yourfirstpr.github.io/issues * https://roshanjossey.github.io/first-contributions/#project-list * http://up-for-grabs.net/ * https://developer.pidgin.im/wiki/ThirdPartyPlugins (hacer plugin)
En clase
* https://github.com/wasdk/WebAssemblyStudio * https://github.com/quadra-game/quadra * Sistema de traducción y traducción para https://github.com/taylorconor/tinytetris * Sistema de traducción y traducción para https://github.com/seehuhn/moon-buggy * https://myman.sourceforge.io/ * https://github.com/cymonsgames/ASCIIpOrtal * https://github.com/hackndev/0verkill * http://mbays.freeshell.org/intricacy/ * https://github.com/a-nikolaev/curseofwar * https://github.com/kragen/myman * http://rephial.org/ * https://github.com/terminal-based-games/ouroboros * https://github.com/jimmyverdoora/locked * Sistema de traducción y traducción para https://github.com/GrandpasCode/nInvaders * Nuevo idioma para https://github.com/pcottle/learnGitBranching/commit/1ac4ca93a7f34999c20aaa975a541c0a45d89a7f * https://boardgame.io/documentation/#/notable_projects * https://github.com/gponsinet/awesome-ascii
Cocos2djs: Tutorial
https://github.com/sawady/Cocos2d-js-Tutorial
gIDEt: Convertir Gedit3 en una IDE
https://github.com/proysl/gIDEt
Bateria electrónica con Arduino: ArDrumOne
http://www.interorganic.com.ar/josx/ArDrumOne.pdf
GINGA/NCL: Taller en la UNQ
Se realizo un tutorial durante 2 reuniones sobre TV Digital
QsimpleGuitar: Colaboración de parches
https://code.google.com/p/qsimpleguitar/issues/list
AAJM: Soporte para internacionalización y traducción al español
https://github.com/proysl/jugglemaster/commit/bf68ae596c288af3325a3ee609ac99d7d547835e
Contribuciones proyectos de software libre 2018s01
- https://github.com/gautamkrishnar/socli/pull/142
- https://github.com/tiehuis/2048-cli/pull/22
- https://github.com/fph/bastet/pull/15
- https://github.com/alexdantas/nSnake/pull/26
- https://github.com/jubalh/nudoku/pull/12
- https://github.com/rubymonsters/speakerinnen_liste/pull/729
- https://github.com/HuayraLinux/huayra-caripela/pull/18
- https://github.com/NaturalIntelligence/imglab/pull/45
- https://github.com/alexdantas/nSnake/pull/29
- https://github.com/matiasbian/forum-downtime-funtime-adventure/pull/1
- https://github.com/Program-AR/pilas-bloques/pull/364
- https://github.com/jcbvm/i18n-editor/pull/44
- https://github.com/jcbvm/i18n-editor/pull/45
- https://github.com/playframework/playframework/pull/8494
- https://github.com/locustio/locust/pull/827
- https://github.com/patricio87209/simonPugliese/tree/migracion_godot3
- https://github.com/daboth/pagan/pull/9
- https://github.com/thedevdojo/chatter/pull/220
- https://gitlab.com/esr/greed/merge_requests/1
- https://github.com/HuayraLinux/huayra-about/pull/6
Contribuciones proyectos de software libre 2019s01
- https://core.trac.wordpress.org/attachment/ticket/45907/45907.diff
- https://github.com/ifedapoolarewaju/igdm/pull/1007
- https://github.com/ifedapoolarewaju/instagram-private-api/pull/1
- https://github.com/codetriage/codetriage/pull/802
- https://github.com/calazans10/sudoku/pull/1
- https://github.com/calazans10/sudoku/pull/2
- https://github.com/calazans10/sudoku/pull/4
- https://github.com/verlok/lazyload/pull/347
- https://github.com/verlok/lazyload/pull/354
- https://github.com/GoogleChromeLabs/puppeteer-examples/pull/30
- https://github.com/FedeLochbaum/slate-autocomplete/
- https://github.com/discourse/onebox/pull/407
- https://github.com/discourse/discourse/pull/7832
- https://github.com/CesarPZ/nba-go/pull/2
- https://forge.softwareheritage.org/D1727
- https://github.com/n1try/telegram-middleman-bot/pull/8
- https://github.com/Program-AR/pilas-bloques/pull/518
- https://github.com/jcalvento/node-games/pull/1
- https://github.com/CamilaSosa96/node-games/pull/2
- https://github.com/juanmardefago/node-games/pull/1
- https://github.com/FedeLochbaum/node-games/pull/1
- https://github.com/mevdschee/2048.c/pull/33
- https://github.com/alanmtk/node-games/pull/1
- https://github.com/LaimeJesus/nettoe/pull/1
- https://github.com/jejoivanic/nba-go/pull/1
- https://github.com/nestor-m/2048.c/pull/1
- https://github.com/CesarPZ/nba-go/pull/1
- https://github.com/mlucas94/vitetris/pull/1
- https://github.com/mlucas94/nettoe/pull/1
- https://github.com/8i8/ticTacToe/pull/1
Contribuciones proyectos de software libre 2020s01
- https://github.com/firstcontributions/firstcontributions.github.io/pull/125
- https://github.com/nb2998/DS_Algo/pull/134
- https://github.com/boutell/heic-to-jpeg-middleware/pull/3
- https://github.com/PostHog/posthog/pull/1245
- https://github.com/jayehernandez/letra-extension/pull/98
- https://github.com/uqbar-project/wollok-language/pull/54
- https://github.com/TroyTae/game-of-life/pull/867
- https://github.com/TroyTae/game-of-life/pull/868
- https://github.com/Stephcraft/Project-16x16/pull/142
- https://github.com/Stephcraft/Project-16x16/pull/143
- https://github.com/Stephcraft/Project-16x16/pull/146
- https://github.com/uqbar-project/function-laboratory/pull/28
- https://github.com/bhatvikrant/world-countries-capitals/pull/28
Clase 1
Material previo o posterior para introducir la temática ( La idea es que hagan preguntas sobre lo que les interese)
- Nacimiento de la cibercultura y cultura hackers, "The History of hacking Documentary" (Steve Wozniak, Kevin Mitnick, John Draper)[26]
- "Carta Abierta de Bill Gates a los Hobbystas"[27] HOMEBREW COMPUTER CLUB [28]
- Llaneros solitarios, Hackers, la guerrilla informática [29]("El Primer encuentro")
- Primer congreso hacker [30] ,
- Mendozaconch [31]
- Revista Virus Report [32]
En clase
- ¿Quién soy, por que estoy aquí? ¿Como se aprueba la materia? ¿De qué se trata la materia? 2011/2018
- Mi historia personal (compro c64, x64, pc, años, universidad, usar coolretroterm etc)
- Historia en Argentina: BBS, Reuniones, Grupos, Revista electrónicas
- Ver HBO 4,5mdz [33] - Primeros congresos y Experiencia propia (zines, tracker, tarjeta)[34] minotauro 6 (usar dosbox -fullscreen, y mount g: . , para verlo) ,7, 8 (mostrar imagenes) - Archivos en la actualidad (lo que me ocurrío con PVM y su ftp con recuerdos, probar xm con milkytracker[35] - Flashparty[https://flashparty.rebelion.digital/)
- Usamos BBS en vivo con https://bbs.docksud.com.ar/ (usando syncterm [36])
- Mostrar lo que hay que leer item por item explicando y contextualizando
Recomendación
- Hay que ir al Museo de informática[37]
Clase 2
- En grupos, en función de los textos anteriores, Generamos preguntas y tratamos de responderlas 20'
- Vemos Revistas viejas Argentinas (llevar) 20'
- Instalamos Emulador o en maquina real C64 y copiamos un programa salido de una revista
* Vice (The versatile commodore emulator) [38] Comando x64 * Problema de ROMS (cat /usr/share/doc/vice/README.ROMs,[39] [40] * Primer ejemplo a seguir (hola mundo, grabar, leer) [41] * Recordar crear imagen, cargar imagen y luego hacer el save o load * Bajar juego ej: 1942 [42] y iniciar vice asi: x64 -autostartprgmode 1 your_program.prg * Compilar y correr Código de demos para c64, c64-the-uni-games [43],chipdisk [44], 4kindness [45] (cc65, exomizer [46]) * Copiar programa de Revista y correrlo [47] * Eastern egg en basic [48]
- Ejemplo de la actualidad proyecto unijoyticle [49]
Material posterior
- Futuro de la tecnología: https://www.wired.com/2000/04/joy-2/
- Trampa en el ciberespacio: http://www.dicosmo.org/Piege/trampas/
- Discusión sobre desarrollo de kernels: https://es.wikipedia.org/wiki/Debate_Tanenbaum–Torvalds
Clase 3
- En grupos, en función de los textos anteriores, Generamos preguntas y tratamos de responderlas 20'
- Software y legalidad - infoleg [50]
- Nacimiento de la idea de software libre
- ¿Qué es el Software libre? [61][62]
- Proyecto GNU [63] ¿Qué es? ¿Por qué exsite?. Comienzo año 83 - Richard Stallman (gcc, emacs, gdb, etc)
- FSF (Free Software Foundation) 85 [64]
- Presentación de Linux (Linus Torvalds) - 25/8/91 - comp.os.minix - Ver últimos mensajes [65] [66]
- Historia de Linux [67]
- Rareza en Argentina [68]
- Licencias de software y documentación libres [69]
- Contributor covenant [72]
- Material para complementar
- Revolution OS: [77]
Clase 4
- Formulación de proyectos Libre
- Motivaciones de los desarrolladores
- Roles (dictador benevolente)
- Grupos de usuarios y organizaciones
- La prehistoria 80 y historia de las comunicaiones USENETS [84]
- Clientes: Knode, Thunderbird [85],PAN [86], otros [87]
- Servidor (nntp.aoie.org, news.aoie.org, [88] )
- Online: Google Groups [89], Gmane [90] Binsearch [91]
- Ejemplos mensajes importantes: [92]. Ver mensaje de Linus Torvalds[93] Historia de linux [94] Tanenbaum/Linus
- Servidores ejemplo: news2.neva.ru , nntp.aioe.org, news.aioe.org
- Suscribirse a comp.os.minix
- Herramientas comuniación y coordinación: Listas, Foros, IRC, Bug reports, Control de versiones, Manejo de proyectos
- Listas de Correo (publicas, desarrollo, etc)
- Usamos el IRC para preguntar y ver algo
- Control del versiones (cvs, svn, git, mercurial, etc)
Clase 5
- Crear tu propio git https://wyag.thb.lt/
- https://learngitbranching.js.org/?demo=&locale=es_AR
Clase X
- Tarea para la próxima
- Armamos grupos
- Seleccionar paquete de software libre
- Analisis de caso particular:
- Detalles ( lenaguaje y librerias utilizadas, ¿necesita algun hw en particular?, cantidad de desarrolladores, etc)
- ¿Qué herramientas usan? ¿Comunicación? ¿gestión? ¿listas? ¿IRC? ¿HIstoria del proyectos? etc)
- Buenas evaluacion de software pueden encontrar en: QSOS [118][119]
- Listado de caracteristicas a encontrar
- Nombre
- Licencia
- Origen (nacioalidad de 1er desarrollador/empresa, o donde vive)
- Si existe Mínima Historia
- Tiene sitio web propio o esta en forja. ¿Cual es la direccion?
- Desarrolladores (pocos, muchos, etc)
- LIstas
- Canal de IRC
- Foros
- Usa algo para seguimiento de bugs o manejo de proyectos. ¿Cual?
- Sistema de Control de versiones: ¿Cual?
- Lenaguaje de programación
- ¿Que librerias usa?
- Traducciones ¿a que idiomas?
- Documentación en el sitio y en otro sitios
Clase X
- Traducimos programa en C con gettext
Clase X
Seguridad
Clase 11
- Forjas, contribuciones, parches
- ¿Donde pongo mi proyecto?: Sorceforge, googlecode, github, ourproyect, etc.
- Busqueda de código fuente: koders
- Bifurcaciones/forks de proyectos (buscar ejemplos)
- Seguimientos de bug - Programas BTS [128] [129]
- reportbug, reportbug-ng
Formas de comunicación Foros, Listas, IRC, bug reports http://wiki.debian.org/DebianPackageInformation http://wiki.debian.org/HowtoUseBTS Programas BTS
Empaquetamiento http://users.telenet.be/mydotcom/howto/linux/package.htm http://wiki.debian.org/IntroDebianPackaging https://wiki.ubuntu.com/PackagingGuide/Complete http://www.taniquetil.com.ar/plog/post/1/528
Ideas
- Distribuir programas del libro 500 Lines
- Hacer git [130]
- https://github.com/praqma-training/git-katas
- Git avanzado
- presentación de proyectos (vue-admin, faker, otro de cambá etc)
- tp1
- tp final
- Contributor covenant
- Linus
- https://bibliotecadigital.exactas.uba.ar/download/mensula/mensula_n019.pdf
- Ej: de discusiones sobre formas (buenas prácticas) en desarrollo de software
https://lkml.org/lkml/2020/5/29/1038 https://linux.slashdot.org/story/20/05/31/211211/linus-torvalds-argues-against-80-column-line-length-coding-style-as-linux-kernel-deprecates-it