#48 Sí, ya sé que el MVC siempre sobrecarga y además es propenso a "problemas" de seguridad al exponerse a la red a través de un socket (te obliga a tener cuidado con lo que haces y cómo lo haces), pero en ocasiones esa sobrecarga es despreciable y lo que puedes ganar en tiempo y personalización alterando un html/cs/js son disgustos y funcionalidad que sacas fácilmente.
Aún así, como te digo, yo personalmente sigo trabajando en la dirección que te comenté y ofrecer una librería en C++ que permita integrar todo eso (cliente y servidor, sin salidas al exterior más que I/O de Pantalla+Teclado+Ratón -al menos en principio-) en un mismo ejecutable.
Lo del "vi" y lo del "ed" son mitos. No cuesta nada instalarse un editor, si no lo tienes en "esa máquina sagrada", te lo copias por ssh y lo editas por remoto. Y luego, por último, pues si no queda otra... pues con saber ":wq", "i", y ESC vas que sobra con el vi, no hace falta ser friki de una herramienta #60: carca y antigua.
#35#38 Sí, yo por ejemplo he tenido que programar multitud de aplicaciones en diferentes empresas, y la mayoría de veces me las pedían en terminal. ¡Y nCurses era una maravilla!
Pero finalmente terminaba demostrando que hacer una interface web (simulando MVC) fuera mejor, más rápido y con mejores resultados. Ahora bien, integrarlo todo en un mismo ejecutable que sea cliente-y-servidor es justamente lo que estoy haciendo ahora.
#7 Sí, yo también cuando salgo a correr una horita empiezo dejando la mente en blanco, respirando y relajándome mientras avanzo los primeros kilómetros... pero cuando ya estoy en velocidad de crucero, o paso por una zona con un poco de bajada, empiezo a darle vueltas en segundo plano a las cosas y mi cabeza solita termina llegando a razonamientos muy interesantes y provechosos para mi día a día.
#10 Te puedo decir que, aunque lo tramiten, la A.E.P.D. solo gastará papel, publicará en el BOE o demás lugares la resolución, y te tendrán entretenido durante meses y meses para no conseguir nada bueno.
#88 Pregunté por él, como mucho, 15 minutos después de perderlo; y me pasé más de 45 minutos hasta el cierre dando vueltas y mirando por el suelo. Tengo que ir un día de estos a ver si alguna persona se lo llevó accidentalmente a casa pensando que eran documentos secretos del gobierno y en un gesto de humanidad y desvergüenza lo entregó allí diciendo que se lo encontró un día después de llegar con la compra y que no era suyo.
#10 Pues yo perdí un DVD-RW de verbatim con fotos en un Mercadona (en Gijón) mientras compraba fruta (al pesar me lo dejé junto a la báscula) y me pasé dos días por el establecimiento para ver si lo habían encontrado... y nada. Ya me diréis para qué quiere alguien robar un disco que alguien deja en un Mercadona.
#74 Yo pienso que el tiempo de desarrollo, usando frameworks, librerías y más recursos que hay disponibles para los entornos 1 y 2 ayuda mucho. Lo que no entiendo es ¿qué aportan que no puedan aportar, a los programadores, un entorno y un lenguaje (semi)interpretado? ¿Y a las máquinas donde se va a correr? ¿Y a los usuarios? ¿No son más desventajas? ¿Y los problemas? Porque que sea cool por tener "recolector de basura" (tapadera de un signo de mal programador, descuidado, despreocupado o como quiera llamarse) o funcionar bajo cualquier plataforma son cosas muy diferentes y afectan de maneras muy distintas... y los defensores lo ponéis siempre en la misma bolsa.
#42 Hay que tener cuidado con publicar estos artículos antes de que se revisen a fondo por un equipo experto en la materia. Aun así, si alguien quiere comentar algo respecto a esto, que se ponga en contacto con la agrupación firmante.
#51 Pero ya dije en #39 que sin utilizar las famosas tablas de trignometría. No dudo que, por su simplicidad, la persona que hizo esto no usara CORDIC (ya que no se necesita andar multiplicando y elevando) pero tampoco sabría asegurarlo en un primer vistazo. Que sean eficientes... eso es otro tema: lo que prima con CORDIC es ahorrar en número de puertas lógicas necesarias y, por lo que se puede ver en el vídeo bajo una primera impresión, es que este mecanismo utiliza un montón de puertas lógicas.
En fin, que puede ser Taylor o CORDIC o más cosas, pero la esencia es que no calculan el valor exacto de los senos, etc., sino, aproximaciones. Esa es la idea que hay que dejar clara.
Creo que el modelo ideal sería el que hay actualmente, pero añadiendo una asignatura que, tras aprobar todas, te unifique todo en un mismo concepto. Ahora mismo, por ejemplo, en TEC no se da casi la típica introducción en de qué están formado los transistores: bien poco se habla en los Grados de MOSFET o CMOS. Mucho menos en física, que empiezan a hablar de campos y leyes que son... pues eso, para físicos. Pero los físicos siempre se escudan que su materia sirve para razonar y pensar. Mejor razonar y pensar sobre la materia que más provecho se pueda sacar para un Ingeniero Informático, ¿no?
#40 Hombre... yo no soy docente, pero no me parece que esto (por sus características) sea lo mejor para enseñar cómo son las tripas de un computador. Creo que el modelo ideal sería. En la carrera, por ejemplo, para abordar este tema se utilizan cinco asignaturas:
- Física: donde se enseña la parte necesaria para desarrollar puertas lógicas... ya que las puertas NAND no salen de los árboles.
- TEC: donde se enseña a interconectar las puertas lógicas para crear circuitos digitales o microcontroladores.
- Estructura/Arquitectura de Computadores: donde se enseña a programar microcontroladores a través de ensamblador.
- Computación Numérica: donde se enseña a determinar los mecanismos que mejor aproximan los cálculos complejos (para una máquina, y un humano, calcular un seno "sin más" es complicado, al margen de los inmediatos de seno de 0, de 90º, de 60º, de 45º y de 30º y allegados1) y reducir el error cometido al operar.
- Comunicación Hombre-Máquina: donde se enseña a diseñar un sistema que permita la interacción entre el usuario y el computador.
Si te refieres a enseñar estas cosas para gente que no quiere ser, creo que lo que hace este friki (sin ánimo de ofender) se va de las manos a cualquiera que quiera comprenderlo más allá de lo que la cultura general nos obliga a saber... como, por ejemplo, el que . ¿Cómo? Pues para contestar a eso ya te metes en la carrera.
Como eso sí, proyecto de Fin de Carrera, esta creación está muy bien si realmente el creador es consciente y creador de cada una de las partes que utiliza; ya que demuestra tener amplios conocimientos en las materias que antes listé.
[1] Los allegados son los ángulos adyacentes: +/-90º y +180º.
#36 Pues como todo en bajo nivel, cuando se usan puertas lógicas: primero creas un sumador/restador, luego un multiplicador (eso lo haces con una ALU que habla #20, por ejemplo), y un potenciador (que calcule la enésima potencia de un número) y luego una pequeña memoria que sirva para acumular los resultados parciales. Posteriormente, haces la secuencia de Ruffini para calcular el valor del polinomio con el que aproximaste la función: elevar a la iesima potencia el valor 'x', multiplicar cada potencia por el factor del término iésimo (de 'i' desde 1 a 'n'), sumar todos esos valores y, por último, sumar el término idependiente del polinomio... y ya está. Tienes el valor aproximado de la función que aproximaste con el polinomio.
Luego es seguir y seguir, pasito a pasito, como todo.
Y para que #38 no se enfade, que sepáis que no hace falta que me paguéis ni nada por explicar cómo se hace para que, una función que nadie sabría hacer "a mano" (sin utilizar las famosas tablas de trignometría), como es el caso de los senos y cosenos y exponenciales y demás..., pueda ser calculada por un ordenador utilizando la aproximación (interpolación, Taylor...) a funciones fáciles de digerir por un polinomio.
#31#33
Espero que no seas ingeniero o consciente de la pregunta que haces: se vería entonces que pasaste muy de puntillas por el tema de los métodos numéricos.
Resumiendo, se podría decir que: cualquier función diferenciable se puede aproximar por un polinomio en el los puntos cercanos a un cierto punto concreto, cometiendo un error cada vez más pequeño cuanto mayor sea el grado del polinomio y según se aleja del centro intervalo. Puedes encontrar más información buscando por "TEOREMA DE TAYLOR".
Una vez calculado 'a mano' el polinomio, se crea una circuito/programación lógica (por ejemplo utilizando el Método de Ruffini) que está construido con puertas lógicas básicas; obteniendo así un mecanismo hardware que te calcula, con cierto error (lo que se hace es ajustar el polinomio para que el error que se comete en la aproximación sea menor que el error que se comete al almacenar esa información en un número float o doble precisión (double) o lo que se use con aritmética finita) y muy rápidamente.
#78 Según sé, en Flash se pueden hacer peers (por ejemplo, para tener videoconferencias P2P sin necesidad de que pasen por un servidor) mientras que, simplemente, con HTML5 (como lenguaje del HTTP, protocolo orientado al cliente-servidor) no debería poder hacer. También, desde la versión de Flash11, se permite un acceso a recursos: a la capa de red y al tratamiento del sonido e imágenes a nivel de bits (por ejemplo, se puede invertir una imagen png o leer el valor de un pixel o tapar con un ruido blanco un fragmento de un sonido cuando un pasaje cumpla determinada condición); todo ello sin necesidad de (pre)procesarlo en el servidor. Además, su fantástico lenguaje AS3.0 hace que el desarrollo y potencia de las aplicaciones programadas en Flash simplemente no se puedan conseguir actualmente con HTML5.
La parte de animación, efectos atenuantes, degradados, reproducción de vídeos, audio, dibujo de gráficos, streaming, etc... si bien no es imposible en HTML5, es laborioso y problemático por los múltiples navegadores. En un equipo con IE6, una página web hecha 99% en Flash se verá igual que en una con IE10 (sin problemas del php, del css o del js) lo que supone un ahorro de tiempo de desarrollo o complejidad de éste frente a desarrollarlo en HTML5; siendo posible en ambos.
Otra cosa sobre el tema de la red es que se desarrollen plugins adicionales (como lo es Flash) que permitan dotar a HTML5 de esas características; porque, aunque también es cierto que HTML5 permite los WebSockets, entre clientes navegadores y servidores -podrían ser localhost-, nativamente no permite hacer un túnel transversal peer a otros clientes... por ahora.
Y por último, el tema de los problemas... primero, matizar que, si bien en Flash antes era, por ejemplo, indexar bien los contenidos; ahora mismo, aunque existan avances en ese sentido, la ventaja que ya tenía HTML se está volviendo en su contra con la proliferación de las últimas tecnologías que dinamizan las webs (como AJAX, COMET y demás cargas por js) hacen que este gran problema (para que los SEOs sigan pudiendo ganar dinero estafando creando necesidades honradamente) se contagie. El problema, comentado ya por otros, se resumiría en que Flash no viene instalado generalmente con los navegadores, es externo, consume recursos, tiene vulnerabilidades, y no va en la mayoría de móviles con fluidez.
#7#6 Prueba el fibonacci recursivo de 200, a ver si te va o no. Ahora mismo este lenguaje de programación no resuelve el PROBLEMA que ese código fuente tiene. El lenguaje que lo solucione, y además haga lo que se dice en #2, será el llamado a remplazar a los que ya existen. Mientras tanto, serán todos la misma historia.
#6#10#95 Y seguramente muchos más... pero principalmente para @gallir:
Lo que tiene Tuenti no es que sea un mal producto (aunque a día de hoy tiene más fallos que hace un mes) o que en su momento no haya sabido introducir en España (antes que Facebook) el concepto de red social pero sin recurrir al estilo americano, lo que ellos llamaban "lo nuestro es algo enfocado en lo local". Para nada. Tuenti es un servicio que ha tenido su etapa de éxito, pero todo basado en una gran mentira...
Y es que el problema actual, para mí, es fruto de dos problemas; uno más antiguo y otro reciente. El problema de fondo es la forma en la que surge Tuenti: un nicho de mercado sin explotar en España, debido a que Facebook está en inglés, pero también que todavía la juventud no tiene un acceso a Internet o a cámaras digitales (hay que recordar que a mediados de la década pasada, no todos los jóvenes españoles se conectaban constantemente a la red), hace que una idea basada en un caso de éxito en Estados Unidos y rodeado de gente importante (lo que el refranero llama "estar en el sitio justo en el momento adecuado") permita que rápidamente esta idea capte la atención de inversores que dan dinero para que el proyecto nazca. Posibilidades había, y así se demostró.
Pero eso, en realidad, fue un problema serio que ahora pasa factura, por extraño que parezca, ya que al fin y al cabo (y nadie puede engañarse) el boom de Tuenti (año 2008) fue a raíz de una campaña mediática en la que se hablaba constantemente de esta red social (cuando ya existía Facebook en castellano y miles más, como la mía, mucho más interesantes para los usuarios a nivel funcional)... todo ello fruto de los pasos que siempre tienen las StartUps españolas cuando el negocio empieza a dar resultados: venderlas y sacar tajada.
Y tras eso, es donde aparece el segundo problema: una máquina de fotocopiar dinero necesita papel. Es decir, tras la… » ver todo el comentario
No digo que no esté bien "pero: no hay que dejarse engañar demasiado. A veces interesa crear climas de excesivo optimismo para atraer inversores"; no picacódigos o usuarios.
#30#40#41 Hagamos la prueba: Estoy haciendo un sistema operativo (gratuito, como un hobby, pero con modelo de negocio profesional amparándolo) para cualquier dispositivo o plataforma. Me gustaría saber su opinión sobre las cosas que les gustan o disgustan en otros, ya que mi S.O. está desarrollado desde cero.
En inglés por si la barrera es el idioma: I'm doing an operating system (free, as a hobby, but with a professional business model sheltering it) for any device or platform. I would like to know your opinion about things they like or dislike in others, as my OS is developed from scratch.
Por si lo no creen, visiten el blog www.som30.es donde está explicado.
#1 ¿La variedad no?
De todas formas, yo el tema de las distribuciones tampoco lo entiendo. Al fin y al cabo, creo entender que, cualquiera se puede crear sus propias distribuciones... simplemente son unos paquetes preseleccionados y configurados por una comunidad... en este caso, liderada por un asturiano.
A falta de que alguien más afín a los Linux lo confirme, creo que podrás usar tu Ubuntu con el escritorio "Asturix On", ¿no?