Mis intensiones y el futuro

Yo como muchos de los desarrolladores y usuarios de computadoras tenemos una serie de sentimientos difíciles de entender por el común de la gente, al fina de cuenta por eso somos una "bola de Nerds" :D.
Yo empecé a programar en 1983, cuando tenía escasos 12 años de edad y lo que existía para mocosos como yo era LOGo o BASIC, por lo cual recuerdo con grato cariño a la Timex Sinclair 1000 y a la Commodore 16 como mis primeras computadoras, desde ese momento decidí que mi carrera tendría que ver con esto.
Al entrar en mi carrera se oia en el "underground" (sobre todo en BitNet (si... no había internete todavía como lo conocemos hoy) sobre una cosa llamada programación a objetos, sobre otra llamada C++ pero habían dos lenguajes que eran usados casi por semidioses: SmallTalk e Eifel. De la misma manera pude comprar mi primera "PC" (una 286 con 1 MB en RAM y 40 MB de Disco duro), la cual tuve que cambiar por que salio un Sistema Operativo que me "enamoró" y que si pudiera lo seguiría usando: OS/2 (en aquel momento 2.11 y luego vinieron los Warps 3 y 4 y hoy en Dia el eComStation).
SmallTalk fue (creo yo) el generador de la idea de la Maquina Virtual multiplataformas y en gran parte de la escencia de WORE (Write Once Run Everywere), es difícil entender históricamente a Java sin remitrse a SmallTalk, sobre todo cuando entendemos que su fracaso comercial fue por que todos los (2) que lo implementaban sacaron sus propias VM y no eran compatibles a ese nivel, cosa que logró de manera genial Sun sobre todo cuando Microsoft intentó realizar lo nismo con "su" propio Java (hoy Java++) y su VM (Hoy el CLR de .NET), Sun les quitó la certificación del Java 100% puro y los dejó al descubierto con sus negras intensiones.
Todo esto lo cuento para formar el ambiente de nostalgia que me hadado de repente (creo que ya me siento viejo cuando digo que yo usaba los Alpha y Beta de Java antes de la versión 1.0) y declarar que mis intensiones (además de contribuir de forma positiva a este grupo que existe ya desde hace muuuuchos años (década de los 90s) y al que no me había unido más por desidia que por otra cosa, es la de generar "portaciones" de Java 7 a OS/2 (quien lo haya usado como sistema operativo en su momento creo que sabrá por qué) y la de generar una serie de tutoriales que creo que han faltado dentro de la red, dando lugar a un faltante de programadores en áreas tan importantes como Swing/JavaFX o la de como establecer el contacto entre este mundo, el de .NET (ver mi "blog" en Windows live) y el mundo de las tablets que nos empezará a inundar sin duda en los próximos años y que lo queramos o no será el front-end preferido para las nuevas aplicaciones.
Así pues empiezo este primer post con mis intensiones... si alguien quiere seguir alguna de ellas o quiere tener un tutorial en particular dentro de este BLOG pongan su comentario... y como decía el Tio Gamboín: "Sus comentarios serán pasados a la gerencia".
Saludos y un gran abrazo a esta comunidad que nunca esperé creciera tanto, a pesar de haber sido yo uno de los primeros "evangelistas" de este ambiente de programación.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

Bienvenido

Ah qué nostalgia... mi primera compu también fue una Sinclair. Y luego una Apple IIe. También aprendí a programar en Logo y BASIC.

En cuanto a la historia que comentas, SmallTalk lo que aportó fue la introducción a OOP; la sintaxis de Objective-C [objeto metodo] se parece mucho a SmallTalk, a diferencia de Java que usa la notación de objeto.metodo que se ha vuelto más común. Java++ ya no existe, y esa VM se fue a /dev/null; el CLR fue hecho desde cero, aunque obviamente tomaron muchas ideas de la JVM pero su arquitectura interna es muy distinta.

Aquí tenemos un par de miembros que escriben bastante acerca de JavaFX (sobre todo rodrigo salado), checa su blog para que veas qué ha publicado, creo que le dará mucho gusto saber que alguien más le está entrando a JavaFX.

Esperamos ver tus contribuciones pronto. Un saludo.

Imagen de charlymex

Gracias

SmallTalk también usaba una máquina virtual, no la llamaban así, era muy parecido al concepto que en un momento tuvo Visual Basic con su runtime para interpretar el lenguaje... sin embargo la ventaja en SmalTalk era que ese runtime estaba disponible en varios Sistemas Operativos (principalmente sabores de Unix) esto hacía la portabilidad binaria un hecho, sin embargo IBM y MicroFocus sacaron cada quien sus propias especificaciones haciendo que "la puerca torciera el rabo"...
Java ++ efectivamente chupo faros, pero dejó ahí como hijo no querido a una cosa llamada Java#... el CLR fue escrito desde 0, si, pero la idea inicial de la máquina virtual de Java de Microsoft era la de generar una fuera de las especificaciones de Sun. Y pues ya "sabiendo el caminito" pues el hacer el CLR fue más fácil, total ya también tenían de alguna manera el runtime de VB y el de C++ como ideas de partida... Gracias por la bienvenida y ya estaremos dando lata por estos rumbos. Gracias (por cierto en mi prepa tenían Apples IIe y eran excelentes para jugar Karateka... jajjajaja ).

Imagen de ezamudio

Java 7 para OS/2

En algun momento también utilicé OS/2, durante la universidad fue el sistema operativo que usé para programar (Pascal y C), era mucho más cómo programar ahí porque si mi programa escribía a direcciones de memoria indebidas, se tronaba ese proceso solamente, en vez de que se congelara el equipo entero, como pasaba en DOS y Windows (Windows 3 en aquellos tiempos). Fue una pena que no siguiera OS/2, pero pues Microsoft les aplicó una bola de jugarretas sucias para tronarlos por el lado comercial, ni modo.

Entonces tu idea es que Java 7 corra en OS/2?

Imagen de charlymex

Java 7 OS/2

Efectivamente.... tendré que usar GCC para OS/2 y ver cuales son las partes relativas a las llamadas nativas, además de que todo el GUI de OS/2 esta basado en SOM que es una implementación (dicen unos que muy chafa) de CORBA, lo cual puede facilitar muchas cosas de integración... Pero como eso es Hobbie y el hobbie no deja varo, pues es intensión (aunque el proyecto ya esta dado de alta en java.net y un códgo inicial de Java 7 puesto para empezar la portación).

Imagen de rodrigo salado anaya

JavaFX dormido...

Seria genial tener alguien más en la comunidad que se interese en JavaFX.... que por el momento esta dormido (tristemente : P)... y bien venido

Imagen de benek

Logo

Y yo me sentía viejo cuando hablaba de Logo, que me lo enseñaron en primaria por ahí del 92 (en el 83 que tú lo comenzaste a usar yo todavía ni nacía :S).

El primer equipo que tuve fue un IBM, recuerdo bien que era un XT con procesador 8088, y luego tuve un AT 80286, todavía no salía Windows 3.1 creo. OS/2 ni siquiera lo había escuchado, sería interesante saber por qué te agradó tanto ese SO.

¡Bienvenido a la comunidad!

Imagen de ezamudio

OS/2

En 1992, OS/2 ya era un sistema operativo de 32 bits para computadoras de escritorio, que no tenía ese esquema de partir la memoria estándar/expandida/extendida, todo era un segmentote, si tenías la fabulosa cantidad de 8MB como yo que le puse un chorro de memoria a mi PC, OS/2 podía usarlo todo, simplemente lo veía como memoria, nada de extendida o expandida y esas jaladas. Cada proceso estaba muy bien aislado de los demás; si por ejemplo hacías un programa que escribiera a la memoria en una dirección ilegal o cosas por el estilo, en DOS se podía hasta congelar la máquina, y en Windows también (o no se congelaba pero hacía cosas raras como mandar algo a imprimir o reiniciarse o se moría Windows y regresabas a DOS). En OS/2 se moría ese proceso y te avisaba que el programa ejecutó una instrucción ilegal o algo así y se cerraba.

OS/2 también ya implementaba el modelo multithreaded. Cada proceso corría de manera independiente de los demás (requerías como mínimo un 386), y cada proceso además podía tener una prioridad y podía ejecutar varios threads. Recuerdo un editor de Borland llamado BRIEF que en la versión de OS/2 podía mandar a compilar el código en un thread separado, de manera que podías seguir usando el editor mientras compilaba y al final te avisaba cuando terminaba y ya veías los errores. El modelo multithreaded era incluso preemptive multithreading, es decir, el sistema operativo controla la ejecución de cada thread y puede suspender uno de manera temporal para darle control a otro, dependiendo de prioridades y cosas así.

Traía algunas herramientas de colaboración como un chat y un editor de texto y de dibujos colaborativo.

En fin, tal vez hoy no suena muy sorprendente, pero por eso empecé diciendo 1992. En esa época Windows era un ambiente gráfico que corría encima de DOS, no era multithreaded, el multitasking era cooperativo (tu programa tenía que implementar ciertas rutinas que Windows invocaba para avisarle que lo iban a pasar a background pero si no lo implementabas o no cooperabas pasando a background, pues ni modo, ahí se quedaba el programa al frente y no respondía), funcionaba realmente a 16 bits, y requería que DOS tuviera configurada la memoria extendida para poder administrarla para los programas Windows. Linux estaba en pañales (Torvalds lo anunció al mundo como un proyecto personal en agosto de 1991 que medio hacía dos o tres cosas) y cualquier otra cosa costaba un dineral y/o de plano necesitabas hardware carísimo para correrlo. OS/2 era la opción para tener un sistema operativo multitasking, multithreading, 32 bits, a precio razonable, en tu PC.

En esa época MS se puso a pelearse con IBM para matar OS/2 mientras empezaban a clonarlo para hacer Windows 95; la bala en la cabeza de OS/2 fue cuando MS logró forzar a todos los fabricantes de hardware a incluir Windows como única opción, preinstalado en todas las PC's. En aquella época, podías comprar una PC en blanco, sin nada instalado; Windows te lo cobraban aparte, y algunos fabricantes te permitían otra opción como algún UNIX o el mismo OS/2. MS se acercó primero con algunos fabricantes con una oferta que no podían rechazar: Una licencia a precio de risa, en centavos de dólar, con la condición de que fuera la única opción que tuvieran, que ya no pudieran vender PC's ni siquiera en blanco, que ya ni le preguntaran al usuario, simplemente compras la PC y ya viene con Windows. Los primeros fabricantes que aceptaron esa oferta, lograron tener un precio notablemente más bajo que la competencia, por la pura licencia. Al final todos le tuvieron que entrar al mismo esquema y con eso murieron todos los demás sistemas y/o ambientes operativos (no había muchos, pero había más aparte de OS/2, por ejemplo QNX que ahí sigue pero en aquel tiempo era algo que podías usar en una PC). Fue el equivalente de ponerle cemento en los pies a OS/2 y tirarlo al mar cerca de Seattle.

J# ya murió hace rato

Jejeje...pues parece que tenemos uno de los "chapados a la antigua" que son de los que más se aprende =). Estaría bueno ver por acá cómo tu dices cosas de JavaFX, Swing creo que ya no lo va a continuar desarrollando Oracle, se quedará hasta la versión actual de ahí para seguir haciendo aplicaciones de escritorio nuevas se tendrá que usar NetBeans Platform (del cual también estaría bueno darle una vista) o JavaFX (el cual el único inconveniente que tiene -para gente cómo yo- es que no está disponible en Linux) el cual parece que tendrá mucha portabilidad, esto no solo incluye PCs o dispositivos móviles, sino también reproductores de BluRay entre otros dispositivos.

Con lo que dicen de Java++/#, era J++/# y ya fue descontinuado desde Visual Studio 2008. RIP J#.

Imagen de rodrigo salado anaya

??? @wishmaster77

Mira este post tal ves te ayude a usar JavaFX 1.3 en linunx: . Por otro lado JFXScript no esta muerto: (Jejeje ni preguntaste verdad :P), y si JavaFX según Oracle sera mejor, y eso es padrisimo.. lo malisimo jejeje que dentro de chorro de timepo..... .

checa esto espero te aclare las cosas:

Imagen de Nopalin

nooo!!

Swing creo que ya no lo va a continuar desarrollando Oracle, se quedará hasta la versión actual de ahí para seguir haciendo aplicaciones de escritorio nuevas se tendrá que usar NetBeans Platform

Noooo!!!!, donde viste eso o es solo tu intuición? No se que tanto lio con swing se trae, si esta tecnologia es muy buena, hay componentes para casi todo y tu puedes hacer los tuyos, chale ojala y no la quiten.

o JavaFX (el cual el único inconveniente que tiene -para gente cómo yo- es que no está disponible en Linux)

como esta eso? si yo lo tengo jalando en debian!. Yo hize una aplicación en JavaFX y debo admitir que cuando se trata velocidad, flash le sigue ganando. Ademas todavia le falta madurar para que sea capaz de crear GUI's como se hacen con swing (quiero decir por la facilidad, por que de que se puede se puede). Y como bien lo dices, lo compilas una vez y se ejecuta donde quieras y se ve igual.

Lo único que no me gusta de JavaFX, es que al ser script, te permite agregar mas de una clase por archivo y que el archivo ni si quiera se llame como una clase. Me gusta ese control que te impone java para llevar un orden.

sobres!