jueves, 10 de junio de 2021

El problema de los foros de PSeInt

No se qué hacer con los foros de PSeInt, pero tarde o temprano voy a tomar alguna decisión drástica.

Al principio de los tiempos, cuando recién empezaba con el proyecto, recibía con alegría cada mensaje individual que alguno de los pocos usuarios se tomaba el trabajo de enviar. Sin importar lo útil, o inútil que fuera el contenido, leía y respondía a cada uno, en cada foro.

Con el tiempo pasaron dos o tres cosas bastante malas que me llevaron al estado actual: casi no miro los foros, ignoro el 95% de los mensajes. ¿Qué pasó?

Antes de empezar a hablar del contenido, tenemos el tema de la cantidad. En los dos últimos meses, por ejemplo, recibí 990 mensajes!!! No hay forma de que me tome el tiempo de ver y responder cada uno. PSeInt es solo una parte de lo que llega a mi bandeja de entrada. No parece un nro gigante, pero sí es mucho para el tiempo libre (no es mi ocupación principal, ni mi único "hobby") de una sola persona. 

Captura de pantalla de mi gestor de correos. Marqué como no leídos a los de abril.
Y ya que estamos, vean además los asuntos  de los mensajes.


Ahora sí, sobre el contenido, hay un primer problema que tiene que ver con que el 99% de los mensajes son pedidos de ayuda para resolver un ejercicio de programación. Algo que no me corresponde; sino que le corresponde al docente de cada uno (los qué sí me corresponden, los de mis "propios" alumnos, me llegarán por el aula virtual, y no por el sitio del PSeInt). Pero el problema se agrava por varios motivos.

Hay un foro específico para "ayuda con los algoritmos", y para llegar desde la ayuda o el sitio de PSseInt, hay que pasar por una página donde intento advertir claramente para qué es cada foro y cómo preguntar. La evidencia demuestra que muchos usuarios simplemente se c@#% en ignora esa organización, y escriben en cualquiera de los 4 foros por igual.

Para seguir, la mayoría de los asuntos alternan entre "AYUUUDA" (o algo similar, usualmente acompañado de palabras como "URGENTE" o "YA!"), "PSeInt" (u otros títulos igualmente genéricos, poco amables, e inútiles para clasificar el mensaje) y enunciados completos (sí, hay mucha gente que pone todo el enunciado de un ejercicio en el asunto). Sin contar que la mitad GRITA, tanto en el asunto como el contenido; y demuestra en el mensaje no haber hecho el menor esfuerzo por intentar resolverlo primero.

Hace mucho que ignoro intencionalmente esos mensajes. En su momento intenté comunicar mejor lo que esperaba de los mensajes, pero al final solo lo dejé abierto para que los usuarios se respondan entre sí. Porque por suerte hay varios buenos samaritanos que se divierten recorriendo los foros y resolviendo los ejercicios de otros.

 

Los mensajes que sí me interesan son los que tienen que ver con el desarrollo de PSeInt. Los que intentan reportar errores; o proponer mejoras. Para empezar quedan perdidos entre la gran maraña de gritos de ayuda y resultan difíciles de filtrar. Por ej, otro asunto habitual es "Error nro XX", y en el 90% de los casos el error es del algoritmo/usuario, y no de PSeInt (y no es que PSeInt no los tenga).

Para seguir, rara vez los reportes son completos. Por ej, si un algoritmo falla, no debería faltar el algoritmo, la entrada que usaron, y el mensaje de error o la salida que obtuvieron. Si el programa revienta, es importante incluir los pasos para que ocurra, la versión, el sistema operativo, etc. Así hay cientos de cosas que no logro ver claramente a través de mi bola de cristal. Nuevamente, en algún momento intenté comunicar mejor cómo reportar un bug y parece que tampoco funcionó.

El link al foro de errores de la sección "Foros" del sitio,
en realidad lleva primero a esta página.

Siempre preferí dejar la redacción del bug libre para que la complejidad de un formulario más detallado (y el inglés tal vez) no frenen a los usuarios de hacer un reporte. Por eso elegí los foros (y hasta permití posteos anónimos para ahorrarles el registro); en lugar de usar un issue-tracker o alguna cosa más específica. Creo que fue un exceso de confianza.


Y por último, respecto a las sugerencias.... Muchas son repetidas y me canso de responder una y otra vez lo mismo. Y muchas van en una dirección que no es la que quiero que valla PSeInt. Por ej: "estaría bueno agregar una forma de controlar con pseudocódigo una constelación de N drones que tengan montadas cámaras y sables láser". Este tipo de cosas (hacer más completo o potente al lenguaje) implica agregar o complicar la sintaxis. Más funcionalidades es igual a más instrucciones o instrucciones con más variantes. Y un objetivo fundamental del uso del pseudocódigo es reducir la sintaxis necesaria al mínimo para que el alumno se concentre en la lógica, y no en la sintaxis.

También intenté comunicar mejor las ideas que motivan el diseño y la evolución del pseudocódigo; responder en detalle preguntas frecuentes; explicar algunos problemas insolucionables, etc, etc. Pero sigo recibiendo esos mismos mensajes una y otra vez por usuarios nuevos (y viejos también). Claramente, otra vez fallo en mi comunicación.


La conclusión es que los foros así no me sirven para casi nada. Porque casi no los leo, porque llega un volumen de mensajes mucho mayor al que puedo manejar, porque así me es imposible separar la paja del trigo. Y no quiero dar una idea falsa y luego desilusionar a los que tienen aportes valiosos para hacer (¿no hablé mil veces de lo importante que son los usuarios?). Es una pena, porque hay varios usuarios que escriben cosas realmente útiles. Aún en esta situación, en las últimas dos versiones logré corregir varios errores gracias a estos usuarios. Pero lamentablemente son 1 de cada N(t), siendo N(t) una función no-decreciente.

