<body>

Sitios web relacionados: PingBlog | Fotos

lunes, junio 23, 2008

¡Resulta que ahora Java es socialista!

Bueno, hay ciertos temas que uno da por acabados (si, el enlace a mi articulo es del 2005), sobre todo cuando hay evidencias de sobra que indican que debería ser así, y sin embargo estos vuelven a aparecer. En este caso es el empeño de Satanizar al lenguaje (el cual ahora es Open Source y cuenta con una distribución completamente funcional en Fedora Core, llamada IceTea). El anuncio me llegó por el grupo de Yahoo SoftwareVen:


Como parte del trabajo de estudios de las tecnologías libres el Centro
Nacional de Desarrollo e Investigación en Tecnologías Libres -
CENDITEL [0] ha publicado un documento titulado "Pertinencia de la
tecnología Java por y para el Estado Venezolano" [1].

El mismo esta a disposición para el análisis y discusión sobre la
temática, sean bienvenidos a participar y compartir ideas en el foro
de discusión de CENDITEL [2] en la temática destinada para esto
llamada "Publicado documento tecnología Java" [3].

[0] http://www.cenditel.gob.ve/FundacionCenditel
[1] http://www.cenditel.gob.ve/files/u1/PertinenciaJavaVenezuela.pdf
[2] http://www.cenditel.gob.ve/foros/
[3] http://www.cenditel.gob.ve/foros/viewtopic.php?p=28#28
--
Atentamente

T.S.U. Leonardo Caballero
E-Mail: leonardocaballero at gmail.com, lcaballero at linuxmail.org

Debo comenzar diciendo que me fastidia de sobre manera el fanatismo de los programadores. No sólo Leonardo Caballero se empeña en pintar a Sun como la corporación que se va a encarga de quitarle a Venezuela su autonomía tecnológica sino que además ignora (a estas alturas) la existencia de implementaciones completamente funcionales como IceTea y Classpath en Linux.

Este trabajo insiste en mezclar nacionalismo, tendencias politicias como el socialismo pero sin llegar a proponer alternativas ya que sólo se limita a nombrar ciertos proyectos de software libre como Linux, Ruby, Subversion entre otros. Incluso se atreve a catalogar al lenguaje como mediocre en diseño:

El tema se planteó recientemente en la lista de discusión de SOLVE, y allí José Luis Rey (2008) argumentó que el lenguaje de programación Java “es un lenguaje
mediocre, que no permite implementar técnicas de programación, que todo programador debería conocer y dominar. Lo peor es que ahora estoy seguro de que eso es así por imposición”. Señala que aunque el diseñador de Scheme fue contratado en la concepción de Java, en el resultado final se eliminaron todas las capacidades poco convencionales como la herencia múltiple, para evitar que el lenguaje fuera demasiado avanzado. Así, Java la mediocridad de java no es casual sino intencionada5. Además, el lenguaje Java cuenta con un sistema de tipo de datos estático y simplista que no permite el manejo de características más
avanzadas como metaprogramación o programación funcional.
El pasaje está genial. Ignora completamente el hecho de que Java fué diseñado para simplificar el desarrollo de aplicaciones y que es una mejora sustancial sobre su predecesor, C++. Por ejemplo:
  • Java es un lenguaje mediocre: Seguro, soporte de un API completo como Swing para el desarrollo de interfaces gráficas (más completo que TK y más fácil de usar que Motiff), soporte de Threads, Networking y Garbage Collection dentro del mismo lenguaje. Ah, y que puede correr en cualquier dispositivo ya que todos los sistemas operativos importantes tienen una máquina virtual de Java. Si se refiere a que ciertas caracteristicas sintacticas del lenguaje no están allí (como Schema) es un asunto diferente. ¿Porqué caer en los excesos? La comparación no es objetiva, y eso es malo.
  • Datos de tipo estático: Creo que estos dos han pasado demasiado tiempo escribiendo scripts. Yo en particular me siento comodo sabiendo de antemano de que tipo de datos son mis variables y que el compilador me pueda decir que hay asignaciones equivocadas. Si quiero utilizar scripts con su sintaxis relajada, entonces tengo BeanShell (Java pero con sintaxis más relajada, sin declaración de variables), JRuby, Jython, etc. Si, mis "scripting languajes" corriendo sobre una máquina virtual conocida y probada :)
  • Herencia múltiple: ¿Usted realmente la necesita? Con un diseño cuidadoso y el uso de Interfaces se consigue lo mismo. Herencia múltiple no es mala (de hecho es muy útil) pero cuando se usa hay que ser cuidadoso, sabiendo que es lo que se quiere al final. También ignora el hecho de que utilizar herencia todo el tiempo para extender código es malo y que existen otros patrones de diseño que favorecen más la estabilidad del código en contra de cambios de la clase padre como la agregación (por ejemplo, el patrón de diseño Decorator).
  • No soporta programación funcional: Java no es un lenguaje de programación funcional, sin embargo hay implementaciones de lenguajes funcionales que corren sobre la máquina virtual de Java como Scala. En particular es irritante como los detractores de Java se empeñan es decir que "one size fits all" (un sólo tamaño para todo) cuando deberian ser más pragmaticos diciendo que hay herramientas para cada problema.

