67 Matching Annotations
  1. May 2026
    1. Ejercicio 3-2 Escriba una función llamada justificar_a_la_derecha que tome una cadena s como parámetro y que imprima la cadena con suficientes espacios en blanco para que la última letra de la cadena se encuentre en la columna 70 de la pantalla.

      Bastante interesante el ejercicio pero ... ¿Hay alguna forma de aparecer un grid en el REPL de Julia para mirar lo de los espacios en la pantalla?

    2. Para algunas personas, la programación y la depuración son lo mismo. Es decir, la programación es el proceso de depurar gradualmente un programa hasta que haga lo que desea. Lo ideal es comenzar con un programa que funcione y hacer pequeñas modificaciones, depurándolas a medida que avanza. Por ejemplo, Linux es un sistema operativo que contiene millones de líneas de código, pero comenzó como un programa simple que Linus Torvalds usó para explorar el chip Intel 80386. Según Larry Greenfield, "Uno de los proyectos anteriores de Linus fue un programa que cambiaría entre imprimir" AAAA "y" BBBB ". Esto luego evolucionó a Linux ". (The Linux Users'’ Guide Beta Version 1).

      Esto me recuerda mucho a la otra lectura anotada de Julia, eso de que los programas grandes suelen empezar con algo pequeño es algo muy valioso que va de la mano con lo del aprendizaje, equivocarnos y corregirlo no es exclusivo de la programación, sino del aprendizaje y de la vida misma.

    3. Una de las habilidades más importantes que adquirirá es la depuración. Aunque puede ser frustrante, la depuración es una de las partes más intelectualmente gratificantes, desafiantes e interesantes de la programación. La depuración puede ser vista como un trabajo de detective. El programador se enfrenta a pistas y tiene que inferir los procesos y eventos que generaron los resultados que ve. La depuración también es como una ciencia experimental. Una vez que se tiene una idea de lo que está mal, se modifica el programa y se intenta nuevamente. Si la hipótesis era correcta, se puede predecir el resultado de la modificación y así estar un paso más cerca de un programa totalmente funcional.

      Es cierto, es algo que pasa con bastante frecuencia ¿no es cómo que siempre escribamos algo perfecto desde el inicio, cierto? lo veo cómo lo aportado en mi metacognición se ve el problema probando, observando los errores y corrigíendolos de forma consciente

    4. Una llamada a función es como un desvío en el flujo de ejecución. En lugar de pasar a la siguiente sentencia, el flujo salta al cuerpo de la función, ejecuta las sentencias que están allí y luego regresa para continuar el código donde lo dejó. Esto suena bastante simple, hasta que se tiene en cuenta que una función puede llamar a otra. Mientras se está ejecutando una función, el programa podría tener que ejecutar las sentencias de otra función. Luego, mientras ejecuta esa nueva función, ¡el programa podría tener que ejecutar otra función más! Afortunadamente, Julia es capaz de hacer el seguimiento de sus movimientos, así que cada vez que una función termina, el programa retoma la función que la llamó justo donde la dejó. Cuando llega al final del programa, la ejecución termina. En resumen, cuando lee un programa, no siempre debe leer de arriba hacia abajo. A veces tiene más sentido seguir el flujo de ejecución.

      Al leer esto me hace pensar ahora que leer un programa no siempre es ver cómo funciona realmente, lo digo es porque, a veces parece que puede ir en orden pero las funciones hacen que se mueva por distintas partes claro ¿Pero cómo sabe específicamente para saber cómo no perderse cuando una función llama a otra?

    5. Ahora mueva la llamada a función hacia abajo y coloque la definición de imprimirletras después de la definición de repetirletras. ¿Qué sucede cuando ejecuta este programa?

      ¿Es normal que me haya salido una notificación de error por el UndefVarError? Porque fue mi caso ... Y creo que fue al momento de poner repetirletras() antes de la función ya que por esto mismo no la va a reconocer y me va a arrojar el error ya que no está definida

    6. julia> println("¡Hola, Mundo!") ¡Hola, Mundo!

      Si, definitivamente este ya lo vimos, pero quiero recalcar la importancia y trascendencia que tiene el clásico saludo "Hola, Mundo", a pesar de que su función más básica desde los años más tempranos de la programación sea solamente mostrar el texto este saludo lleva desde el 78, varía como se pone ya sea en Python, Java o JS pero se podría decir que este es un evento canónico que si o si tiene que pasar cualquier persona cuando se sumerge en el ámbito de la creación por medio de la programación

    7. En el contexto de la programación, una función es una secuencia de sentencias que ejecuta una operación deseada y tiene un nombre. Cuando se define una función, se especifica su nombre y secuencia de sentencias. Una vez hecho esto, se puede "llamar" a la función por su nombre.

      El uso de las funciones tanto en Julia cómo en cualquier otro entorno es bastante útil ya que esto permite ahorrar tiempo al guardar las instrucciones o valores en las variables.

  2. Apr 2026
    1. Learning to design programs also means acquiring two kinds of universally useful skills. Program design certainly teaches the same analytical skills as mathematics, especially (pre)algebra and geometry. But, unlike mathematics, working with programs is an active approach to learning.

      Me gusta mucho esta idea porque hay que recordar que aprender no siempre ocurre leyendo o resolviendo incanzablemente ejercicios en un papel sino que esto se entiende más cuando se ejecuta en la práctica, práctica en la que eventualmente saldrán errores, claro está. Y es que es precisamente de esto que se trata, ese circulo o ciclo en el que pensamos, lo intentamos, fallamos y buscamos mejorar**. Claro que la parte teórica siempre va a ser fundamental y necesaria porque la practica se convertiría en repetición de comprensión vacío.

    2. Learning to program in a currently fashionable programming language often sets up students for eventual failure. Fashion in this world is extremely short lived. A typical “quick programming in X” book or course fails to teach principles that transfer to the next fashion language. Worse, the language itself often distracts from the acquisition of transferable skills, at the level of both expressing solutions and dealing with programming mistakes.

      Aprender un lenguaje de programación (o cualquier otra cosas) unicamente por moda definitivamente es algo contraproducente, si una persona se limita simplemente a memorizar comandos si la tendencia cambia va a tener que empezar desde cero ya sea en ese o en otro y sumado a eso es cómo lo que mencioné en mi hedgedoc sobre la metacognición, repetir y repetir sin entender que es lo que pasa no genera verdadero conocimiento (si, llegaríamos al punto de aprender por repetición más no por entendimiento y esto no genera un conocimiento o saber tácito y propio)

    3. Iterative Refinement addresses the issue that problems are complex and multifaceted. Getting everything right at once is nearly impossible. Instead, computer scientists borrow iterative refinement from the physical sciences to tackle this design problem. In essence, iterative refinement recommends stripping away all inessential details at first and finding a solution for the remaining core problem. A refinement step adds in one of these omitted details and re-solves the expanded problem, using the existing solution as much as possible. A repetition, also called an iteration, of these refinement steps eventually leads to a complete solution.

      Suele suceder con frecuencia, casi nunca se puede resolver un problema grande de una sentada (por ponerlo de una forma coloquial) ya que esto, sumado a que siempre queremos que todo salga perfecto pues es en ultimas imposible ... Siempre es mejor poco a poco siendo conscientes del proceso y su creación sin caer en el error ¿Cual? en el de postergar las cosas por quedarse estancado "mejorarse"

    4. everyone can design programsand everyone can experience the satisfaction that comes with creative design.

      Esto de que cualquiera puede aprender programación suena lindo y bien intencionado pero no basta solo con querer, hay que ser realistas al tener en cuenta que hay factores que las personas no tienen, cómo por ejemplo: tiempo o acceso a herramientas. Claro que la programación (y muchas otras cosas en la educación y en la vida) no debería ser algo exclusivo de ciertos nichos o personas ya que esto debería promoverse para varios sectores de la sociedad pero teniendo en cuenta que habilidades se tienen para posteriormente ir mejorandolas.

    5. The typical course on programming teaches a “tinker until it works” approach. When it works, students exclaim “It works!” and move on. Sadly, this phrase is also the shortest lie in computing, and it has cost many people many hours of their lives.

      Y es que es cierto, tanto la programación cómo muchísimos campos del conocimiento y de la vida, se tratan de eso ... ensayo y error hasta que se ejecute la linea y funcione pero no siempre quiere decir que porque sirva esté bien hecho, porque si las personas creen que el aprendizaje (al menos para estos casos en específico) es el "mejor", van a estar obligados a buscar la respuesta más rapida para que su sistema funcione si o si, sin detenerse a inspeccionar, corregir o al menos preguntarsen ¿cómo funciona?, ¿por qué no está funcionando?

    6. Many professions require some form of programming. Accountants program spreadsheets; musicians program synthesizers; authors program word processors; and web designers program style sheets. When we wrote these words for the first edition of the book (1995–2000), readers may have considered them futuristic; by now, programming has become a required skill and numerous outlets—books, on-line courses, K-12 curricula—cater to this need, always with the goal of enhancing people’s job prospects.

      Claro que es bien sabido que programar está en muchas profesiones y esto demuestra una vez más que la tecnología (cómo lo hemos visto en clase y fuera de ella) es que hace parte de nuestras vidas. Si quiero ser crítico con lo que muchas veces las personas vean que la programación es solo para conseguir trabajo o conseguir mejor salario (que si bien también es debatible) me parece muy hedónico, ya que debería verse cómo lo que es (o cómo al menos creo verlo) … creación, aprendizaje continuo, pensamiento lógico y el saber del funcionamiento de las cosas.

    7. Similarly, refining designs is not restricted to computer science and program creation. Architects, composers, writers, and other professionals do it, too. They start with ideas in their head and somehow articulate their essence. They refine these ideas on paper until their product reflects their mental image as much as possible.

      Me gusta mucho esta idea porque conecta la programación con otras disciplinas más artísticas o creativas. Le quita ese aire de “solo lógica y máquinas” y la pone como parte de un proceso creativo más amplio, esto nos ayuda a entender que programar también es diseñar, probar, equivocarse y mejorar, en pocas palabras programar también es humano y no solo algo técnico o superficial.

    8. Many professions require some form of programming. Accountants program spreadsheets; musicians program synthesizers; authors program word processors; and web designers program style sheets. When we wrote these words for the first edition of the book (1995–2000), readers may have considered them futuristic; by now, programming has become a required skill and numerous outlets—books, on-line courses, K-12 curricula—cater to this need, always with the goal of enhancing people’s job prospects.

      Me parece muy interesante el contexto histórico ya que dicen que en los 90 eso sonaba futurista, y ahora es casi una realidad. Hoy en día aprender algo de código o lógica computacional ya no es opcional si realmente queremos tener mejores oportunidades laborales.

    1. El objetivo de este libro es enseñarle a pensar como un informático. Esta manera de pensar combina las mejores características de las matemáticas, la ingeniería y las ciencias naturales. Los informáticos, al igual que los matemáticos, usan lenguajes formales para expresar ideas (específicamente cálculos).

      Resolver problemas, aprender lógica y expresar las ideas de forma clara son habilidades que sirven más allá de la programación ... Pero puede ser algo limitado si solo lo expresamos desde lo técnico porque eso de "pensar cómo informático" no debería excluir cosas cómo la creatividad.

    2. Julia es un lenguaje de programación único, ya que resuelve el problema de los dos idiomas. No se necesita de ningún otro lenguaje de programación para escribir código de alto rendimiento. Esto no significa que ocurra automáticamente. Es responsabilidad del programador optimizar el código que genere cuellos de botella, aunque esto puede hacerse directamente en Julia.

      Esto es buenísimo ¿Evitar usar un lenguaje que cree y otro que optimice? brutal, esto ahorra tiempo y facilita el trabajo ya que permite hacer esas dos cosas al mismo tiempo.

    3. En enero de 2018 comencé a preparar un curso de programación pensado para estudiantes que no tuvieran experiencia previa en programación. Quería usar Julia como lenguaje de programación, y descubrí que no existía ningún libro para aprender a programar que usara Julia como primer lenguaje de programación. Hay tutoriales maravillosos que explican los conceptos clave de Julia, pero ninguno de ellos se dedicaba lo suficiente a enseñar a pensar como programador.

      Me gusta que de una vez muestra que en el temas de programación no es suficiente con solo aprender el lenguaje ya que también está el pensamiento lógico para la resolución de problemas porque cómo habíamos mencionado en anteriores ocasiones sirve muy poco el conocer comandos si no sabemos que hacen.

    4. proceso de dividir una tarea compleja y larga, en pequeñas subtareas lo suficientemente simples como para realizarse con una de estas instrucciones básicas.

      No muchas personas tienen en cuenta este proceso al momento de adentrarse en la programación y por eso les resulta tan complejo, a mi me paso en mis inicios con HTML ya que consideraba una página web como un único ecosistema de código donde cualquier cambio puede afectar a el resto y sería imposible de editar. Ahora se que teniendo claridad en la representación del texto y sus respectivos detalles se puede crear la página bloque a bloque.

  3. Mar 2026
    1. Once you get more than one person writing it, it's very easy for any two programmers to overwrite each other's work if they're working on the same file, or to send incompatible instructions that simply causes the computer to choke, and this problem grows larger the more programmers are involved.

      Procesos comunitarios de creación de conocimiento en el mundo de la programación. Paradigma fundamental.

    1. Facilitamos

      La idea de facilitar y ser amigable con la tematica de programación y a la vez exploración es interesante, pues muchas de las cosas a las que les tenemos miedo es por la forma en que nos acercamos por primera vez a ello, si ruvimos un evento traumante en la programación nos cerramos al aprendizaje del tema, si se facilita o se convierte algo que esta en chino a un lenguaje amigable podemos aprender y aportar sobe este campo.

  4. Feb 2026
    1. Like many revolutionary changes in human history, it started with a flash of frustration.

      Cómo toda gran idea novedosa o innovadora que nace de la incomodidad ...

      Ser disruptivo y crear algo que cambie y mejore las reglas convencionales es algo que siempre he de admirar. Tener la convicción de diseñar algo que se sabe que reúne lo mejor de varios sistemas es algo que no todo el mundo hace, si bien quisieron hacer algo más "pequeño, propio y privado" (que se entiende muy bien, no por el tema de envidia o privatización sino porque quizá uno cómo persona no dimensiona el impacto de sus creaciones), algo que me llamó la atención es que fueron de lleno a crear algo a la altura de los lenguajes de alto nivel (básicamente que se pueden hacer más y mejores cosas sin tantas líneas de código), ósea que simplemente no fue un típico proyecto que ya existía, sino que intentaron ir más allá de una vez, simplemente adelantados a su tiempo, es increíble

  5. Jun 2025
  6. May 2025
    1. tomamos un entorno de computo preexistente y lo vamos modificando hasta que lo convertimos en el entorno que queremos.

      Esta es justamente la fortaleza de Smalltalk, pues no dependemos de cómo se convertirá el texto es un sistema de computo, sino que ese cambio lo realizamos nosotros. Nosotros mismo y hasta donde queremos llegar es el límite que tenemos para nuestros trabajos. Así como es un reto para el usuario, abre una gran oportunidad.

    2. Todo es un mensaje y todo es un objeto Los objetos pueden comunicarse con otros objetos o consigo mismo. Los objetos tienen características reflexiva o de introspección: saber sobre su propio estado.

      Lo valioso de esto es que ya no limitamos el mensaje en si mismo, sino que lo expandimos y lo pones en un rol donde, por si mismo, al ser un objeto, se comunica e interactúa con otros y consigo mismo de forma autónoma; este saber sobre su propio estado es una herramienta que debemos entender y saber aprovechar, pues, siguiendo la metáfora que hemos seguido con nuestra moderadora, una célula está en ese habitad de relacionen entre otras y ella misma, pero no define la integridad de todo el organismo. Los objetos y los mensajes funcionan por sí mismos, pero se comunican con los demás, sin dejar de saber su propio estado.

    1. tomamos un entorno de computo preexistente y lo vamos modificando hasta que lo convertimos en el entorno que queremos

      Esta es justamente la fortaleza de Smalltalk, pues no dependemos de cómo se convertirá el texto es un sistema de computo, sino que ese cambio lo realizamos nosotros. Nosotros mismo y hasta donde queremos llegar es el límite que tenemos para nuestros trabajos. Así como es un reto para el usuario, abre una gran oportunidad.

    2. Todo es un mensaje y todo es un objeto Los objetos pueden comunicarse con otros objetos o consigo mismo. Los objetos tienen características reflexiva o de introspección: saber sobre su propio estado.

      Lo valioso de esto es que ya no limitamos el mensaje en si mismo, sino que lo expandimos y lo pones en un rol donde, por si mismo, al ser un objeto, se comunica e interactúa con otros y consigo mismo de forma autónoma; este saber sobre su propio estado es una herramienta que debemos entender y saber aprovechar, pues, siguiendo la metáfora que hemos seguido con nuestra moderadora, una célula está en ese habitad de relacionen entre otras y ella misma, pero no define la integridad de todo el organismo. Los objetos y los mensajes funcionan por sí mismos, pero se comunican con los demás, sin dejar de saber su propio estado.

  7. Apr 2025
    1. Si queremos modelar objetos complejos, tenemos que tener cierta familiaridad con los objetos preexistentes

      Para poder modelar objetos y en general, para escribir código y adentrarse al mundo de la Programación Orientada a Objetos es necesario tener ciertas nociones con la forma, la estructura y las distintas particularidades de los lenguajes de programación. Aquí tenemos in recurso de información que nos da algunas nociones relacionadas con la escritura de código orientado a objetos usando Python

    2. Anjana Vakil - Oops! OOP's not what I thought

      Cuando estaba revisando los videos relacionados en este documento para la construcción de los mapas mentales, también pensaba que la POO consistía como en una forma de programación para las cosas. Pensaba que la POO era similar al Internet de las Cosas, pensaba que era una forma de comunicación y conexión entre los objetos(las cosas). Pero cuando se reviso el recurso de información, comprendí que los objetos de la POO no son objetos propiamente dichos, sino son elementos tienen clases e instancias que conforman otros elementos más grandes a nivel computacional. También se puede echar un vistazo a este recurso: https://profile.es/blog/que-es-la-programacion-orientada-a-objetos/

    3. lan Kay dice que, desafortunadamente, cuando el ayudó a nombrar la Programación Orientada a Objetos, eligió un mal nombre, pues debió ser Programación Orientada a Mensajes, pues los objetos son una idea menor y lo clave son los mensajes

      Se comparte la postura de Alan Kay ya que los objetos pueden colaborar entre a través de los mensajes, lo que facilita la modularidad, el mantenimiento y la flexibilidad del sistema.

    4. Cuando nos familiaricemos en detalla con Pharo Smalltalk nos adentraremos en los mensajes y los métodos. Sin embargo, en los ejemplos vistos hasta el momento ya hemos usado mensajes, que se muestran a continuación subrayados en rosado

      Los mensajes retrieve contents (recuperar contenido), collect (recolectar), asString (como secuencia) son la interpretación de lo que deseamos que el objeto realice en código.

    5. Todo es un mensaje y todo es un objeto Los objetos pueden comunicarse con otros objetos o consigo mismo. Los objetos tienen características reflexiva o de introspección: saber sobre su propio estado.

      Con base en el video Object Oriented Programming is not what I thought, la comunicación genera interacción entre los objetos, lo cual le permite al programador contar con los mecanismos necesarios para resolver problemas del mundo real a través de un paradigma que es moldeable, y que de alguna manera, genera relación con otros objetos.

    6. a la biología: pues tenemos un conjunto de entidades, permeables, cerradas y con funcionamiento propio, como las células. a la mátemática: pues tenemos un conjuto de mensajes que permite operar a las entidades anterior, similares a las álgebras.

      Haciendo un comparativo con lo expuesto por Anjana Vakil en el video de los paradigmas, los equipos de cómputo pueden operar como objetos que tienen unas propiedades (similar a la POO), lo cual les permite ser interactuar, ser moldeables y escalables.

    7. Según Alan Kay, la computación tiene una definición recursiva: un computador está hecho computadores más pequeños que se envían mensajes entre sí

      Con base en el video Object Oriented Programming is not what I thought la POO opera de similar manera a la definición de computación, toda vez que existe una representación de relaciones y comunicación de los objetos/computadores a través de protocolos de mensajería para conformar grandes redes.

    1. Los mensajes son la forma en que los objetos se comunican entre sí y en que nosotros, los humanos, nos comunicamos con el sistema de cómputo. Hay tres tipos de mensajes: unary (unarios), binary (binary) y keyword.

      Relacionando los videos analizados de Anjana Vakil sobre los paradigmas de programación y sobre la programación orientada a objetos, ahora es un poco más comprensible la importancia de los mensajes entre objetos en el campo de la computación. Ya que, es la forma como interactúan entre sí y es la forma como nosotros podemos dar órdenes a esos objetos, a través de comandos. El quick del asunto está en ¿Cómo se escriben los comandos?, ¡cómo los incorporamos al sistema? ¿Qué lenguaje usamos?, ¿Cuál es su estructura?, y ¿Qué queremos recibir como respuesta? 

  8. Feb 2025
    1. El primer problema implica que el software no es tan accesible ni liviano como se promociona, pues necesita de la instalación de programas que parchen su compatibilidad y que distancian el supuesto uso descomplicado. El segundo problema implica que, con actitud de modulor moral, es necesario entrar en las entrañas del código para reemplazar las palabras en inglés por palabras en español, hacer ajustes a los vacíos de documentación o personalización, y eso requiere conocimientos en programación o recursos para rediseñar interfaces o hacer localización.

      Desde la comunidad de Grafoscopio, hemos encontrado en la metaherramienta TidddlyWiki esta adaptabilidad extrema y facilidad de uso multiplataforma y multilingüe, incluso para procesos de catalogación y memoria viva.

      También hemos acuñado lo que he llamado "programación intersticial" que permite extender las infraestructuras y, en general los sistemas sociotécnicos pequeños, no desde sus entrañas, sino desde los intersticios con otras infraestructuras, comunidades y sistemas. Así, cuando TiddlyWiki no tiene una funcionalidad particular, la conectamos con Grafoscopio/Pharo o con Fossil para tener las ventajas de todas sin las desventajas particulares de sólo una de ellas.

    1. La tensión entre el uso de tecnologías externas, y la importación de sus idiosincracias, o la producción de tecnologías propias, situadas en el contexto local, con los costos y formas de trabajo que conllevan.

      Esta tensión la habitamos en la comunidad de Grafoscopio. El abordaje dado acá ha sido reconfigurar ensamblajes o "stacks" tecnológicos para que den cuenta de contextos y necesidades locales y la incorporación de metaherramientas digitales y programación intersticial para extenderlas desde los límites/conexiones entre el stack, en lugar de desde adentro de los componentes (salvo en el caso de las metaherramientas, pues esa precisamente es su función).

    1. Así, la programación creativa me llevó, a su vez, a descubrir que también existían procesos computacionales que podían usarse no solo para crear obras de arte sino también como ayuda para la interpretación de objetos culturales: algoritmos de procesamiento de textos e imágenes, colecciones interactivas con miles de piezas digitalizadas, manipulación y visualización de datos. Así como es posible analizar una obra a partir de lecturas recurrentes e infinitas minucias, es posible ver esa obra en un contexto amplio, como un punto datificado en una nube de produccionies humanas. Por mi propia formación en semiótica, que se centra en estudiar los problemas acerca de cómo damos sentido a los diversos signos del mundo, he tenido una aproximación ambivalente a estos procesos computacionales, que se hace evidente a lo largo de la disertación: a veces es optimista y a veces desconfiada
    1. Es decir, es un ejercicio de programación exploratoria, como lo propone Nick Montfort21Nick Montfort, Exploratory Programming for the Arts and Humanities (Cambridge, Massachusetts: The MIT Press, 2016)., en el sentido en el que se usa la programación como medio expresivo y se aprovecha para producir especulaciones más que verdades objetivistas o se usa como un método experimental para recorrer conjuntos de datos de formas inesperadas. Así, en los capítulos se encuentran sketches interactivos cuya función es ilustrar o evocar ideas que se desarrollan en el texto, o que añaden una búsqueda estética y formal a conceptos o narrativas en juego
  9. Oct 2024
  10. Sep 2024
    1. In June 2019, we (Bret, Luke, Josh, Paula, Omar, Weiwei) collected all of our Dynamicland-related photos and videos onto a "documentation drive".  The media was organized both by date and by Realtalk project or topic.  We also also made a giant table in Notion of all notable Realtalk projects, with notes and page numbers.  In early 2020, I got media from Toby and Glen, and added the subsequent media from Luke, Josh, and Omar.Last week, I made some Realtalk pages to scan the collection, assign every file an "accession number" of the form DL2018-01-31-debb83.mov(where 2018-01-31 is the date the photo/video was taken, and debb83 is the first six digits of the file's md5), tag the files based on their old directory names and filenames, generate a new directory structure of the form, archived-media/originals/2018/01/DL2018-01-31-debb83.movgenerate thumbnails of the form archived-media/thumbnails/2018/01/DL2018-01-31-debb83.jpgand print out an album.

      Interesante esta mezcla de digital a análogo y las herramientas que en el domino digital continúan usando (drives, Notion, etc). Por supuesto, el grupo está enfocado en la segunda parte y sus innovaciones (Realtak, etc) y no en las innovaciones en la primera (drive, Notion). Dado que nosotros sí nos enfocamos en esta gestión alterna de conocimiento en lo digital, usando infraestructuras de bolsillo, metaherramientas y programación intersticial, cómo esto podría tener una contraparte y puente en análogo, lowtech, similar a Hypertalk in the world

  11. Nov 2023
  12. Mar 2023
    1. At the end of the day many of us that are innovators always find ourselves busy with the next thing we are innovating and rarely look around at the context. To be expected to look beyond the context to other forks is too much for any sane individual. because all of the forks are using trunk based development and are moving targets.

      En Grafoscopio, miramos consistentemente hacia los lados, incluso más allá de la comunidad que estamos construyendo al mezclar cosas como HedgeDoc, TiddlyWiki, Pharo, GToolkit, Markdeep y Fossil en nuestro flujos de trabajo y obteniendo flujos mucho más sencillos que recreando todo en una sóla herramienta o mezclando/extendiendo herramientas más populares.

      Incluso, al migrar aprendizajes desde Grafoscopio hacia Lepiter, estamos mirando hacia el lado y no sufriendo del síndrome de No Inventado Acá (NHI).

      Ahora bien, lo que sí nos ha pasado con entornos Smalltalk (Pharo primero y ahora GT), es la sensación de estar desarrollando para un plataforma en continuo movimiento, con las (des)ventajas que ello trae. Una manera de fijar requerimientos y construir a partir de allí sería extremadamente útil.

    1. es una herramienta para hacer anotaciones a lecturas en y fuera de línea, que estén en formatos PDF y HTML. Dicha herramienta está hecha por una fundación sin ánimo de lucro y su misión es hacer de la lectura anotada algo

      Me parece una gran herramienta para encontrar documento en formato PDF Y HTML con información en el ámbito académico y que se pueda interactuar con otros grupos sobre el contenido de esos documentos. La verdad puede ser una buena herramienta para el sector académico pero creo que esta muy limitado por el simple echo de usar un leguaje de programación limitado.

  13. Nov 2022
    1. When developing systems, people often focus on current or immediate functionality. That is shortsighted and dangerous. Functionality is indeed a business asset, but the ability to adapt to changes in the surrounding environment depends on the non-functional parts. The New Jersey unemployment system did its job just fine until recently. Its functionality did not deteriorate. It was the environment that changed and this made the system is no longer adequate. It now needs to be recycled to match the new reality.To recycle a system implies taking it apart and refurbishing it for other purposes. However, before we can take it apart, we first have to understand the parts.

      en mutabiT resonamos con la comprensión y (de)construcción de los sistemas tecnosociales desde una pregunta por "¿cómo cambiamos los artefactos digitales que nos cambian?" y desde ahí creamos narrativas de datos y artefactos intersticiales que ayudan interconectar dichos sistemas tecnosociales y extenderlos desde sus fronteras.

  14. Oct 2021
  15. Apr 2019
  16. May 2018
    1. While Simula was not unique in developing in this direction, we can observe in thismovement a moment in a larger divergence between math and programming. Despite theinitial design plans, they quickly moved away from thinking of the language in terms ofmathematic

      [...]

      Within computation, there are those such asNygaard and Dahl, who see programming breaking with mathematics, while there are thosewho stress the mathematical nature of computation.

      Interesante como esto atañe a carreras como Informática-Matemática, desafortunadamente extinta por la miopía de un exdirector del Departamento de Matemáticas en la Universidad Javeriana.

    Tags

    Annotators

  17. Nov 2016
    1. Corporate practices can be directly hostile to individuals with exceptional skills and initiative in technical matters. I consider such management of technical people cruel and wasteful. Kierkegaard was a strong proponent for the individual against “the crowd” and has some serious discussion of the importance of aesthetics and ethical behavior. I couldn’t point to a specific language feature and say, “See, there’s the influence of the nineteenth-century philosopher,” but he is one of the roots of my reluctance to eliminate “expert level” features, to abolish “misuses,” and to limit features to support only uses that I know to be useful. I’m not particularly fond of Kierkegaard’s religious philosophy, though.

      Interesante ver cómo el lenguaje de programación es diseñado como una prevención contra la cultura corporativa.

    2. TR: In retrospect, in designing C++, wasn’t your decision to trade off programmer efficiency, security, and software reliability for run time performance a fundamental mistake?BS: Well, I don’t think I made such a trade-off. I want elegant and efficient code. Sometimes I get it. These dichotomies (between efficiency versus correctness, efficiency versus programmer time, efficiency versus high-level, et cetera.) are bogus.What I did do was to design C++ as first of all a systems programming language: I wanted to be able to write device drivers, embedded systems, and other code that needed to use hardware directly. Next, I wanted C++ to be a good language for designing tools. That required flexibility and performance, but also the ability to express elegant interfaces.
    3. Software developers have become adept at the difficult art of building reasonably reliable systems out of unreliable parts. The snag is that often we do not know exactly how we did it: a system just “sort of evolved” into something minimally acceptable. Personally, I prefer to know when a system will work, and why it will.
  18. Nov 2015
    1. To draw an analogy with computer coding, we might say that financial instruments are analogous to ‘high-level’ programming languages such as Java or Ruby: they let you string commands together in order to perform certain actions. You want to get resources from A to B over time? Well, we can program a financial instrument to do that for you.

      Interesante analogía. Habría que mirar cómo las prácticas cooperativistas pueden impulsar flujos de A hacia B y estar sustentandos en varios sustratos materiales, algunos con poca tecnología (monedas locales) y otros con alta tecnología (bitcoins, ethereum, etc).