Archivos de Tags: Informática

Me alegro de no haber ido el año pasado a mi acto de graduación

Tras haber acudido ayer al acto de graduación de las 3 titulaciones de ingeniería informática y a la de telecomunicaciones, puedo decir abiertamente que me alegro mucho de no haber asistido a la celebración del año pasado. Salvo la intervención de los padrinos de promoción y de los estudiantes que dieron discursos representando a sus respectivas promociones el acto no pudo ser más partidista y aburrido. A veces a los altos cargos institucionales se les debería poner detrás un hombre que les diese collejas cuando se excediesen. Ayer era el día de esos alumnos que se estaban graduando y de sus familias, no el de estos altos cargos para que soltásen arengas.

Menos mal que el señor director de la escuela pretendía ser escueto en su discurso. Poco más y sólamente dan las 5 de la tarde en un acto que comenzó a las 11 de la mañana. En verdad la duda que tengo desde hace unos años cuando era estudiante en la que empezó siendo ETSII y pasó a ser ETSIIT, es ¿Por qué tuvimos que desarrollar los estudios en ese lugar? Una escuela que nunca ha mostrado aprecio por la titulación de Ing. de Telecomunicación y que no ha parado de ningunearnos y de hacernos la vida lo más difícil que podían. Sin respaldo por parte de los organismos directores de la escuela (que han ninguneado y dejado sin poder de decisión a los organismos encargados de dirigir la titulación) a favor de unos intereses mercantilistas y como ya no estoy relacionado con esos señores, no me muerdo la lengua al decirlo, y abiertamente lo que han estado haciendo es un comportamiento mafioso en el que han bloqueado que cursos de interés en la titulación hayan sido reconocidos a favor de otros que los directores de la escuela si que tenían beneficio económico personal.

Eso sin contar con los numeros agravios que ciertos estudiantes de informática han inflingido a estudiantes de telecomunicaciones. En especial este último año con ese famoso correo del colegio de ingenierios informáticos de Andalucía (que no sé yo bien, que tipo de poder tendrán puesto que la profesión que representan no está reglada). He llegado a oir de la boca de estudiantes de informática que los estudiantes de teleco no teníamos ningún derecho de estar ahí. Que eso era su escuela (supongo que por derecho divino) y que lo único que hacíamos era estorbar y quitarles espacio. Supongo que no hace falta que diga, que esa no es su escuela. La ETSIIT pertenece a la Universidad de Granada y esta por presiones o no se sabe bien que cuestiones ha decidido que los estudios de Ing. de Telecomunicación también se efectúen allí. A pesar de que como se ha dicho no hay espacio material en dicha escuela para más. No sólo eso, sino los directores de la escuela ante propuestas de ayuda para la mejora lectiva de las clases por parte de miembros de la facultad de ciencias, han rechazado fervientemente el uso de los laboratorios de esta misma facultad. Más amplios y acondicionados a la perfección para las prácticas de Campos Electromagnéticos, Antenas y Propagación, Transmisión por Soporte Físico, etc. No obstante me estoy alargando, por mi que se queden con su escuela y con su edificio en el quinto pino de la ciudad. Donde no hay acondicionamiento deportivo ni una triste área de recreo y esparcimiento, amén de los famosos robaportátiles. Teleco se merece estar en mejor lugar, Teleco se merece estar en Ciencias o tener su propio edificio. Como eso es difícil que ocurra, mi solución es hacer lo mismo que se realiza en la Universidad de Málaga, usar el mismo edificio pero con dos escuelas dentro del mismo: la de Telecomunicaciones y la de Informáticos. De esa manera habría menos disputas y podría funcionar bastante mejor sin que hubiera injerencias por parte de ninguno de los grupos.

Aparte de eso enhorabuena a los que celebrastéis la graduación ayer, aunque en verdad aun no estéis graduados ni nada. Pero con fortuna pronto lo estaréis.

LaTeX

Estoy empezando a usar LaTeX para crear documentos. Sí, ya sé un poco tarde pero el caso es que me está resultando más sencillo de lo que creía. En especial cuando voy a escribir ecuaciones matemáticas. De hecho, si usas Open Office, el editor de ecuaciones de Open Office tiene una síntaxis muy similar a la de LaTeX.

