martes, 7 de diciembre de 2010

Blog abandonado???? Ahorita lo actualizo

Ingkstr en UPIICSA es un pueblo fantasma.... LOL!!!

SIII!!

Está abandonadisimo!!!!

Ahora si no tengo excusas. Sencillamente, si he tenido tiempo, mínimo unas 2 horas en los fines de semana, solo que, realmente no se de que escribir.

De que puedo hablar???
  • Tutoriales??? Hay miles de internet y la verdad, cuando yo aprendo algún nuevo lenguaje, truco o framework, es dado a que le escudriño a esta maraña llamada internet. Incluso, planeaba hacer un tuto de JSF, pero ¿como aprendi yo? buscandole, googlereandole. Lo único que iba a terminar era siendo un vulgar copy-paste.
Use it... it's your friend!!! ;)

  • Mi tesis??? Tengo un problema del tipo "la idea que tenía le perdí interes", dado a que iba a implicar mucho tiempo en investigación y visitas a hospitales, que honestamente no iba a tener (y no iba a tener ganas). Estoy medio formulando una nueva idea, pero ya cuando sea formal, empezaré a hablar de ella.
  • Mi experiencia laboral. Podría hacerlo, pero la verdad, no los quiero espantar XD.... neee!!! Pero siento ue sería un tema muy aburrido, y no por que mi trabajo sea aburrido, sino por que creo que ustedes esperarían mejores temas.
  • Ipods, kinect, aldea digital, windows phone???? Mmmm... si quieren les pongo la canción de panamericano (así o más choteado ¬_¬)
Cuando hayan uno de estos para iphone o vulvas para el uso de hombres, ahí si hablaré de tecnología.

Ok.... que les puedo decir. Si quieren que hable de algo, mmmm pues pidanlo. Por que si varios me dicen que tengo abandonado el blog, pero sería más motivante que me den un tema de que hablar.

Hay un cuadro de CONTÁCTAME a su izquierda. O sino, escribanme directamente a ingkstr@gmail.com. Quisiera tener retro interesante n_n

En serio si me gustaría volver a frecuentar este blog, a fin de cuentas, escribir cosas inspiradoras o estúpidas siempre me ha gustado, aparte por que me satisface ver que sean chidas o pendejas las cosas que escribo, es de interes para más de uno y suelo recibir comentarios muy buenos.

Espero saber de ustedes pronto chicos. Cuidense y sigan frescos, chao!!!

miércoles, 29 de septiembre de 2010

Software de protección civil.... que nostalgia ñ_ñ

Hoy en una de mis asesorias de mi tesis, mi tutor, con quien participe por segunda vez como alumno PIFI, el M. en C. Raúl Junior Sandoval, me mostró que por fin, el proyecto en el que participé con él, llamado "Diseño y desarrollo de software de protección civil para divulgación a habitantes del D.F. vía web o DVD" por fin ha concluido.

Repasemos....
  • Yo como PIFI, desarrollé una primera versión del software de protección civil en flash (la cual no fué muy estética, respecto a los colores. A su vez publiqué 3 artículos (artículo 1, artículo 2 y artículo 3) y 5 carteles con la colaboración de Erick Yoel Rodriguez Gonzalez.
  • Me retiré del proyecto (mi semestre sabático antes del servicio social jaja). En el que el alumno Luis Miguel Grajales Pichardo hizo una segunda versión del software. A pesar de tener una arquitectura similar, los colores, estilos, animaciones, contenido mejoraron notoriamente (la verdad, mis respetos, y mis felicitaciones). A su vez, con este proyecto, los alumnos Karen Noemi Cano Peralta y Edgar Ivan Domínguez Soriano participaron y utilizaron este proyecto como tesis para obtener su título de licenciatura en ciencias de la informática (igualmente, les mando mis felicitaciones).
En palabras personales, admiro a este maestro por su labor, tal vez no tanto técnico, pero su pasión en la investigación es lo que más he admirado. Por lo que lo elegi como maestro tutor en mi tesis (en vez de aquellos "profes" que son del área, pero... no lo demuestran ¬_¬).

Esta es la carátula de la gaceta... Esta imagen está truqueada... dado a que la original le puso una dedicatoria. Pero esa mejor la prefiero conservar personal n_n

Este es el artículo en si del software. Como verán, se está desplejando uno de los carteles realizados por Yoel y por mi. En los créditos podrán ver nuestrso nombres.

Este es el cartel que se muestra en la imagen anterior. No encuentro la versión en horizontal, pero igual pueden ver los créditos :P

Esta es la tesis derivada de este proyecto. La pueden descargar desde aquí.

Espero pronto tener la página web donde podrán visualizar el software. Mientras, me despido y me dió gusto compartirles esto :)

sábado, 11 de septiembre de 2010

Las palabras y gustos de un romantic geek

Hola chav@s.... bueno, como habran notado (o que ni notaron xq no es relevante en la realidad ¬_¬) llevo casi dos meses sin escribir nada por aqui. Razones??? Más que nada dos, la primera es por falta de ideas, y las pocas que tengo son muy talachudas, las cuales, espero en un fin de semana de completo ocio poder desquitarlas.

La segunda... es algo personal, pero pues este ultimo mes atravese un cierre de un ciclo en mi vida muy importante para mi (he escrito de eso en este blog - respecto a mi ahora exnovia lasallista), el cual, a pesar de que yo ya sabia que debía de terminar, no fue muy facil que dijamos, hubieron sus ventajas y desventajas, incluso, las cosas no terminaron como yo lo hubiera deseado (incluso fue muy desastroso).

Como sea, es un ciclo que termina, con lamentaciones, pero también con esperanzas al frente de la esquina y muchas espectativas a mejorar como persona y conocer nuevas experiencias y personas.

Pero bueno, no vayamos lejos, recordar como uno era de soltero deseando tener una novia... lo cual, en ciertas ocasiones no es facil, y mas cuando eres un geek, el cual, si eres un poco cuadrado, nerdo y torpe, tus posibilidades se reducen :o

Aunque, sabiendo poner un poquito de creatividad, q a fin de cuentas, a las personas (hombres o mujeres) les encantan por igual, surgen cosas muy inusuales y muy geniales, siendo uno mismo, suponiendo que eres una persona amante de la informática, sistemas, videojuegos, socialmedia y todas esas babosadas caracteristicas de todo geek. En mi caso, no te tienen que apartar de la sociedad, incluso, usarlo a tu favor. Yo le llamaria (inteligentemente o pendejamente) como romantic geek.