Así que redondeando, se necesita un cambio drástico. Cualquier día que esté un poquito más de mal humor y con algo de tiempo (estimo que para 2030), podría llegar a borrar los foros completos y empezar de cero, con muchas más restricciones (buh!). No lo he hecho simplemente porque todavía no tengo claro el método para evitar que vuelva a ocurrir lo mismo. Pero lo estoy pensando...

Quisiera evitar todo esto, pero que siga siendo "fácil" reportar algo. No se si pueda. Escucho ideas en los comentarios.

13 comentarios:

  1. Hola querido desarrollador, estaba intentando utilizar pseint desde la consola para ejecutar un codigo simple, y resulta ser que en la utilización de la funcion PARA, estoy obteniendo un error 303, si bien entiendo de que se trata el error, si copio exactamente el mismo script en el wxPseint, este error no ocurre.
    La situación es la siguiente:

    Version: 20210609
    OS: Windows 10

    Codigo:
    Algoritmo a_1
    definir var como entero
    definir numeros como entero
    Dimension numeros[10]
    Para var<-0 Hasta 9 Con Paso 1 Hacer
    Leer numeros[var]
    FinPara
    Para var<-0 Hasta 9 Con Paso 1 Hacer
    escribir numeros[var]
    FinPara

    FinAlgoritmo

    Ejecución desde cmd:

    >pseint 1.psc
    Leyendo archivo y comprobando sintaxis...
    *** Ejecuci≤n Iniciada. ***
    Lin 6 (inst 1): ERROR 303: Subindice (0) fuera de rango (1...10)
    *** Ejecuci≤n Interrumpida. ***

    La cuestion es que me debería tomar el fuera de rango desde (0...9) y no de (1...10)

    Espero sepas disculpar las molestias y un saludo.

    ResponderEliminar
    Respuestas
    1. Porque estás usando un perfil que toma los arreglos en base 1, y tu los estás usando en base 0.
      Configura Pseint para que acepte arreglos en base 0

      Eliminar
  2. yo no entiendo mucho del tema pero numeros es un entero, segun tu definicion, y lo estas manejando como un string o array en el for.

    ResponderEliminar
    Respuestas
    1. No lo está manejando como un string.
      Que tenga subindices no significa necesariamente que sea un string

      Eliminar
  3. Hola Pablo
    Me encanta PseInt y ZinjaI ya que son grandes proyectos y muy útiles para aprender a programar. Con respecto a los foros son utiles para encontrar ideas sobre como resolver algún problema.
    Los que piden AYUDA URGENTE aparte de govas son cómodos, por que si no supieran pensar o no les gusta se equivocaron de profesión. Por lo tanto por que no arancelas esas consultas a valor de mercado y si no les gustan, ya saben que hacer.
    Por que como me dijeron a mi "lo que no cuesta, no se valora".
    Te aseguró que el volumen de mensajes se reducirían considerablemente.
    Abrazo

    Carlos

    ResponderEliminar
  4. ¡Gracias por PSeInt!

    ¿Podrías por favor utilizar una versión de wxWidgets estable? es decir, la versión 3.0.x, ya que creo que está utilizando una versión que se encuentra en desarrollo (3.1.x) que genera bastantes errores y advertencias al compilar; además, ¿Podrías considerar actualizar la guía para compilar en GNU/Linux? la guía anterior es del año 2012 y creo que no aplica en muchas cosas.

    Gracias nuevamente

    ResponderEliminar
  5. Suele pasar, con una Wiki debería bastar y un enviador de errores desde la App. Si quieren pensar que se dediquen a otra cosa.

    Gracias por el programa, les fue util a muchos alumnos y amigos.

    saludos,

    ResponderEliminar
  6. Hola
    Las secciones de los foros se destinaron a que terceros solucionen los problemas del docente.
    Es mejor que solo quede un solo ítem el de reporte de errores-sugerencias y toda solicitud de SOS se elimine de ahora en adelante, además para comenzar de nuevo, resetear todo el foro. Borrón y cuenta nueva

    ResponderEliminar
  7. Hola
    Otra problema es que el alojamiento de la pagina principal de PSeInt muchas veces esta fuera de servicio y no se por qué, ya que con la de Zinjai no pasa esto. Pensar por favor en moverla a otro sitio web que garantice su total disponibilidad y en especial para que tanto docentes como estudiantes puedan descargar sin dificultades los archivos de este gran proyecto que todos esperamos que siga evolucionado y no se quede estancado. Ya esta cerca 2 décadas de desarrollo. pensemos en una celebración, posiblemente soporte de manipulación básica de pixeles para que los estudiantes creen animaciones, imágenes y juegos simples.

    ResponderEliminar
  8. Disculpame, pero la última versión del instalable PSeInt para Windows también da "código malicioso" en VirusTotal ¿No se podrían solucionar esos inconvenientes haciendo una versión online? Desde ya, muchas gracias.

    ResponderEliminar
  9. Feliz año 2022.
    Año que esperemos que siga la evolución de el gran PseInt

    ResponderEliminar
  10. Hola! quería saber si iban a actualizar ZinjaI para poder correrlo en macOS pero en 64bits.

    ResponderEliminar
  11. Hola,

    Personas como usted y como miles de YOUTUBERS que apoyan, enseñan y desarrollan en pro de crecimientos de otros, es de admirar. Espero que cuando yo sea un experto pueda aportar a todos aquellos que están detrás de mi y también poder colaborar en proyectos tan buenos como PseInt.

    Le deseo los mejores ánimos y que no abandones su desarrollo.

    ResponderEliminar