¿Qué es lo que hace especial a LaTeX?, si vas a crear un texto corto en el que no tengas que lidiar con demasiadas cosas, usar LaTeX quizás sea un poco exagerado. Sin embargo, si vas a crear documentos extensos con muchos capítulos, notas a pie de página, ecuaciones, figuras, referencias, bibliografía, etc. Puede que usar Word te parezca un suicidio, ya que el manejo de todas estas funciones en Word es horrible, poco intuitivo y a veces imposible.

LaTeX hace todo esto sencillo con una sintáxis que te puede parecer algo complicada al principio pero que luego acabarás agradeciendo. En cambio, usar LaTeX para un diseño muy concreto puede ser a veces un auténtico quebradero de cabeza.

¿Qué he hecho para empezar con LaTeX? Leerme un libro que encontré perdido y usar un libro online dependiente de la Wikipedia.

Para editar LaTeX en Linux uso Kile, en MacOS uso Eclipse (porque no he encontrado nada mejor) y en Windows estoy entre el WinEDT y TeXnicCenter. De todos ellos el que más me gusta es el de Linux.

Microsoft & Yahoo!

“Nah, it’s like the dead guiding the blind”

Que traducido viene ser algo como:

“Nah, es como un muerto guiando a un ciego”

Bonita noticia, a mi me hace gracia. Podría ser una competencia interesante para Google, pero no creo que lograran vencerla. Cada vez toma más forma el plan de dominación global de Ferguson, aunque la verdad es algo que todo el mundo se huele poco a poco. Hay un par de herramientas de Yahoo! que uso con asiduidad y que creo que son mejores que las herramientas que ponee Google para lo mismo, la primera es flickr (para las fotos) y la segunda es del.icio.us, (para guardar enlaces) no creo que si todo Yahoo! pasara a ser de Microsoft fuese algo malo. De hecho creo que puede ser una buena compra por parte de la compañía de tito Bill, pero al final me temo que Google acabará ganando y eso señoras y señores no es precisamente bueno porque los monopolios no son buenos en ningún lado.

Microsoft tendrá datos esenciales de los ciudadanos chilenos por culpa de su gobierno.

Como sé que hay mucha gente de Chile que me lee y tengo entendido que esta noticia no está muy difundida entre los chilenos pongo aquí una serie de enlaces y textos sobre esta aterradora noticia.

Detalles en:

Visto en Kriptópolis:

El Gobierno de Chile ha acordado un pacto de “colaboración” con Microsoft sin mediar licitación ni debate (ni público, ni en el poder legislativo) para impulsar el uso de sistemas propietarios (específicamente Microsoftianos) en todas los organismos públicos, municipalidades, escuelas públicas (con licencias financiadas por ellas mismas), etc.

Además se le entregará a Microsoft (parte de) la base de datos de nuestro Registro Civil e Identificación (donde están todos los datos personales de cada ciudadano, incluyendo nuestro RUT, que es el análogo al Número de Seguridad Social de EEUU o al que tienen uds. en España) para que seamos beneficiarios de un tremendo beneficio: que cada ciudadano chileno (16 millones a la fecha) tenga gratuitamente su espacio en MSN Live…

Nota del editor: Han sido varios los lectores chilenos que han coincido en pedir la difusión de esta noticia, conscientes de que la mayoría de los chilenos ni siquiera se han enterado. Afortunadamente, Chile es el quinto país en el ranking de procedencia de nuestros lectores, sólo por detrás de España, México, Argentina y Perú (por este orden). Por tanto espero que podamos contribuir a difundir esta lamentable cacicada.

Se pasó por encima de iniciativas legales y acuerdos con otros países para promover el uso de tecnologías y estándares libres, sobre todo en PYMEs y en los organismos estatales.

El tema ya está haciendo noticia acá y hay varios blogeros moviendo opinión al respecto.

No me gusta la actitud de Microsoft estos días (bueno en general casi nunca me gusta la actitud de Microsoft en cuanto a este tipo de temas) pero entre esto y su insistencia en hacer estandar OOXML usando métodos poco éticos

Yo creo que francamente se están dando cuenta que estaban perdiendo la guerra contra Google en el ámbito web (aparte del Messenger porque la gente ya lo usaba, ¿conoceis a alguien que use Live MSN?) y contra el software libre en cuanto sistemas operativos (por la cagada que ha sido Windows Vista a ojos de la industria) y en aplicaciones de usuario. Como ven que su fracaso va a ser a largo-medio plazo están como locos por tener atados a gobiernos, organismos de estandarización y ciudadanos. Pero con medidas así si sigue existiendo libertad en estos ámbitos les va a salir el tiro por la culata.