En primera... aun me acuerdo del juego de ahorcado (http://ingkstr-en-upiicsa.blogspot.com/2009/12/un-regalo-de-reyes-juego-de-ahorcado.html) que hice como regalo de mes.. el cual aparte de tener el resultado esperado, muchas personas ajenas se interesaron como proyecto para inteligencia artificial (que ya vimos q no necesariamente es de inteligencia artificial ¬_¬). Eso habra que un buen programador puede hacer cosas chidas... aunque si uno es mas frejon, le sabe al desarrollo de videojuegos, puede hacer algo tan chingon como proponer matrimonio en una reprogramación del clasico super mario world.


Honestamente no se como le hizo, o igual y ni lo hizo, pero funciono XD

O sino, por Dios, cuantas veces llevamos en nuestras vidas clases de óptica y reflexión de la luz... usados bien, podemos, al momento e dar un aniñño, en vez de pensar en comprar el mas caro, o el que tenga la joya más pinche grande (o de colores extravagantes) mejor ser más simples.

Cuando haces brillar una luz a través del anillo, que proyecta las imágenes hacia fuera como un pequeño proyector. Fue tan chingon, que fue robado :( Vean más en esta página.

Ok... no pensemos en casarnos aun, a la mejor en el momento del ligue, que a muchos cuesta trabajo, ya ni sabe uno que decir. Las nenas se saben todos los piropos habidos por haber, desde los comunes, hasta los pelados. Mejor aun, un geek no diria cosas asi por que hasta es LOGICO que son basofia... Seamos más acorde a lo nuestro, o sino, reirnos de una que otra babosada que sale cuando buscamos en Twitter el hashtag de #piroposgeek
  • Como me gustaria ser tu blackberry para que me digas BB.
  • Eres el Kernel de mi Linux
  • Deberías llamarte google, por que tienes todo lo que busco.
  • me conectare el monitor para que veas como late mi corazon por ti
  • Situación Sentimental: "NullPointerException"
  • Mi sistema operativo entra en hibernación cuando no estás a mi lado.
    me gustaría verte completita en Full HD
  • y tu donde tienes el boton de "Me Gustas"?
  • Tienes permisos de root en mi vida.
  • Tengo el feed RSS de tus pensamientos.
Incluso, si quieren otros mas atrevidos ¬_¬ pues....
  • si asi tecleas ya me imagino como mueves el mouse!!!
  • Que bonita cola de impresión
  • Desearía ser mouse para que me movieras la bolita
  • (en realidad son muy bobos si quieres ser muy sexistas)
Cualquier cosa, busquen en twitter con el tag de #piroposgeek

Aprovechando que ahorita esta de moda el desmadre de ipod que saca su ipad, y que el nuevo ipod cuadrado, casi casi falta que saquen un ipod comestible, muchos enagenados bloggeros que incluso llegan a hartar con solo hablar de ese tema, tienden a sacar cosas muy curiosas y cursis respecto a estos aparatitos de la manzanita.



Para un regalo de mes o un detalle de interes, servirian (por que para uso cotidiano, creo q serian muy pesados ¬_¬)

Quien no le diria si a esto??? =D

El punto es que todos tenemos como demostrar el amor, y pues, todos tenemos oportunidad, hasta para los apaticos amargados antisociales egocentricos. Hasta el mismo Dr. House por fin cupido le cumple XD (hermoso final de temporada cierto???)


Quien no se haya mojado con esto, vayan a un doctor, son impotentes jaja

Bueno, creo que es todo de lo que me puedo acordar hasta ahora de este tipo de romanticismo teto jeje. Obvio, para muchos son ideas buenas o para otros muy bobas... cada quien verdad??? si los aplican y no sirve, obvio, no era para la persona indicada, pero si funciona, enhorabuena XD

Pues saludos, espero escribir pronto jeje bye.

jueves, 29 de julio de 2010

Reportandome!!!

Hola chic@s... no se cuanto tiempo ha pasado desde mi último post. Solo se que ya tenía algo descuidado el blog. Pero aun así tengo muchas cosas de que hablar.

1.-Las inscripciones

Dios, si sentí nostalgia que fuera esta semana y no hubiera hecho mi ritual de buscar buenos maestros y armar mi horario.
Aun así, en mi ocio pude ver los horarios de este semestre. Algo que puedo decir felizmente es que en los primeros semestres hay muchos maestros nuevos, al menos en el lado de las materias de ciencias de la informática, eso habla de que se ofrece oportunidad a nuevos docentes ue pueden estar mejor preparados (esperemos) y que estan agarrando la onda de que muchos de los maestros actuales no son lo idoneos.

Pero por otra parte, en el ramo de la ingeniería en informática, las materias de redes de 6to a 8vo semestre de la tarde.... con las experiencias propias y ajenas, son UNA DESGRACIA.

A lo mucho que llegarían a aprender es como conectar este aparato (mmmm si no es que se los dejan a investigar ustedes ¬_¬)

Las redes GPS están conformadas de 21 satelites y 3 de respaldo - FIN DEL PROGRAMA DE LA MATERIA DE REDES... de que maestro hablo??? ¬_¬

2.- Ayosh!!!

Una verdadera pena para mi en lo personal es que mi amiga Tania Jaramillo en su blog publicó ayer su despedida de su blog. Es muy lamentable en mi caso, ya que tanto ella y Ocotitla fueron inspiración propia para escribir en un blog. Ojala pronto vuelva a escribir y que las razones que tenga para dejarlo puedan ser resueltas. Le mando un gran saludo y le recuerdo que la quiero mucho ;)
3.- FUSOL 2010

Ya viene el FUSOL

Espero que todos los upiicsianos estén emocionados por este evento, y que todos aquellos que quieran participar y aportar algo, se animen y colaboren. Desafortunadamente no he podido colaborar tanto como yo he querido en la organización y las juntas, ya sea por tiempo o por disponibilidad. Lo que si es seguro es que enviaré un par de propuestas para talleres, una del framework JSF y otra del administrador de contenidos Joomla, espero que sean aceptadas y pueda ir a mi querida UPIICSA pero por primera vez no como alumno, sino como tutor. Obvio, espero que esas propuestas primero sean aceptadas. Aun así, espero que también hayan más talleres, no solo de externos, sino de la matricula upiicsiana.

4.- El nuevo Windows Live Hotmail

Desde hace como una semana los que tengan mail con extensión "@hotmail.com" o "@live.com.mx" ya habrán notado un cambio en el entorno de su correo. Al parecer a los fieles de los testigo de Je-its se les ocurrió limpiar y ordenar un poco la presentación del Hotmail. Al menos, eso se ve. La verdad les quedo chido

Y pues esto es una hermosa ventaja para los usuarios del hotmail..... EN WINDOWS.

Desafortunadamente, los usuarios de Linux, les anda ocurriendo algo similar a lo siguiente cuando abren su cuenta....



Al parecer les abre el entorno de windows hotmail PARA MOVILES ¬_¬

ACTUALIZACION

El problema radica en que Ubuntu 10.04 está instalando en sus actualizaciones el Mozilla Namoroka, el cual es una versión beta de este. Como todo beta tiene sus errores. EN ESTE CASO, UNA FALLA ES QUE NO ABRE HOTMAIL DEBIDAMENTE.
Evidentemente la solución es desisntalar esa versión besta e instalar el mozilla firefox actual o anterior.

Mientras no sabia esta solución pude conocer Evolution en mi compu para evitar ver ese entorno feo ¬_¬. Para los que no sepan, Evolution es la versión libre de Outlook, el cual por cierto, si sirve ;)


5.- Mi fiesta de graduación

Este viernes por fin festejo con mis amigos de la UPIICSA que ya somos PASANTES de ingeniería en informática (menciono pasantes por que ya ha de haber gente por ahi sintiendose aquel ¬_¬).

Perdonen la censura mamerta, pero las organizadoras me matarían jajaja

Se siente tan bien ver tu nombre en una lista así =D entre puros ingenieros frejones XD

Espero que la fiesta este muy bien, lo cual no dudo, ya que las organizadoras le echaron muchas ganas. Por cierto, les quiero agradecer a Cinthya, Claudia y Lorena por el esfuerzo infrahumano que pasaron todo este tiempo para que esto fuera un exito (y lo va a ser).

Sería la fiesta y el viaje, el cual, este último no podré asistir por cuestiones de tiempo y dinero (ya estoy trabajando pero ando ahorrando para cosas personales). En la otra fiesta de ingeniería informática me parece que el viaje venia incluido con los boletos. Pero bueno, ese es el precio de oportunidad al tratar de pensar en las opciones "viaje a Vallarta" vs "un buen rato con tus amigos".

Pues, creo que eso es todo, pense que tenía que escribir más. Se cuidan y suerte a todos en su primer día de clases ;) que en serio lo voy a extrañar (que ñoño me oi jajaja)

sábado, 10 de julio de 2010

Otra cadena de 5 centavos

Este 15 de Sep. No va a haber grito, va a haber silencio, por México.

Hagamos algo con verdadero valor para México, algo que de verdad demuestre que estamos unidos, y en desacuerdo con la manera de combatir la inseguridad.


Este 15 y 16 de septiembre démosle la espalda a nuestros gobernantes.

Dejemos que ellos solo celebren las fiestas patrias, ellos sí tienen que festejar.

Que por primera vez en la historia de este país, el grito de independencia y libertad sea un gran silencio de inconformidad y disgusto.

Que sientan los principales líderes y mandatarios de este país que nosotros también podemos darles la espalda.

Esto es lo que mueve, esto es lo que hace reaccionar, esto es saber que es tener a un país secuestrado, vivimos a la zozobra, entre rejas en nuestros hogares y comercios, con blindajes de todo tipo.

No estamos en tiempos de decir VIVA MÉXICO, ni de festejar nada, ni de ir aplaudirle al Ejercito, ni a al Mandatario, Gobernante en turno, que no han podido controlar ni darnos bienestar. Ni mucho menos seguridad que es lo mínimo que deben hacer, para eso se funda el estado.

Así que propongo que este 15 de Septiembre no haya grito sino un gran silencio de enojo y reclamo.

Dejemos solos a los gobernadores, al (los) mandatario (s) en sus respectivas plazas, que le den su grito al aire y a su familia y equipo de trabajo, que se lo crean ellos, no nos han servido absolutamente para nada, si se fijan sólo han aprobado las reformas que a ellos convienen ya sea para recibir más apoyos y/o votos.

Únete de verdad a este movimiento histórico por el bien de tu familia, de tu comunidad, de tu estado, de tu vida y del país en que vivimos todos.

Este 15 de Sep. No va a haber grito, va a haber silencio, por México.