Si usted alguna vez ha desarrollado código del lado del servidor o cliente usando Java, se encontrará agradecido que el lenguaje tenga un manejo elegante de Threads, Networking (con varios protocolos), y sobre todo el manejo de memoria automático usando Garbage Collection.

Todo el mundo sabe que Java no es perfecto y la escogencia del lenguaje a la hora de resolver un problema sigue dependiendo de la tarea, presupuesto y nivel de experticia de quienes van a desarrollar la solución. También en las Universidades deberian seguirse enseñando no uno sino varios lenguajes de programación, entre ellos C y C++ (pueden decir lo que quieran de esos dos lenguajes pero Linux, manejadores de dispositivos y muchas otras cosas aún están escritas en esos lenguajes).

¿Pero que tiene que ver eso con la "muestra independencia tecnológica"? Si usted lee con cuidado el articulo, se dará cuenta que el escrito es un arroz con mango de tecnología, sazonada con politica. Nada le prohibe a Venezuela desarrollar su propio lenguaje de programación, e incluso su propia implementación del lenguaje Java, como hizo la gente de Kafee:

Kaffe is a clean room implementation of the Java virtual machine, plus the associated class libraries needed to provide a Java runtime environment. The Kaffe virtual machine is free software, licensed under the terms of the GNU General Public License.
El nuevo OpenJDK o Kafee no cuentan con ninguna restricción de exportación, ya que están protegidos por la licencia GPL. Entonces, ¿que es lo que detiene a Venezuela en el desarrollo de una máquina virtual o lenguaje de programación?

Esa es la pregunta incomoda que ninguna de estas personas quiere responder.

No importa si usted decide no utilizar Java. Pero al menos hagalo por las razones correctas, entre ellas porque no es la mejor herramienta para el problema que quiere resolver, no porque se lo dijeron en la escuela y usted se tomó el "cool aid" sin pensarlo dos veces.

Buscar en otros sitios:

Blogalaxia:, , , , ,
Technorati:, , , , ,
To2blogs:, , , , ,
Del.icio.us:, , , , ,

Etiquetas: , , , , ,

miércoles, enero 09, 2008

Los 4 fantasticos: Isla de la Muerte

fantastic 4 isla de la muerte
La Isla de la muerte y los 4 fantasticos


No es noticia nueva, pero desde finales de Diciembre pasado estaba por comprarme el último comic de los 4 Fantasticos: Isla de la Muerte.

¿Qué tiene de especial? Bueno, en particular "The Thing" (la Mole, Ben) decide tomarse unas vacaciones en la isla de Puerto Rico y es allí en donde comienza la lucha con el famoso Chupacabras. Pero el cuento no queda allí, ya que Marvel (además de darle al lector un recorrido turistico por la isla en esta edición) decidió sacar 2 tipos de tiraje, uno en Ingles (como siempre) y el otro completamente en Español.

fantastic 4 isla de la muerte
Llamame pa'trás (call me back): Edición Boricua


Por lo visto los lectores hispanos lectores de comics representan una demografía importante en los Estados Unidos, ya que no se trata de una edición internacional sino domestica la cual fué lanzada en varios idiomas.

win dancer super heroe venezolana
Sofia (Wind Dancer), super heroe Venezolana


¿y que hay con los super heroes latinos en el universo de Marvel? Bueno, Venezuela tiene su representación con Wind Dancer (Sofia), quien en su última aparición (ya hace varios meses) resultó gravemente herida mientras ayudaba a sus compañeros super heroes a pelear contra el Zodiaco sin sus poderes (esto producto de los eventos ocurridos en House Of M, con la Bruja Escarlata).

sofia herida en the Initiative
No todo sale bien para Sofia en su última aventura


Todo un fume :)

Así que bueno, tenemos Chupacabras y Merengue por un buen rato, con sabor a super heroe. Y eso suena bien



Blogalaxia:, , , , , , ,
Technorati:, , , , , , ,
To2blogs:, , , , , , ,
Del.icio.us:, , , , , , ,