Ya sé que hay mucha gente a la que no le gusta Google, pero yo los veo francamente como la alternativa a Microsoft. Cada vez se ve más claro que habrá un cambio radical en el concepto de la informática de usuario, con el desarrollo de aplicaciones web (AJAX, SOAP, XMLRPC, …), no sería tan raro que en un futuro tuvieramos integradas todas las funciones que hoy tenemos en el ordenador dentro del navegador. Usando por ejemplo herramientas como Google Docs para edición de textos y tareas ofimáticas.

Atajos del teclado en Windows

He encontrado gracias a Microsiervos una página con los 200 atajos de teclado más productivos. De entre todos encuentro muy útiles los de Windows algunos de ellos los desconocía. Este año tuve una conversación en la cafetería para ver cuantos atajos chulos del sistema conocíamos y resulta que fueron saliendo paulatinamente atajos que alguien de la conversación no conocía. Esto me hace pensar, ¿por qué Microsoft no puede poner claramente los atajos como hace Apple?

Una de las cosas que más me gustaron cuando me compré el Mac fue que existía la tecla Comando con la cual se podían llevar a cabo la mayoría de los atajos en combinación con otras teclas y las combinaciones en lugar de no aparecer o hacerlo en un lugar recóndito estaban claramente indicadadas en los menús si querías consultarlas. Ya sé que en Windows la letra que está subrayada significa que si pulsas Ctrl + esa letra aparece el menú pero insisto en que hay otras ocasiones como las de estos atajos en los que esto no se ve muy claramente o es casi imposible de suponer.

Bueno y sin más para subir mi PageRank (:D) dejo aquí la lista de los atajos más útiles de windows:

1 Switches between minimizing all open programs and showing them all. Win + D
2 Opens the Run Window Win + R
3 Open System Properties Win + Break/Pause
4 Copy the selected item CTRL while dragging an item
5 Select / highlight a block of text CTRL+SHIFT with arrow key
6 Browse through windows in the order that they had been opened Alt + Esc
7 Copy the file CTRL + C
8 Paste the file CTRL + V
9 Cut the file CTRL + X
10 Undo CTRL + Z
11 Reverse last Undo action if possible CTRL + Y
12 Open Utility Manager Win + U
13 Open Windows Exporer Win + E
14 Open Context Menu Shift + F10
15 Navigate tabs on a tabbed screen Ctrl + Tab

P.D. La había traducido pero como desgraciadamente me suele ser común en WordPress por alguna razón se ha comido la mitad de la lista y no me ha sido posible recuperarla y paso de hacerlo de nuevo. (Aquí el Reverse no funciona)

Contraseñas

Casi todo el mundo a la hora de trabajar con servicios privados debe emplear contraseñas. Normalmente la gente usa nombres clave para ellos mismos (nombre de la madre, del padre, del novio …) o cifras significativas (fecha de nacimiento, día de la boda para de paso no olvidarse del aniversario). El problema de esto es que cualquiera con un poco de intuición puede llegar a averigüar esa contraseña con unos cuantos intentos. Se nos recomienda que a la hora de usar contraseñas, usemos una distinta para cada cosa, que esta tenga caractares no alfanuméricos (como # $ % & @ o €) así como letras en mayúsculas y minúsculas. Esto dificulta un ataque por fuerza bruta o por diccionario. Pero evidentemente tiene un problema y es que si en cada servicio usamos una contraseña de este tipo podemos tener la cabeza como un bombo porque a lo sumo podremos acordarnos con facilidad de 3 o 4 contraseñas de este tipo. Para esto se pueden usar llaveros o carteras de llaves. Que son una colección de todas las contraseñas así como del servicio en el que se usan a las que se puede acceder de forma sencilla para emplearlas cuando sea necesario.

He visto en Kriptópolis unos enlaces en los que se enseña un método para crear contraseñas más seguras de lo habitual de manera sencilla. La idea consiste en usar caracteres aleatorios y luego según su valor darle un significado en una frase que signifique algo para el que crea la llave. Así por ejemplo podemos crear una frase pegadiza y acordarnos de ella y luego a partir de ella sacar la contraseña. Por ejemplo:

El perro de San Roque no tiene rabo porque Ramon Rodrigo se lo ha cortado

Puede convertirse en:

E(8)dSR!=pqRRslhX

Que es una contraseña algo más fuerte.

Dejo los enlaces porque creo que es necesario mejorar en estos temas de seguridad entre la población. Soy un gran fanático de la seguridad y todo lo referente a ella y creo que este es uno de los fallos más elementales que se cometen.

Mitos que te cuentan cuando estudias

Hoy he encontrado un artículo muy interesante sobre microkernels y los mitos relacionados con ellos. En una de las asignaturas de la carrera se trataban los temas relacionados con los distintos tipos de núcleos del sistema operativo. El profesor era aférrimo seguidor de los microkernels, sin embargo a pesar de todo el empeño que quiso poner en ellos y aunque tienen sus ventajas teóricas y un posible futuro interesante no les acababa de ver yo la gracia, entre otras cosas porque si de verdad fuesen la panacea estarían por todos lados y el caso es que no están.

Algunas cosas que se muestran en el artículo son las siguientes:

Ayer cuando nos pasamos con Benjamí por Ona Mallorca una persona que trabaja allí me hace la siguiente pregunta:

¿Es verdad que la informática va a pedales entre otras cosas culpa de Linux porque no es microkernel? Eso es lo que me ha dicho una persona que sabe del tema.

Me dejó sorprendido, aunque pensándolo bien no es la primera vez que oigo eso. Y todo parece ser como parte de una estrategia –bastante habitual en la blogocosa– de coger de “oídas” algo que es difícil de comprender y usarlo como argumento para impresionar, parecer “experto” o incluso un friki :-)