Demos el grito y festejemos (si hay algo que festejar) en nuestras casas con amigos y familiares y al desfile ni pararnos por ahí, los reconocimientos que hemos recibido últimamente son un par de medallas olímpicas y el primer lugar en secuestros ¡que lo festejen ellos!

LAS DIZQUE AUTORIDADES DEBERÍAN DE TENER MIEDO AL PUEBLO,NO EL PUEBLO A UNA BOLA DE RATAS, CORRUPTOS QUE SOLO VELAN POR SUS INTERESES 'HAY QUE APOYAR, ES MOMENTO DE HACER ALGO'.

¡VIVA MÉXICO!, sólo que sin las farsas de los gobernantes y su grito de independencia en las diferentes plazas cívicas de todo el país.

¡Únete y circúlalo!




Veo este mail y lo primero que me viente a la mente es una imagen como esta


1.- Sabemos que México iba a ser humillado en el mundial en octavos contra Argentina, aun así, (yo me incluyo) vimos el partido para ver el futuro fatálico, sino es que obvio.

Seamos sinceros.... el poder del anonimato en internet es grandioso, sino es que sea excitante.... pero ya veremos al morro escritor dentro de esta imagen.

Si bien el país en serio no es lo que desearíamos que fuera, por algo en nuestras primarias nos hacian estar parados los lunes en la mañana levantando la manita al pecho cantando una letra con estrofas que pensamos muchos que no tenía sentido y nos hablaban de un valor que a la mejor no muchos creemos que es valor, le hacen llamar PATRIOTISMO.

No me voy a poner a hablar de ello, pero pues yo solo pienso en esos chiquirrines enviando sus mails tipo "el machete" como se van a estar lamentando el 15 de septiembre de no estar en la fiesta que organicen sus familias con el antojo del pozole y echando espuma en lata, todo por que a un sujeto se le ocurrió quererse pasar por revolucionario barato y le seguirán la corriente.

Consejo #1.- FIltreén sus mails.... ya me han llegado 5 de esos correos molestos, falta que en diciembre se quieran revelar contra santa claus.

Consejo #2.- Vuelvan a ver este video.... a muchos no les ha quedado claro.



Consejo #3.- Por supuesto que tenemos que festejar (aunque no lo parezca). Es decir, valoremos lo que tenemos....


Se quejan del ejercito.... los invita a Iran ;)


A ver niñas.... alla no existe ni el regueton ni las blusas

Como creen!!! Pobre México estamos tan jodidos como en Africa
O de lo que no tenemos...



El simple hecho de que pueden leer este post significa que TIENEN ACCESO A UN PRIVILEGIO LLAMADO COMPUTADORA Y A OTRO MAS PRIVILEGIABLE LLAMADO INTERNET.... AL MENOS NO ESTAMOS COMO ESTOS MORROS...



Si tienen razón, estamos en el pais más jodido, inseguro y dependiente. Mta.... Ahi esta un aeropuerto, los aviones son muchos y muy anchos. ¬_¬

sábado, 26 de junio de 2010

De egresado y aun ñoñeando

Creo que este es el primer post como egresado de UPIICSA. Honestamente, me da mucha nostalgia, la cual por más que quise evitar, uno se siente raro por que ya no estarás en un ambiente upiicsiano... tan distinguible por su <sarcasmo> excelente administración, por tener a la directora más honesta y transparente de América Latina, or los profesores mejor cumplidos y mejor preparados, que no se dejan corromper por dinero ni por un par de posaderas o un par de pechos, ellos siempre se mantienen a la perspectiva, por que su matrícula académica es muy selecta y no hay alumnos que piensen en matar clases cada que pueden, que nunca los vas a ver haciendo un acordeón, que nunca los veras pidiendo trabajos a otros compañeros </sarcasmo>, vaya... como no extrañarla.... pero bueno, es hora de ver para adelante.... a final de cuentas, por más que uno luche... el ciclo de la vida continua.

Empecemos con mi agenda de relatos bobos...

1.- En realidad, me siento agradecido por la felicitación que me hizo Alberto en su blog. Efectivamente, ya me encuentro trabajando como consultor Java. Acabo de salir de la capacitación y apenas estoy empezando a trabajar en el proyecto al que me mandaron, por lo tanto no tengo mucho que decir aun.

En primer lugar.... si puede servir de consuelo a los upiicsos (QUE NO DEBERÍA) es que sencillamente nadie sale 100% preparado de la escuela. Prácticamente....
  • Para programadores, te piden frameworks (framework de net, struts, hibernate, spring). Y sabemos, que los programas académicos solo llegan hasta programación de clases, a los más que llegan es JDBC y GUI (x cierto.... las aplicaciones cliente - servidor ya no se piden mucho, es más demandante las aplicaciones Web - así que saber usar Netbeans o VB6 jalando componente a formularios no te hará experto).
Ya quiero ver a los pseudo-maestros de programación entender este diagrama básico del funcionamiento de Struts
  • Para bases de datos, aun también debes programar en SQL. Suena absurdo, pero desafortunamente los "select's" siguen siendo un tema de estudio que muchos maestros solo llegan al tipico "select * from tabla;". Es más.... es lamentable que muchos proyectos en esas materias sean permisibles las entregas en Access.
Look at mommy!!!! I know SQL...

O_o .... WTF!!!! I want my mommy!!!!!!! :'(
  • Los analistas son los que más se la llevan campechana, o debería, es decir <sarcasmo> cuando haciamos nuestros proyectos, obteniamos los requerimientos mediante entrevistas, cuestionarios a una muestra de 95% de nivel de confianza, que comunmente son como 600 personas, o si es para un sistema a la medida, nunca dar nada por hecho, estudiar bien los casos de estudio, enlistarlos y convertirlos a un WBS detallado, todo SIN INVENTAR NADA ni sacar requerimientos un día antes. </sarcasmo>
  • Redes.... mmmm eso va alineado a otro tema... Unix.... Recuerden, usar Ubuntu no te hace experto, y el subir una página a un servidor Apache tampoco.
OMG!!! =D Mommy mommy.... I know networks!!!!

O_O I pee myself

  • Documentador..... si saben usar el Javadoc y CheckStyle ya estuvo..... que son esos programas???? mmm..... no comments.
  • Lider de proyecto.... como recién egresado.... mmmmm..... no comments yet.
  • El uso de excel sigue siendo muy solicitado
Un libro de excel for dummies sería util.... a caray!!!! mmmm me equivoque ¬_¬

Esto surge por que en la capacitación, el patrón común es que muchos no salieron tan bien (y era de escuelas públicas y privadas de dentro y fuera del área metropolitana). Y pues... se pusieron al corriente estudiando por aparte o en cursos, o requirieron una capacitación previa (esta última fue mi caso - por la cosa de los Struts). Honestamente yo preferí empezar desde cero y ganar un poco menos a querer ganar mucho, pero con el riesgo de calabacearla. Claro, reconozco que hay gente que no requiere la capacitación y puede empezar bien.... excelente por ellos, incluso, son reconocibles.

También es curioso ver que el tema de "que escuela vienes??? que estudiaste???" se ve tremendamente innecesaria, se acabó la cuestión de creerse mejor que los de ciencias o que los de otras escuelas son más frejonas. Estamos viendo una colaboración en la que si tienes un problema, alguien de tu equipo de trabajo tiene, incluso la obligación, de ayudarte. En mi caso, el tema de las carreras y las escuelas salió hasta 5 días después que empecé, y eso, por que de plano no teniamos tema de conversación.

Al final, solo queda esperar tener suerte y echarle ganas. Advierto..... la depresión post-graduado existe, y se siente el cambio de un estudiante a un profesionista que ya tiene responsabilidades. También el temor de que esas mismas responsabilidades nos queden grandes... vaya, solo queda confiar en uno mismo (y llevarse unos chocolates para subir el azucar y no te pegue tanto la depre ¬_¬) Bueno... cambio de tema.

Mis respetos a este maestro.... Colín Bojorquez Alejandro de Formulación y Evaluación de Proyectos. Porque???? Metan materia con el en vez de algún maestro barco para que les recuerde a cada rato que los upiicsianos NO SOMOS LA CREMME DE LA CREMME. La bajoneadas de autoestima que daba este sujeto en realidad te ponen en tu lugar y te hacian ver que el mundo no es color rosita y que los maestros barcos y corruptos, alla afuera YA NO EXISTEN.


2.- Es muy lindo saber que tendremos entrega de diplomas de modo formal... Por aquellos que aun no se enteran, vean los detalles.