Etiquetas: , , , , , , ,

sábado, septiembre 22, 2007

Echando código: ¿Como saber de que tipo es un archivo, desde JAVA?

Nock Nock Neo
Con JNI nos podemos ir a bajo nivel con el sistema operativo. Una rubia en la foto :)


En un articulo anterior les habia comentado como trabajar con JNI y Java. En esta ocasión escogí un problema un poco más complicado, ya que el anterior parecía más un "Hola Mundo" que otra cosa (si, pasos de bebé).

Así que como la necesidad es la madre de todas las invenciones, me decidí a probar un ejemplo que tenia ganas de poner en práctica desde hace tiempo. En este caso se trata de como obtener el tipo de un archivo utilizando la herramienta file en UNIX, pero primero veamos si Java puede hacer lo mismo.

En Java podemos utilizar Swing para obtener el tipo del archivo. Leí que clase JFileChooser de Swing te da información similar, pero es basado en la extensión del archivo:

   1:import javax.swing.JFileChooser;
2:import java.io.File;
3:
4:public class FileType {
5: public static void main(String [] args) throws Exception {
6: JFileChooser view = new JFileChooser();
7: String descr = view.getTypeDescription(new File(args[0]));
8: System.out.println("File type is: " + descr);
9: }
10:}
Corriendo el programita:
[josevnz@localhost ~]$ javac FileType.java -d .
[josevnz@localhost ~]$ java FileType DS156_Complete.pdf
File type is: Generic File
[josevnz@localhost ~]$

Poco satisfactorio, por no decir otra cosa. Sin embargo todo el mundo sabe como obtener el tipo de un archivo desde unix, utilizando 'file':
[josevnz@localhost ~]$ file DS156_Complete.pdf
DS156_Complete.pdf: PDF document, version 1.3
[josevnz@localhost ~]$
File es una de mis herramientas favoritas. File consulta una base de datos en la cual están registrados los formatos y utilizando reglas heuristicas determina el verdadero tipo del archivo. Ahora, supongamos que quiero tener la misma funcionalidad desde uno de mis programas en Java, ¿como hacer?

Lo primero es averiguar como los verdaderos expertos lo hacen. Hay que utilizar JNI ya que quiero tomar ventaja de que el código de file va a utilizar la base de datos que viene con cada sistema operativo UNIX y no me importa sacrificar portabilidad.

Así que después buscar cuidadosamente en Google, finalmente encontré la página oficial del comando 'file'.

Sin embargo ya alguién se topó con el problema y decidió hacer una interfaz en Java la cual hace todo el trabajo: Java shared mime info.

Así que esas son las opciones. Les dejo la de Java, aunque otros lenguajes ya tienen sus respectivas implementaciones.

Blogalaxia.com:file, java, linux, open source, venezuela, libmagic, jmimeinfo
Technorati.com:file, java, linux, open source, venezuela, libmagic, jmimeinfo

Etiquetas: , , , , , ,

lunes, septiembre 03, 2007

Sitio de Fedora 7 en Venezuela



Bajate Fedora Linux


De nuevo y gracias a esos buscadores que tengo corriendo todo el tiempo, me conseguí con un grupo de usuarios de Fedora 7 en Venezuela.

El sitio luce interesante, falta ver que tanto les dura la mecha (como otros miles de sitios que comienzan hablando de Open Source en Venezuela y después se vuelven paja).

Les deseamos exito por acá, interesante iniciativa.

Blogalaxia.com:linux, fedora core, redhat, venezuela, open source
Technorati.com:linux, fedora core, redhat, venezuela, open source

Etiquetas: , , , ,

domingo, julio 15, 2007

Nuevo grupo de fotos en Flickr: Venezuela Open Source

Walc2005 Mérida, Richard Stallman
Richard Stallman en Walc 2005, cortesía de Jorge Camargo.


Me parece curioso que habiendo tanta actividad del movimiento Open Source en Venezuela, no haya un grupo en Flickr en el cual se puedan compartir esos momentos capturados en una fotografía.

Por eso me decidí a crear un grupo, llamado Venezuela Open Source. El grupo está abierto a la discusión del acontecer Open Source en el país y no está limitado a fotos, sino tambien a captura de programas que ustedes conozcan.

Asi que les pido el favor y que rieguen la voz para que todos los interesados nos beneficiemos.

Blogalaxia.com:venezuela, open source, linux, java, gnu, perl, discusion
Technorati.com:venezuela, open source, linux, java, gnu, perl, discusion

Etiquetas: , , , , , ,

martes, junio 26, 2007