el argumento de que si se usase micro kernel en el Linux parece venir derivado del viejo debate Linux es obsoleto de Tanenbaum y Linus Torvalds. También parece estar basado en la creencia popular que Windos NT (y derivados: 2000, XP y Vista) tiene una arquitectura micro kernel –no la tiene en absoluto– o que el Darwin del Mac OS X es un micro kernel puro –no lo es, es híbrido–.

La idea de micro kernel tuvo mucho impulso y fue un hot topic académico en los 80 y principios de los 90. Se podría decir que está englobado dentro de un área más genérica denominada self healing computing, un área de investigación que pretende lograr sistemas totalmente autónomos y que sean capaces de recuperarse automáticamente de los errores de software y hardware.

La idea de un micro kernel no está mal desde el punto de vista de “divide y vencerás” para solucionar los problemas crecientes por el aumento de la complejidad del software de sistemas operativos. Así la idea es reducir al “código crítico” al mínimo posible: un micronúcleo que se encargase de esas tareas críticas como gestión básica de memoria y procesador y gestión de envío de mensajes entre los diferentes módulos –incluso drivers– que se implementarían como procesos de usuarios normales (se llaman “servidores”).

Las principales ventajas que argumentan los promotores de micro núcleos son:

* Reduce la complejidad de los módulos.
* El fallo de un servidor no ocasionaría un problema crítico en el sistema ya que no tiene acceso al hardware y el propio micro núcleo –u otros servidores– serían capaces de re arrancarlo.
* Se facilita la programación y debugging de drivers y otros módulos ya que son procesos normales de usuario.

Desde la comunidad académica siempre se ha afirmado que este tipo de arquitectura tendría sus problemas y que estos no se conocerían en detalle hasta que se desarrollen los primeros sistemas complejos basados en ella.

Los problemas fundamentales de los micro núcleos son:

*El fundamental: problemas de sincronización. En los sistemas monolíticos el núcleo comparte y mapea por igual toda la memoria, lo que facilita enormemente la implementación de técnicas de secciones críticas y sincronización. En un sistema de micro núcleo esto no es posible, por lo que se necesitan técnicas más complejas, sofisticadas y sujetas a errores conceptuales, de complejidad y de implementación.
*Problemas de rendimiento ya que todo acceso al hardware debe hacer fundamentalmente a través de mensajes, lo que significa copia de memoria y la anulación de las ventajas del zero copy que traen todos los sistemas operativos modernos.
*Restricciones del hardware. Los procesadores y arquitecturas modernas de hardware están optimizadas para sistemas de núcleo que pueden mapear toda la memoria. Un ejemplo claro es el TLB (table lookaside buffer).
*Los drivers y el hardware. El 80% de los sistemas operativos son los drivers, y estos suelen ser los módulos de peor calidad. Además el hardware también tienen bugs que ni siquiera pueden ser detectados o corregidos por el software (¿quién no ha tenido que descargar y volver a cargar un módulo de WiFi para que vuelva a funcionar?).
*Integración con las aplicaciones. ¿De qué sirve que el fallo del módulo del sistema de ficheros pueda ser corregido si todas las aplicaciones “mueren” o no son capaces de detectar el fallo y volver a un punto “conocido” –rollback– una vez el sistema corrigió el error?