Solo que este ritual se ve manchado por la burocracia que hay para el trámite de la tesis, el cual empiezas por llevar un anteproyecto y elegir un director de tesis. Desde ese momento debes entregar a la sección de titulación un conjunto de papeles, entre los cuales se encuentra la carta pasante y la boleta certificada. A partir de la aceptación tienes un año para acabar la tesis y exponerla en el exámen profesional.

Y como obtengo mi carta de pasante y la boleta global????

Pues en esa ceremonia te darán la boleta certificada. Pero leamos de nuevo el cartel, es HASTA SEPTIEMBRE.

Y nomás la boleta???? mmm... también un diploma que guardarás en un folder y lo olvidarás en un cajon, y una credencial de egresado (te lo juro.... los ingenuos creen que volveremos a UPIICSA ja....). Y la carta pasante???? Pues.... oigan, Zacatenco no podía quedarse con las ganas de hacer su propio trámite basura. Así que con la boleta APENAS podremos ir alla a tramitarla.

Y ya con la carta pasante que no sabemos en cuanto tiempo la tendrán, ya podemos entregar papeles de tesis. Solo que es absurdo el hecho de que el año que tienes para acabar la tesis no cuenta desde que das los papeles, sino desde que te autoriza el jefe de tu carrera el anteproyecto de tesis. Definiendo que sería absurdo empezar tu tesis desde ahorita, sino hasta que te den la carta pasante conviene estar otorgando tu anteproyecto... se podría antes, pero... y si no es aceptada, o si lo es, pero tendrás parada la tesis por lo mismo. En realidad si es frustrante, sobre todo por que en mi caso personal si deseo tener mi tesis terminada en un año y empezar la maestría. Incluso, por eso mismo, se optan por otras alternativas de titulación. En realidad no tengo nada en contra de los que hacen seminarios, escolaridad (que así yo me titulé de la vocacional), por maestría, prácticas profesionales, pero es muy desmotivante que no se impulse la iniciativa de alumnos a hacer algo por su propia cuenta... hasta donde yo lo veo, hasta parece que no les conviene que hagamos tesis.... o sino, que alguien me explique.

3.- No cabe duda que en el mundo de las tecnologías de la información, quien no se actualiza por un mes, pierde el hilo y muy feo. Cuantos de nosotros no revisamos blogs y foros que nos gustan. Pero esos comunmente llegan a ser más que solo 3. A la mejor tienes 7 blogs favoritos y olvidas revisarlos. Yo por ejemplo, aparte de los blogs que anuncio en esta página, sigo los siguientes:

Foros de nuevas tecnologías
http://conecti.ca/
http://www.puntogeek.com/
http://www.tequilavalley.com/
http://www.elcodigok.com.ar/

Un poco de cultura general
http://www.invdes.com.mx

Foros ñoños jaja
http://listocomics.com/
http://www.conectalo.es/
http://es.xkcd.com/xkcd-es/

Son blogs de mi agrado, los cuales cuentan con tecnología RSS para que lo puedan seguir desde sus RSS-feeds. Yo personalmente uso bloglines.

http://www.bloglines.com - Un RSS-Feed muy ordenado, muy simple de usar y libre.

Veran cuantos foros y blogs sigo. Al menos así es más ordenado. El punto aqui es seguir informado, que de por si, en las escuelas aun creen que C++ Builder es la panasea, el UML es algo hecho por el diablo y que los Just In Time son solo para industriales, mejor aprender del mundo real.

4.- Un poco de comedia visual. El día sabado 26, este video dió la vuelta al mundo en el mundo Geek, para el deleite de los javeros y la mofa de los punto-neteros.



Si si... muy geek... en realidad muy chistoso. Aunque hay algo que quisiera compartirles (igual esto me cuesta mi estancia en el grupo de upiicsalibre, pero debo de ser sincero). En el mundo de los developers, un gran porcentaje lo ocupan los javeros, haciendolo muy competitivo, incluso saturado. Y respecto a los que dominan .net son bien pocos, pero en el instante que se requiere un proyecto en .net los pocos que hay, como no tienen mucha competencia, son elegidos casi por inmediato. Se los dejo como tip, es un área muy poco explotada, pero por lo mismo, con mucha oportunidad de crecimiento (obvio, también eso implica que dejen la dependecia al VB6).

5.- Acabemos con más comedia, en este caso, más mundano. Espero que por el bien de las mujeres, este no haya sido su caso en su época de pubertad.



Los veo pronto... ;) Y ya no lloren por que la selección no ganó, seamos sinceros, sabíamos que pasaría (pero eso si.... sigamos haciendo sandwiches)

lunes, 14 de junio de 2010

Anécdotas de un ubuntero

Bueno.... despúes de todo un domingo, en mi compu ya tengo el Ubuntu 10.04.

Cuando vez esta pantalla sin que salga en WIndows una bluescreen o salga humo y chispas de tu lap, sabes que todo valió la pena.

Las ventajas de la nueva versión de Ubuntu 10.04 es que tiene un kernel mejorado que hace 50 mil cosas que tu no notarás, pero son cosas muy chidas, arranca y apaga tu compu más rápido, mucho más rápido que el Windows (que raro) y tiene 70 mil programas nuevos de los cuales, no usaras más de 10 si eres un novell y como 50 si ya tienes más experiencia. Los colores son psicodélicos y te harán sentir que estás en un viaje marihuanesco etc etc etc bla ble bli blo blu biridibaridibu


Algo que me he dado cuenta en el relajo de UPIICSALIBRE, es que si bien hay gente que le gusta el software libre, también hay gente que podría llegar a decir "y que más????". Van como 3 o 4 personas que piensan que una comunidad no solo debe andar dando propaganda y que no solo se dediquen a talleres, que bien podrian evitarse con un buen tutorial en internet, que de hecho, así aprenden los que imparten esos talleres. Ahora si que es un punto el cual, al menos por mi parte, intentaré considerar.

No se crean.... estamos concientes de que puede pasar :o

Y bien, dicho esto, ok, instale el ubuntu 10.04, la más reciente de LInux Ubuntu. Qué vas a decir???? Lo único que alguien podría hablar comúnmente son cosas que ya uno sabe.

La actualización tardo casi todo el día... en realidad, fue mpas por vanidad y ocio que por necesidad de actualizar XD