Racismo en televisión: Beatriz Majo (o como la estupidez obtiene sintonia)

Grupo de Cuatro - C4 Trio
C4 Trio - Tocando cuatros en el consulado de Venezuela en New York City la semana pasada. ¿Estarian flojeando?

Vi el video gracias al blog de Reindertot y la verdad es que no salgo de mi asombro; Es dificil no caer en la provocación de insultar a una persona con tan poca inteligencia y sensibilidad, la cual relaciona el grado de responsabilidad de una persona con sus origenes étnicos o influencias culturales (en este caso Europa).

De verdad el video es toda una joya. De nuevo la lucha de los estereotipos.

Sin embargo todo este asunto expone el punto de vista de personas que fueron criadas con ciertas escalas de valores divorciadas de la sociedad en la que vivimos; Hoy en día mi generación y la de mi hijo (aún más todavia) saben que la globalización cambia todo y que las excusas de raza, religión o legado cultural no son suficientes cuando llega la hora de competir a la hora de un trabajo o para destacarse en lo que se hace.

Yo estudié y trabajé con personas de diversos credos, colores de piel y las que eran exitosas tenian un factor en común: el deseo de superación. Todas ellas tenian un motor, un norte que siempre las impulsaba a ser mejores.

El mojón mental no es exclusivo de esta señora, recuerdo con desagrado una conversación con un Indu al cual llamaré "Vinnie" (al cual que conocí en mi primer trabajo en los Estados Unidos). El sostenia que los únicos Indues que valian la pena eran aquellos que emigraban porque hacian el esfuerzo de superarse para competir, mientras que los que se quedaban eran vagos y perezosos, siendo ellos la carga de su país. La ironia del caso es que el renunció a su Green Card para regresar a Madras con su esposa, para luego decir que los Indues que estaban en el extranjero eran vende - patrias y que gente como él eran quienes hacian el futuro.

¿Hay motivos economicos detrás de todas esta declaraciones? Seguramente, este tipo de personalizades (a lo Paris Hilton) logran subsistir creando polemica explotando viejas formulas sin aportar nada nuevo. Para nadie es un secreto la cantidad de dinero en entrevistas y publicidad (para ellos no hay publicidad mala, sólo publicidad).

¿Y que me queda decir, que los Venezolanos son flojos o no? No voy a caer en la tentación. Generalizar siempre es malo y si usted es como yo entonces entenderá que el tiempo que tenemos disponible para hacer cosas productivas con nuestra vida es muy limitado.

Las criticas que se las lleve el viento :D

Blogalaxia.com:racismo, estupidez, Beatriz Majo, flojo, venezuela
Technorati.com:racismo, estupidez, Beatriz Majo, flojo, venezuela

Etiquetas: , , , ,

domingo, diciembre 03, 2006

Elecciones3d: Ya votamos

Votacion 2006 012
¿La gente se atrevió? Se sabrá al final del día


Ya hicimos lo que teniamos que hacer. Dimos nuestra opinión. La votación no tomó nada de tiempo, fué más lo que empleamos en movernos desde Norwalk hasta Manhattan que lo que pasamos en la mesa de votación.

Las instrucciones fueron dadas de manera precisa y la gente se portó animosa, inclusive amable. En nuestro caso nos dejaron pasar de inmediato por el Embarazo de Veronica, a cosa fue algo como esto:

- Muchacho del consulado: Ah señora, usted está embarazada, pase de una vez a votar
- Vero (gratamente sorprendida): Seguro, vente José que vamos...
- Muchacho del consulado, haciendo un gesto con la mano: Lo siento pero el señor se tiene que quedar
- Yo (sonriendo): Eso significa que si algo le pasa a ella mientras está votando, ¿tu te haces responsable?
- Muchacho del consulado, palido como un cadaver: Pase, pase, creo que podemos hacer algo

Debo admitir que no pude dejar de sonreir mientras ejercia mi derecho al voto :)

Votacion 2006 007
Venezuela tiene un equipo de Softball Chavista en Norwalk


Sin embargo lo curioso de todo esto no fué el voto en si, sino el proceso para llegar allá. Resulta que esta mañana, al llegar a la estación de trenes, nos conseguimos a un señor en sus 30 años, con un pasamontañas con los colores de la bandera. Estrechamos manos, nos presentamos y aprendimos que él y un grupo de otros Venezolanos (aparentemente numeroso en Norwalk) se iban a encontrar en la estación de tren, para ir a votar.