Todo lo anterior hizo que los sistemas de micro núcleo no pudiesen implementarse en sistemas de uso general y de PCs –son los más complejos–. Existen sistemas de micro núcleo de éxito, como el QNX, pero este es un sistema de tiempo real empotrado que no fue diseñado y desarrollado para un ordenador de escritorio o un servidor web o de base de datos.

El Darwin tampoco es un sistema de micro núcleo puro, es híbrido. Por ejemplo todos los módulos que acceden al hardware –como los drivers– son parte del “micro núcleo” (que no es ya tan “micro”) y mapean toda la memoria. Esto incrementa la posibilidad de que produzcan “fallos genéricos irrecuperables” como en los monolíticos, pero al mismo tiempo facilita el desarrollo de los drivers al disminuir los problemas de sincronización y aumenta la eficiencia notablemente.

Por otro lado Linux –y los Unix– tradicionales nacieron como “núcleos monolíticos”, pero cada vez lo son menos, en primer lugar por la modularización y la carga y descarga dinámica de módulos y últimamente por mover gran parte de las tareas a procesos de usuarios. Por ejemplo el sistema de hotplug y creación dinámica de dispositivos –el udev– e incluso mover muchos drivers a la zona de usuario –user space drivers–.

¿Windows? Bueno, nunca fue micro núcleo, aunque en un principio tenía algo llamado HAL –hardware abstraction layer– que podía interpretarse como una tendencia a una arquitectura micro núcleo, orientada especialmente para ser multiplataforma…. ¿pero alguien se acuerda cuando NT dejó de ser multiplataforma? o mejor dicho ¿alguien se acuerda que alguna vez lo fue? :-)

Afirmar que el no usar microkernels ha frenado el avance de la informática hogareña es como mínimo tan arriesgado como:

La domótica estaría mucho más extendida si se usase 12 V como en los coches en vez de los 220 V de ahora.

Así que cuando os vuelvan a decir frases tan contundentes trufadas con términos técnicos que casi nadie conoce en profundidad –como “va a pedales porque no es micro kernel” o “el telnet es más seguro que el ssh”– ponedlas en duda. Hasta que no estéis seguro que tiene un mínimo de racionalidad no las vayáis repitiendo por allí ante desconocidos.

Podría pasar que cuele, pero también que algún día te encuentres con desconocidos que sepan del tema y os sorprenda con un rotundo:

Vaya gilipolleces que dices.

y luego no podáis escuchar las explicaciones por el ruido de las risas. Para evitar estas situaciones embarazosas es mejor ponerlo en un blog y a ver si alguien te lo explica.

Piratas de Silicon Valley

Siento no contestar a comments últimamente pero lo cierto es que estoy bastnate ocupado. No obstante me han comentado algunas personas que la película pirátas de Silicon Valley estaba gustando, así que voy a ponerla de nuevo.

[googlevideo=http://video.google.com/videoplay?docid=-7039094381603369679&q=piratas+de+silicon+valley&total=17&start=0&num=10&so=0&type=search&plindex=1]

Me encanta Python

Según los informáticos los telecos no tenemos ni puta idea de programar. Puede que sea cierto, no lo niego. Aunque me da un poco la risa según de que persona lo oigo … Con esto no me quiero meter con nadie, la labor de los informáticos es muy necesaria pero siempre hay alguno que se va de madre en sus declaraciones y que podría pensar antes lo que dice o escribe por los foros y blogs.

Bueno volviendo al tema, he tenido que tocar algunos lenguajes de scripting en la asignatura arquitectura de altas prestaciones como son Ruby y Perl (promovido por el perlmaniaco local) pero en algún ejercicio piden usar un lenguaje adicional y recordé cosa sque había leido sobre Python y decidí ponerme manos a la obra con él y es sencillamente fantástico. Adoro ese lenguaje, hacer algo como coger un rss y sacarle el contenido y hacer perrerias con él se hace en unas pocas líneas de código usando unas librerías adecuadas (como Amara). He puesto el código de este programa chorra Python en mi página personal. Pero aun así sigo flipando con Python.

Alguna recomendación de alguien que sepa más que yo sobre estos asuntos.