Bueno.... lo que no es común, es la opinión de la gente y sus experiencias.... qué he aprendido al usar Ubuntu, y no precisamente la nueva versión, sino en general:

  1. No instalen ninguna distro (distribución - no me pregunten, así le dicen ¬_¬) de Linux EN UNA MEMORIA O HD USB. Jaḿas!!!!!! El grub (listado de sistemas operativos a arrancar) tiende a pensar siempre que DEBE encontrar un sistema operativo en esa memoria. Conclusión... tu computadora no podrá arrancar sin el dispositivo donde lo instalaste, aun si en ese momento vas a usar el S.O. que está en el HD local (aun así, el grub te lo pedirá). Si intentas quitar la opción del S.O. del GRUB, tiende a aun así buscarlo, incluso, eso haría que como ya no surge esa opción.... pues ya no podrás acceder a él. Estúpida decisión.
  2. Pasos a seguir a instalar Windows y Linux. Primero particionen el disco duro. Luego instalen Windows en la primera partición, y al final, instalen las distros que quieran de linux en las demás particiones. Si lo hacen al reves.... NO QUEDA!!!! en serio, lo he intentado :(
  3. Saber Ubuntu no significa saber Linux.... interesante es cuando usen Debian u otras distros más "rústicas", y por rústicas, me refiero a que no sean tan gráficas y que tengas que pasar un buen ratito en el uso de la "Terminal", así que es mala idea que si solo has usado Ubuntu, pongas en tu curriculum que sabes usar Linux.... ellos esperan que sepas "ciertas cosas".
  4. Tampoco saber como poner el cubo de Ubuntu es saber usar Linux. Las palabras mágicas son "CompizConfig" y debes escribirlo en el gestor de descargas Synaptic. TAN TAN!!!! En un trabajo te pedirán subir una página a un servidor Linux, no que ese servidor tenga 4 pantallitas, que a veces, solo se tienen por payasada (me declaro culpable =D).
  5. Si no te gusta el OpenOffice, NO SUFRAS!!!!!!! Por eso por ahí tienes una partición con Windows para que uses el Office al que estás acostumbrado. "Oye no manches castelán, estas en UPIICSALIBRE y andas promocionando su uso". NOOOO!!!! Si no te gusta como se ve el openoffice, pues yo dijo que la computación te facilita la vida, no te la martiriza, por eso tanto anciano que le dpa miedo usar la computadora. Obviamente, si amas el software libre, pues ve usando el open poco a poco para que te acostumbres y agarres confianza.
  6. El punto 5 aplica para muchos softwares. GIMP por Photoshop, Firefox por IE, emesene por messenger, incluso, por que no, Linux por Windows. En lo personal, se sigue usando Windows no tanto por su gran impacto y ventajas, sino, mera costumbre!!!!
  7. El centro de software de ubuntu es maravilloso. Pero si no encuentras un software que deseés, no tengas miedo y busca en internet como instalarlo. Si intentas buscar un métod que no tenga que ver con las palabras "apt get install", mmmm pides mucho jajaja. No en serio, intentalo, algún día, tiene que salirte. Y sino, hay mucho geek linuxero en foros que pueden MEDIO ACONSEJARTE (tampoco te resolveran la vida).
  8. Los juegos son chidos XD, sino, les recomiendo Neverball y Armagetron Advanced (me parece que solo hay version Windows para el primero).
  9. Si existen virus para Linux, el que sean pocos es otra cosa. Es decir, si hay 5% de probabilidad de embarazarse usando condón (5 de cada 100 personas con pésima suerte), también debe haber 1 de 100 que tenga virus en linux, o 1 de 1000 o 1 de 100000, PERO LO HAY.... Hombre prevenido con antivirus, vale por 2.
  10. Cuál es el mejor messenger para Ubuntu??? emesene, he dicho.
  11. Quieres la nueva versión de Ubuntu???? Descarga la imagen ISO y quémala. No actualices. Por que???? Qué tiene de malo??? Hay fallas al actualizar??? No, la verdad no, pero es mas tardado (2 horas vs 12 HORAS, imaginense).
  12. Si les sale el gestor de actualizaciones, descargen con calma. Linux es más estable y no existen "fatality bluescreens".
  13. Depuren su GRUB, al actualizar, salen accesos a ubuntu con varias versiones de kernel. La única que sirve es siempre la más actual, las demás ya no están y los redirigirá a la versión actual ¬_¬
  14. Si a alguien le intentas imponer que use Linux, es como querer imponer a un católico que sea testigo de Jehova. En un momento, habrá alguien que te mande a la goma si lo presionas. Como mencioné antes, POCO A POCO!!!! Y ESO, SI QUIERE!!!
  15. En una partición de Linux, puedes acceder al 100% a la partición de Windows, SIN INGRESAR CLAVES!!!! Así que si un hermano y una hermana usan la misma compu, la hermana tiene Windows y el hermano Linux, niñaaaa.... tu ciberdiario será leido =D, y lo peor, tu no podrás delatar su porno por que la partición Windows no reconoce la partición de Linux ñaca ñaca
Si.... es centro de software!!!! Y puedes bajar los IDE's que requieras. Aunque claro, no sirven mucho si no sabes la diferencia entre un for y un while ¬_¬


Los juegos!!!! Sana diversión, pocos beneficios. Pero, a fin de cuentas... juegos =D y como siempre, con una tarjeta de video decente, puedes jugar los de 3D.

Pues... es lo que puedo decir hasta ahora. Si encuentro cosas rifadas en Ubuntu, se las haré saber. Solo les dejo unas imagenes finales de por que muchos prefieren linux.



Un sistema operativo que está muy abstraido y con pocas posibilidades de observar y manipular el código lo hace para los programadores muy aburrido y poco dinámico. Sobre todo con la gran cantidad de fallas y bluescreens

Que diferencia verdad??? Un sistema operativo más abierto y con mayor accesibilidad sin tantas fallas. Es decir, ubuntu significa unión, sino, su logotipo lo dice todo.

Cuidense!!! Bye!!!

jueves, 10 de junio de 2010

Ya ni siquiera Java... fundamentos de programación y estructuras de datos

Ok.... mucha disculpa, mucha mala fama, YA BASTA, EL DUEÑO DE ESTE BLOG SOY YO jajajajaja, ya lo saqué, sigamos con el espectáculo.

"¿Para que sirven las materias de estructura y representación de datos? ¿Porqué aun vemos teoría de la computación? ¿Qué caso tiene la materia de algoritmos computacionales? ENSEÑENOS PMP, JAVA, .NET, no cosas aburridas (para qué??? el maestro con que vayamos al teatro nos pasa esa materia fea)"

Conozcan a Michel Ruiz Tejeida. La primera persona que esta noche, practicamente me acaba de hacer ver que no soy tan buen informático como creia. Es decir, si uno se malacostumbra a programar usando IDE's, de todas maneras, Java y .net, las dos tecnologías más sobresalientes de la actualidad, ya hacen trabajo más facil. Pero como quiera que sea, uno se olvida de sus raices. C, C++, o incluso... ni las conocen.

Cosas más concretas

Las palabras "outportb" e "inportb"... quien me conteste donde ha escuchado eso antes, se gana una estrella de oro (y una paleta payaso si me dice para que sirven)

Y una de plata quien sepa en que está programado el kernel de cualquier distro de Linux

También Marisol de Televisa Deportes le dará un beso a quien sepa bien bien como usar un apuntador.

Si podria decirles la respuesta de las primeras dos, pero... igual y solo me quedo con un simple abrazo de Marisol, osea, es verdad, los actuales lenguajes si te desacostumbran feo.

Menos bla bla y más acción. Vean que que hablo con estos artículos que me envió Michel.

Los Riesgos de las Universidades-Java

Publicado por Javier el 1 de Junio de 2010

Este artículo de Joel Spolsky es, desde hace tiempo, uno de mis favoritos. Publicado originalmente en el año 2005, el paso del tiempo sólo lo ha hecho ganar rigor y actualidad.

Spolsky alerta sobre la creciente tendencia de muchas universidades a sobre-simplificar la currícula de las carreras de Ciencias de la Computación (con Java como “lenguaje insignia”), con el único objetivo de producir mayor cantidad de egresados y en menos tiempo. La consecuencia es directa: cada vez más abundan programadores que poco entienden de conceptos de programación (corrección, recursión, complejidad, paralelismo, entre tantos otros) y para los cuales los mecanismos “internos” de los sistemas informáticos (gestión de memoria, interacción con el sistema operativo, comunicación entre procesos, etc.) son completamente esotéricos.

El principal impulsor de este embrutecimiento es cierto sector de la llamada “Industria del Software” que requiere de mano de obra barata y de pobre formación, y empuja a las instituciones educativas a proveerles “recursos” tan rápido y en tanta cantidad como sea posible (ni qué decir de las instituciones educativas que ceden a esta presión).

Nadie está en contra de hacer la tarea del programador más simple, ni mucho menos de la evolución de los lenguajes y las metodologías de desarrollo de software. Lo que se reprocha aquí es la negación de la realidad como forma de evasión. Esto es: la necesidad de dotar a los programadores de ciertos conceptos, aún cuando esto provoque la deserción de quienes no puedan llegar a dominarlos (y mal que le pese al referido sector de la “Industria”).

Los Riesgos de las Universidades-Java

por Joel Spolsky
Jueves 29 de diciembre de 2005

Chicos perezosos.

¿Qué pasó con el trabajo duro?

Un seguro indicio de mi decadencia hacia la senilidad son mis continuas quejas y lamentos sobre “los chicos de hoy”, y cómo ya no quieren o no pueden hacer cosas difíciles.

Cuando yo era un muchacho, aprendí a programar con tarjetas perforadas. En esos tiempos si cometías un error, no tenías ninguna de esas modernas funciones como la tecla “backspace” para corregirlo. Tenias que tirar la tarjeta y empezar todo de nuevo.

Cuando empecé a entrevistar programadores en 1991, les dejaba usar generalmente cualquier lenguaje que quisieran para resolver los problemas de programación que les planteaba. El 99% de las veces, ellos elegían C.

Ahora ellos tienden a elegir Java.

No me malinterpreten: no hay nada malo con Java como lenguaje de implementación.

Un momento, quiero rectificar eso último. No digo, en este artículo en particular, que haya algo de malo con Java como lenguaje de implementación. Hay un montón de cosas mal con Java, pero tendrán que esperar hasta otro artículo.

En cambio, lo que quiero decir es que Java no es, generalmente, un lenguaje de programación lo suficientemente difícil para que pueda ser usado para distinguir entre excelentes programadores y programadores mediocres. Puede ser un buen lenguaje para trabajar, pero ese no es el tema de hoy. Puedo ir incluso mas allá y decir que el hecho de que Java no sea lo suficientemente difícil es una característica, no un bug, pero que tiene ese problema.

Si puedo ser atrevido, diría que en mi humilde experiencia han sido dos las cosas tradicionalmente enseñadas en las universidades como parte de la carrera de Ciencias de la Computación (CS) las que mucha gente nunca llega realmente a comprender: punteros y recursión.

En aquellos tiempos lo normal era empezar la universidad con un curso de estructuras de datos, con listas enlazadas, tablas hash y, por qué no, con un uso intensivo de punteros. Esos cursos eran frecuentemente usados como filtros: eran tan difíciles que cualquiera que no pudiera soportar el desafío mental de un grado en CS se daría por vencido, lo que era bueno, porque si piensas que los punteros son difíciles, espera hasta intentar probar cosas en teoría de punto fijo.

Todos esos chicos que lo habían hecho muy bien en la secundaria escribiendo juegos de “pong” en BASIC para su Apple II, iban a la universidad, tomaban el curso CompSci 101, sobre estructuras de datos, y cuando llegaban al asunto de los punteros, sus cerebros estallaban completamente; y lo próximo de lo que tenías noticias es que estaban especializándose en Ciencias Políticas, porque la escuela de leyes parecía ser una mejor idea. He visto todo tipo de de índices de deserción en CS y usualmente están entre el 40% y el 70%. Las universidades tienden a ver esto como un derroche; yo creo que es sólo la poda necesaria de gente que no va a ser feliz o exitosa en una carrera de programación.

El otro curso difícil para muchos jóvenes estudiantes de CS era el curso donde aprendías programación funcional, incluyendo programación recursiva. MIT puso una barrera muy alta en esos cursos, creando un curso obligatorio (6.001) y un libro de texto (Estructura e Interpretación de Programas de Computadora de Abelson y Sussman, el cual era usado en docenas o quizás cientos de carreras de CS prestigiosas como el estándar de facto para la introducción a las Ciencias de la Computación. (Puedes, y deberías echarle una ojeada a la antigua versión de las clases en línea).

La dificultad de esos cursos es asombrosa. En la primera clase has aprendido casi todo Scheme, y ya has sido introducido a la función de punto fijo que toma otra función como parámetro. Cuando me esforzaba en pasar un curso similar, CSE121 en Penn, observaba cómo muchos sino la mayoría de los estudiantes simplemente no lo lograba. La materia era muy difícil. Inclusive escribí un largo email de lloriqueando a mi profesor diciendo que “simplemente no era justo”. Alguien en Penn debe haberme escuchado (o a alguno de los otros llorones), porque ese curso se dicta ahora con Java.

Desearía que no hubiesen escuchado.

Aquí radica el quid del debate. Años de lloriqueo de estudiantes perezosos como yo, combinados con quejas de la industria acerca de cuan pocos graduados en CS salen de las universidades americanas, han pagado su precio, y en la ultima década un gran numero de otrora perfectamente buenas universidades se han vuelto 100% Java. Esta de moda, a los reclutadores que usan “grep” parece gustarles, y, lo mejor de todo, no hay nada lo suficientemente difícil en Java como para filtrar aquellos programadores sin la parte del cerebro que entiende punteros y recursión. Así es que la deserción es menor, y los departamentos de ciencias de la computación tienen mas alumnos y mayores presupuestos y todo está bien.

Los afortunados chicos de esas Universidades-Java nunca van a toparse con raros fallos de segmentación tratando de implementar tablas hash basadas en punteros. Nunca se van a volver locos tratando de empaquetar cosas en bits. Nunca tendrán que ocupar sus cabezas en cómo en un lenguaje puramente funcional, el valor de una variable nunca cambia, y aun así, ¡cambia todo el tiempo! ¡Una paradoja!

Ellos no necesitan esa parte del cerebro para obtener un 4 en la materia.

¿Soy sólo uno de esos viejos cascarrabias anticuados, vanagloriándose acerca de cuán duro era sobrevivir a todas esas dificultades?

Rayos, en 1900, el Latín y el Griego eran asignaturas requeridas en la universidad, no porque sirvieran de algún propósito, sino porque de alguna manera eran considerados un requisito obvio de la gente educada. De cierta manera mi argumento no es diferente del argumento expuesto por la gente pro-Latín: “[El Latín] entrena tu mente. Entrena tu memoria. Desembrollar una sentencia en Latín es un excelente ejercicio del pensamiento, un verdadero acertijo intelectual y una buena introducción al pensamiento lógico”, escribe Scout Barrer. Pero ya no puedo encontrar una sola universidad que requiera Latín. ¿Son los punteros y la recursión el Latín y el Griego de las ciencias de la computación?

Ahora, admito que programar con punteros no es necesario en el 90% del código escrito en la actualidad, y de hecho es totalmente peligroso en el código de producción. OK. Está bien. Y que la programación funcional no es muy empleada en la práctica. De acuerdo.

Pero todavía sigue siendo importante para algunos de las tareas más excitantes en programación. Sin punteros, por ejemplo, nunca serías capaz de trabajar en el Kernel de Linux. No puedes entender una sola línea del código de Linux, o de hecho, de cualquier sistema operativo, sin realmente entender punteros.

Sin entender programación funcional, no podrás inventar MapReduce, el algoritmo que hace Google tan masivamente escalable. Los términos Map y Reduce vienen de Lisp y la programación funcional. MapReduce es, en retrospectiva, obvio para cualquiera que recuerde de su clase equivalente a 6.001 que los programas puramente funcionales no tienen efectos colaterales y por ende son trivialmente paralelizables. El simple hecho que Google inventara MapReduce, y no Microsoft, dice algo del por qué Microsoft está aun jugando a lograr que funcionen algunas características básicas de búsqueda, mientras Google se ha movido ya al siguiente problema: construir Skynet^H^H^H^H^H^H, la mayor supercomputadoramasivamente paralela del mundo. Simplemente no creo que Microsoft entienda completamente cuan retrasados están en ese campo.

Pero mas allá de la importancia a simple vista de los punteros y la recursión, su valor real radica en que construir grandes sistemas requiere del tipo de flexibilidad mental que adquieres aprendiéndolos, y de la actitud mental que necesitas para no huir de los cursos en donde son enseñados. Punteros y recursión requieren cierta habilidad para razonar, para pensar en abstracciones, y más importante, para ver un problema en diversos niveles de abstracción simultáneamente. Por lo tanto, la habilidad para entender punteros y recursión esta directamente correlacionada con la habilidad de ser un gran programador.

No hay nada en grado académico 100% Java que realmente descarte a los estudiantes que carecen de la agilidad mental para tratar con esos conceptos. Como empleador, he visto que las Universidades 100% Java han empezado a producir en serie una buena cantidad de graduados quienes simplemente no son lo suficientemente listos para trabajar como programadores en nada mas sofisticado que “Sólo Otra Aplicación Contable en Java”, aunque se las han arreglado para colarse a través de la (ahora simplificada) carrera. Esos estudiantes nunca sobrevivirían al 6.001 del MIT o al CS 323 en Yale y, francamente, esa es una razón por la cual, como empleador, un título en CS del MIT o Yale tiene más peso que uno de Duke, que recientemente se hizo 100%-Java, o de Penn, donde remplazaron Scheme y ML por Java tratando de enseñar la materia que casi nos mata a mis compañeros y a mi, CSE121. No es que no quiera contratar chicos listos de Duke o Penn, lo hago, es sólo que es mucho más difícil para mí darme cuenta de cuáles son. Yo estaba acostumbrado a decir que los chicos listos eran aquellos que podían desmenuzar un algoritmo recursivo en segundos, o implementar funciones de manipulación de listas enlazadas usando punteros tan rápido como podían escribir en la pizarra. Pero con graduado sde Universidades-Java, no puedo saber si padecen esos problemas a causa de haber sido mal educados o si los padecen porque realmente carecen de esa parte del cerebro que van a necesitar para ser buenos programadores en el trabajo. Paul Graham los llama “Blub Programmers“.

Ya es bastante malo que las Universidades-Java fallen en filtrar los chicos que nunca van a ser buenos programadores, algo que las universidades podrían justificablemente decir que no es su problema. Después de todo es la industria, o al menos los reclutadores-que-usan-grep, quien está pidiendo a gritos que se enseñe Java.

Pero las Universidades-Java fallan también en entrenar las mente de los chicos para ser hábiles, ágiles y lo suficientemente flexibles para lograr buen diseño de software (y no me refiero al “diseño” OO, donde gastas incontables horas acomodando tu jerarquía de objetos, o preocupándote de “problemas” superfluos como “tiene-un” vs. “es-un”). Necesitas entrenamiento para pensar en las cosas a varios niveles de abstracción simultáneamente, y ese tipo de pensamiento es exactamente lo que necesitas para diseñar excelentes arquitecturas de software.

Puedes estar preguntándote si la enseñanza de programación orientada a objetos (OOP) es un buen sustituto de los punteros y la recursión para el filtrado. La respuesta rápida: no. Sin debatir acerca de los meritos de la OOP, simplemente no es lo suficientemente difícil para filtrar a los programadores mediocres. OOP en las universidades consiste básicamente en memorizar un puñado de términos de vocabulario como “encapsulacion” y “herencia” y tomar exámenes del tipo “multiple-choice” acerca de las diferencias entre polimorfismo y sobrecarga. No más difícil que memorizar fechas destacadas y nombres en una clase de historia, la OOP tiene desafíos mentales inadecuados para espantar a los estudiantes de primer año. Cuando te enfrentas con un problema de OOP, tu programa aun funciona, sólo que es algo difícil de mantener. Supuestamente. Pero cuando te enfrentas a un problema con punteros, tu programa produce línea Fallo de segmentación y no tienes ni la menor idea de lo que está pasando, hasta que te paras, tomas una fuerte bocanada de aire y tratas de forzar tu mente a trabajar en dos diferentes niveles de abstracción simultáneamente.

Los reclutadores-que-usan-grep, de hecho, son ridiculizados aquí, y por un buen motivo. Nunca he conocido alguien que pueda usar Scheme, Haskell y punteros en C, que no pueda entender Java en dos días, y crear mejor código en Java que gente con cinco años de experiencia en Java. Pero trata de explicar eso al zombie de Recursos Humanos.

¿Pero que hay de la misión del compromiso con las CS de las facultades de CS? ¡Ellas no son escuelas vocacionales! No debería ser su trabajo entrenar gente para trabajar en la industria. Eso queda para los terciarios y los programas de capacitación del gobierno para trabajadores desplazados, dirán. Ellas se suponen que están para dar a los estudiantes las herramientas fundamentales para vivir sus vidas, no para prepararlos para sus primeras semanas de trabajo. ¿No es cierto?

Aun así, las CS son demostraciones (recursión), algoritmos (recursión), lenguajes (cálculo lambda), sistemas operativos (punteros), compiladores (cálculo lambda), y entonces la conclusión es que la Universidad-Java que no enseña C y no enseña Scheme, tampoco está enseñando realmente ciencias de la computación. Tan inútil como el concepto de currificación de funciones puede serle al mundo real, es un obvio prerrequisito para un graduado en CS. No puedo entender por qué los profesores en las comisiones curriculares de las facultades de CS han permitido que sus programas sean embrutecidos a tal punto que no sólo no pueden producir programadores operativos, sino que ya ni siquiera pueden producir graduados en CS que puedan obtener PhDs y puedan competir por sus puestos de trabajo. Oh, esperen. No importa. Quizás entienda.

Si volvemos en el tiempo y analizamos las discusiones que tomaron lugar en el mundo académico durante el “Gran Levantamiento Java”, encontraremos que la mayor preocupación fue que Java no era lo suficientemente simple para ser usado como un lenguaje de enseñanza.

Mi Dios, pensé, ¡están tratando de embrutecer la curricula aun mas! ¿Por que mejor no le llevamos la comida a la boca a los estudiantes? Dejemos que los ayudantes de cátedra den los exámenes por ellos también, entonces nadie se cambiara a Estudios Americanos. ¿Cómo se supone que alguien aprenderá algo si la curricula ha sido cuidadosamente diseñada para hacer todo más fácil de lo que ya es? Parece haber una comisión de trabajo (PDF) intentando idear un subconjunto simple de Java que pueda ser enseñado a estudiantes, produciendo documentación simplificada que esconde cuidadosamente toda esa basura EJB/J2EE de sus tiernas mentes, de manera tal que no tengan que preocupar sus cabecitas con otras clases que no necesiten para resolver sus aun más fáciles problemas de CS.

La interpretación mas compasiva de por qué las facultades CS son tan entusiastas en embrutecer sus clases es porque ello les dará más tiempo para enseñar verdaderos conceptos de CS, así no necesitaran dos clases enteras para esclarecer a los alumnos las diferencias entre, digamos, un int y un Integer en Java. Bueno pero si ese fuera el caso, 6.001 tiene la respuesta perfecta: Scheme, un lenguaje de enseñanza tan simple que el lenguaje entero puede enseñarse a estudiantes brillantes en unos 10 minutos; entonces puedes gastar el resto del semestre enseñando puntos fijos.

Fiu…

Voy a regresar a los unos y ceros.

domingo, 6 de junio de 2010

Obras, programitas, metrobuses eficientes, grandes licenciados e ingenieros y acelerómetros

A dos días de acabar esta gran locura llamada UPIICSA. Que puedo decir??? Felicidad, nostalgia, muchas cosas, pero, mejor escribo antes de que se me pasen jaja.


Que paso con los programas de control numérico??? Si ehh??? Les pase a muchos los programas (identidades no reveladas, x obvias razones), pero si me encantaría que me comentaran como les fue??? Si los tronaron por traer programas con código fuente "similar" o de plano, el maestro fue tan ingenuo que en ningún caso se dió cuenta. Bueno, espero que les haya sido de utilidad a quienes les pase los programas, dado a que al menos, en 6to, yo veia de más prioridad las materias de estadísticas, redes-conectividad, y sobre todo, ingeniería del conocimiento y diseño-desarrollo de software.

No me confundan.... a mi me choca regalar calificaciones con trabajos ya hechos a gente desconocida, pero esto fue en memoria de las clases desperdiciadas donde pudimos haber, al menos, manejado una de esas CNC :(

Mantenganme al tanto, ya saben, un mensaje al formulario de (ahora) la izquierda :P

A vivir
Como lo menciona en el último post de mi amigo Wata, igual a mí, el maestro Lopéz Estevez nos dejó ir a la obra "A vivir" del actor Odyn Dupeyron.


De que trata la obra??? No les conviene que se las dija. En serio... - ¿Cómo que no? - En mi opinión, no toda la gente estaría dispuesta a entender el mensaje de la obra (neta, hay gente que.... sencillamente, no merece ser libre, solo por el hecho de que no sabe ser libre).

Esta incógnita que les dejo es para tentarlos a ver la obra... Teatro Ofelia los Miércoles 8:45 p.m. y Domingos 6 p.m. 350 pesos. Oirán frases como...
  • La gente solamente muere cuando te olvidas de ella.
  • No se avergüensen por ser quienes son, no hagan nada por el miedo a no pertenecer.
  • Tu no eres una piedra, tu sientes y piensas, no como la piedra.
  • La mayores investigaciones han demostrado que las personas mas ricas que mueren, a final de cuentas... MUEREN.
  • Y mi favorita... El futuro será aquel momento en el que te arrepentirás de no haber hecho lo que debes hacer hoy.
Un gran éxito ingenieril n_n
Un artículo, el cual, a pesar de que no se oye tan tan complicado para los que ya saben, a veces uno diría "por qué no lo pense antes???".
Estudiantes de INGENIERÍA EN INFORMÁTICA Y DE TRANSPORTE DE LA UPIICSA proponen esto:

"La primera fase del proyecto pretende reducir demoras por medio de la instalación de sensores en los semáforos de las intersecciones viales en la Línea 2, que serían gobernados por un sistema informático capaz de alimentar una base de datos que ayudaría a la toma de decisiones operacionales en este sistema de transporte"

En serio... los envidio, hubiera pensado eso antes jaja. Felicidades a
  • Alma Laura Aranda Rojas
  • Christián Arroyo González
  • Alfredo Pérez Serrano
  • Blanca Estela Rodríguez Martínez
  • Carlos Omar Hernández Osorio
Más información en este artículo.

Oh mi metrobus... pasaras por las manos de locos upiicsianos

No somos tan diferentes e incluso hay quienes rifan
Ya saliendo de UPIICSA, aprendes que tanto la licneciatura y la ingeniería en informática no son tan diferentes. A veces, solo es cuestión de actitud. Por ejemplo, el licenciado burlón critica al ingeniero por que siempre se quedará en el lado táctico, mientras que el ingeniero burlón critica al licenciado por querer ser el mandón que no sabe como es que la computadora trabaja.

Pero que pasaría x ejemplo, si vemos a un ingeniero en informática con una certificación de PMP, o a un licenciado con una certificación CISCO????

Es más, aun me acuerdo de 2 licenciados que estuvieron en el curso de microcontroladores, cuando no se les son requeridos tener esa especialidad.

Ok... ejemplos tangibles.

Les presento a OsoSoftware... ¿QUEEEÉ?... asi es su apodo, estudiante de 6to de licenciatura en ciencias de la informática. Mientras que... x ejemplo, yo, no soy muy especializado en redes, y cuando entregé mi proyecto de redes y conectividad fue levantar una pobre página web en una mini red LAN de 4 lap tops, este sujetito, entrega por proyecto UNA AUDITORIA PARA VERIFICAR LA SEGURIDAD DE UNA RED INALÁMBRICA CON SEGURIDAD WEP.

Pueden verlo desde su blog. Espero que saque más artículos.

Neta.... les juro que en lo personal, lo ví, y me impresionó. Y es un modelo a seguir, no solo para licenciados, sino para ingenieros, para no conformarse en solo su rama.

Acelerómetros.
En la materia de instrumentación virtual se pidió el diseño de un instrumento virtual. A pesar de solo ser diseño, mi equipo y yo pensamos en el uso de acelerómetros para la medición de movimiento. No les puedo pasar mi proyecto, dado a que.... planeo extrapolarlo para otros fines (luego comentaré acerca de ellos). Pero para ello, me basé en las siguientes páginas
http://www.pyroelectro.com/tutorials/accel_intro/index.html (aquí viene TODO casi casi)
http://www.sparkfun.com/datasheets/Components/SMD/adxl335.pdf (la información del acelerómetro que utilicé)
http://wiring.org.co/learning/basics/accelerometer.html (como se conecta)

Es una cosa bien chiquita, y para medir movimiento... en realidad si dirias wooow (se usa actualmente en los celulares y sobre todo, en el control del Wii)

A la mejor, el código para el microcontrolador era lo complicado.... pero vamos, para un termometrito, se usa un convertidor analógico - digital, los cuales pueden estar en el mismo microcontrolador, con el acelerómetro se usan tres de esos convertidores (para manejar los 3 ejes del movimiento X, Y y Z).

Este último tema fué muy teto, pero se los quise compartir.

-----------------------------------------------------------------------------------------------
Una humilde fé de erratas (Actualización)

Respecto a mi post de "A veces siento que retrocedo", si llegué a poner una imagen de alguien que me insultaba en la página de upiicsalibre. Tuve mi sospechoso (por el nombre que utilizaron "ray"). Y si.... me prendí, es decir, creo q como cualquiera. Y SIIIIII, reclame que madurara.

Y así como reconozco lo que hice, tambien reconozco que SIIIIII, me equivoque, xq para colmo de males, ni siquiera se trataba de quien pense que era ¬_¬. Lo que muchos en el entorno jeek llamarian un "epic fatal fail".

Pero como bien debo hacerlo, y como creo q esa persona que dude de ella, supongo que merece una disculpa (SIIIII.... te pido una disculpa - notarán que pongo mucho eso de SIIII, es para enfatizar que en serio lo ando haciendo y no por jalada). Obviamente, en primera, debo quitar esa parte de mi post por que ni la debe ni la teme el chavo. Y pues, bueno, el error hecho está, ya lo cometí dos veces en este blog de andar echando guerrita cuando se supone que no debo de hacerlo, dado a que de cierta manera, este apestoso blog es un reflejo de mi ñoña personalidad.

Aunque... solo cabe destacar que después se me quiso reclamar acerca de un post del cual YA ME HABIA OLVIDADO (comment tipo "te llevas y no te aguantas"). En el que... si más no recuerdo, hasta reconocí mi falta de madurez. Bueno, obvio, sigo pensando que fue una inmadurez y que por supuesto como persona lo tengo presente para al menos no repetirlo mucho.

Al final me dicen que me odian muchos en la escuela... eso, ya es algo un poco.... mmm... como decirlo????... mejor ni le pienso y prefiero quedarme con lo que me dice mi estimado Alberto, la frase de Juan Rulfo... "si oyes ladrar los perros es señal de que ya vas llegando".

viernes, 28 de mayo de 2010

Post javero básico

Bueno.... lo hecho hecho está. Y tendré más oportunidades para exponer algo y no ponerme nervioso, lo que no mata, fortalece (según ¬_¬).

Continuaré con lo que se hacer mejor.... desarrollo de software.

Ya para egresar, he buscado trabajo, y en una de esas, busque para desarrollador Java (en la gran mayoria de los casos). En ese lugar (como no recibo lucro, no diré donde XD), me hicieron exámen de Java, teórico y práctico acerca de fundamentos de Java (osea, Java básico).

Lo común es decir "ah bueno, ya la libraste". Mmmm, no al 100% jajajaja. Es un poco increible, pero es como cuando uno aprende a usar un DVD. Sabes prenderlo, reproducir el video, atrasarlo, adelantarlo, cambiar el idioma. Y después de 2 años, alguien viene a tu casa y usa tu DVD, y te pregunta "puedes saltarte capítulos del DVD???", "puedes activar subtítulos???". Cosas que NUNCA necesitaste, pero son básicas y si llegan a preguntartelas. Así, me pasó exactamente.

1) Compilar y correr un programa sin usar el Netbeans (modo consola).
En serio, el netbeans te malacostumbra. Con un botón hace todo. Pero, si te lo preguntan, te quedas con cara de ---> o_O

Tenemos un archivo Java llamado "programita.java".
  1. Para compilarlo, abrimos el símbolo de sistema (CMD)
  2. Nos vamos al directorio donde está ese archivo (cd c:/carpeta_de_ubicacion_del_programa)
  3. Ejecutamos "javac programita.java"
  4. Veran que en la carpeta saldrá un archivo llamado "programita.class"
Oyeeee!!!! Me dice que ese comando no lo reconoce el símbolo de sistema, osea, me sale "'javac' is not recognized as an internal or external command,operable program or batch file.". Vean este archivo y ahí dirá como configurarlo.

2) Correr una clase sin requerir Netbeans
Les dijo.... uno se desacostumbra.
Obvio primero hay que tener el archivo compilado. Y en símbolo de sistema se escribe "java programita"

3) Para que jijos sirve el "String args[]" en el void main????
Siempre nos dicen "para correr sus programas, usen la función main con el argumento String args[]". Uno hace caso, pero no se sabe para que sirve ese mentado argumento.