Justo cuando todo era camadería, el pana llamó a uno de sus amigos. De allí nos enteramos que sus amigos estaban en la mesa de votación, ayudando en el proceso porque eran Chavistas y los habian llamado (entre bromas de ponerse una camiseta de Manuel Rosales en vez de Chavez, que si a este no lo querían aquí ni en Venezuela).

El ambiente simplemente cambio, fué como si alguien dibujara una linea divisoria en la cual un lado decia Escualidos y en el otro Chavistas. Evaporados quedaron los comentarios de partidos de dominó, arepas, malta y softball.

Si, y es que en las guerras y en el amor todo se vale. Desgraciadamente hoy no es tiempo de camadería sino de imponer un criterio y es en estos casos en que no se puede hablar de amigos; El resto del viaje fué amigable, echamos varios chistes y conversamos, pero de manera muy conciente nadie hizo el esfuerzo de extender el puente (¿saben ustedes, como esos silencios incomodos que ocurren cuando alguien dice algo fuera de lugar?).

Votacion 2006 010
La votación fué rápida. Ambos bandos sabe lo que está en juego. Y ahora sabremos que viene al menos en los próximos 5 años que vienen


Si, creo que esa es la mejor forma de describir como estamos el día de hoy: Fuera de lugar. Hoy se está peleando el futuro del país, dentro de ciertos marcos democraticos. Pero no hay medias tintas, es blanco o negro.

Votacion 2006 014
Al final, nos metimos en la tienda Apple en 5ta avenida para pasar el rato, tratando de descifrar lo que acababa de ocurrir cuando votamos...


Sin embargo, y si no hay trampa de por medio, todo el mundo acatará los resultados más no compartirá la opinión, y es que este proceso nos ha llevado como país a estar divididos.

Yo me reservo mi opinión en cuanto a quien va a ganar y porqué. Dentro de este juego de ajedres, hice lo único que un peón podía hacer: votar.

Blogalaxia.com:chavez, democracia, elecciones3d, venezuela, votar
Technorati.com:chavez, democracia, elecciones3d, venezuela, votar

Etiquetas: , , , ,

sábado, diciembre 02, 2006

Elecciones presidenciales Venezolanas 3 Diciembre 2006

Mañana son las elecciones presidenciales Venezolanas, para decidir si el Chavismo sigue estando en el poder después de estos últimos 8 años, si probamos algo nuevo. El prospecto para la "oposición¨ no luce nada bien ya que perdieron muchas oportunidades ademas de otras razones muy numerosas para nombrar aqui.

Mañana es el día de las excusas también. Yo conozco aqui al menos 5 Venezolanos que no van a ir a votar porque no se sienten con derecho o porque por pereza nunca se incribieron en el registro electoral. Una verdadera pena, dado que es más fácil hablar pendejadas que hacer algo al respecto.



Por mi que se jodan, pues nunca hicieron una diferencia y no lo van a hacer ahora :)



Y es que estas elecciones no son un asunto de locos; Para mi lo que ha pasado en el país en los últimos 15 años ha sido suficiente como para arriesgarme a vivir en un páis distinto a Venezuela y de que mi hijo nazca con otra nacionalidad (si, un gringito como dirian los abuelos). Pero si me ponen a escoger entre aprender un nuevo idioma y costrumbres o que me asalten en cualquier lado, entonces prefiero lo primero.

Nuestro problema como Venezolanos es profundo. Tenemos un país con riquezas naturales increibles, con una población trabajadora la cual sin embargo no tiene una profesión estable (mas del 50% son comerciantes informales) pero sobre todo somos apenas 30 millones de habitantes. Con un número tan pequeño y tanta abudancia, deberíamos ser un país increiblemente prospero, ¿no es así?

Y eso me lleva a una invitación (si tipo cadena) para hablar de las elecciones. No me gusta jugar con eso, pero por otro lado si esto despierta el interés entonces, ¿porqué no?:


José,


No se si estes al tanto, pero en to2blogs.com le dimos soporte a la

iniciativa que propuso periodismodepaz.org acerca de hacer una

cobertura completa del proceso electoral venezolano desde los blogs.

Periodismo ciudadano al 100%.


http://www.to2blogs.com/elecciones3d


Te escribo es para ver si puedes ayudar a difundir la iniciativa entre

tu entorno de influencia.


Salu2


P.S: Instrucciones sencillas de como participar:

http://blog.to2blogs.com/2006/11/16/elecciones-3d-blogs



--

Edgar González González



Así que por acá en New York estaremos Veronica y yo, votando primero y tomando fotos, conversando y dando a conocer lo que pasa fuera de venezuela en estos lares...




Buscar en Technorati: ,

Buscar en Blogalaxia:

Etiquetas: ,