Supongamos que el contenido del programita.java es el siguiente:
public class programita{
public static void main(String[] args) {
System.out.println("ES: " +args[3] );
}
}


Verán que estamos usando el argumento args que tanto nos dicen en el main.
Entonces.... como usaremos ese argumento si en realidad en el programa no lo estamos declarando ni inicializando????

Bueno, corriendo por consola ese programa de esta manera:
java programita hola a todos mis amigos

Saldrá por resultado en pantalla:
ES: mis

El args[] es un arreglo de cadenas (obvio ¬_¬). En este caso, el arreglo contendrá las palabras "hola", "a", "todos", "mis", "amigos". Como todo arreglo, la enumeración empieza desde cero, siendo "hola" la que está en la ubicación 0, "a" en la ubicación 1, y así sucesivamente. En el "System.out.println("ES: "+args[3]);" piden a la palabra en la ubicación 3, la cuál sería "mis". Obviamente, si el arreglo no tiene ocupada la tercera posición, el programa lanzará un error por excepción.

4) ¿Qué es Generics?
Un generic es un identificador que se usa en estructuras que requieran definir el tipo de dato a manejar. En cristiano...

En el caso de los ArrayList, si queremos uno que maneje enteros, lo declararíamos así:
ArrayList arrayint = new ArrayList ();

Y si queremos un ArrayList que maneje cadenas:
ArrayList arraystring = new ArrayList ();

Los tipos de datos que ponemos entre el "<" y el ">", son los Generics (años usando los ArrayList y no sabia que nombre tenian esas monerias ¬_¬).

5) Colecciones del java.util
Si bien, java.util es la librería que maneja muchas clases poderosas para cualquier aplicación (J2SE), las listas dinámicas que manejan son muy útiles (qué es una lista dinámica??? es una lista sin límite definido, que es una lista??? reprobaste estructura de datos??? ¬_¬)

Las listas que manejan son:
  • Collection: La básica, que ofrece funciones que estructuralmente son más poderosas y rápidas que los arreglos convencionales. En si, es la superclase de las siguientes:
  • List y ArrayList: Son Collection donde ingresas datos en ubicaciones definidas (puedes meter valores en la posición que deseés). Cuál es la diferencia de ambas??? La desconozco, yo en lo personal, uso más los ArrayList, porque??? por costumbre.
  • Set: Una Collection que no admite valores duplicados.
  • Map: Más que un Collection, es una matriz (arreglo de dos dimensiones) donde tiene dos columnas, una para conceptos y otra para descripciones (un tipo diccionario, de hecho así lo manejan).
  • Más información aquí.
Cosas fáciles no???? Aun así, se olvidan o se usan pero no saben como se llaman, y es útil saberlo, por si acaso jaja