En Enero pasado, publiqué un post en el que opinaba sobre una nota del periódico Reforma que a su vez hablaba de que 60% de las PyME en México usan Software Pirata en su momento opiné sobre las implicaciones de la piratería pero creo que ahora es tiempo para retomar el tema.
La piratería en el software tal y como la conocemos hoy, no se conocía sino hasta bien entrada la década de los 80 cuando un grupo de empresas y empresarios (entre los que figuraban Bill Gates y compañía) deciden presionar a desarrolladores, estudiantes, hackers y programadores para privatizar el software, en ese momento lo lograron y parte de esto se traduce en las licencias que actualmente existen para el software privativo o cerrado (como le quieran poner), digo que en ese momento se crea el concepto de piratería porque hasta antes del surgimiento de estas licencias, los desarrolladores, hackers, programadores o como les quieran llamar, distribuían, copiaban y modificaban el software más o menos libremente.
Sobre el tema, me gusta mucho la frase de Richard Stallman en la cual en un vídeo para el FLISOL 2009 dice más o menos algo como “yo creo que la piratería es algo muy malo, eso de robar barcos no es nada bueno”, cuando Stallman habla de piratería lo hace con cierto tono de ironía, pues para él, la piratería como concepto aplicable al software no existe, sin embargo, dejando un poco de lado a Stallman, por piratería entendemos el concepto de distribución, copia y modificación ilegal del software.
El surgimiento de la piratería como concepto aplicado al software es un hecho muy serio pues coarta la idea general de compartir, lo que nos dicen implícitamente las empresas desarrolladoras de software privativo es “compartir es malo, compartir es un delito, no lo hagas” desgraciadamente hoy en día, la visión de que copiar, distribuir o modificar software está asociada más como un delito que como un acto de compartir.
Ahora bien, la pregunta es ¿qué implicaciones tiene la piratería en el mundo del software?, desde mi óptica Microsoft y demás compañías no han aplicado políticas fuertes en contra de la piratería porque saben que un gran volumen de gente usa software pirata y aplicar sus licencias (es decir bloquear computadoras, inutilizar programas etc.) saldría más costoso que todo lo que pudieran recuperar por concepto de daños y perjuicios, lo que quiero decir es que Microsoft con la mano en la cintura hoy podría decir, “no voy a tolerar más copias pirata, hoy comienzo a bloquear computadoras” y créanme, lo podrían hacer si no, cómo o porqué creen que sale el loguito de la estrellita de Microsoft que dice que “se ha detectado que este programa no ha pasado las pruebas de originalidad del software bla bla bla”, porque tienen identificado perfectamente quienes y qué empresas tienen software pirata, porqué, porque se meten a sus computadoras y recopilan información sobre nosotros.
Me gustaría pensar que sólo obtienen información respecto a su sistema pero al ser software cerrado (es decir al no tener acceso al código fuente y por ende no saber el funcionamiento del programa) no podemos saber qué información toma y cuál no, es cierto salen ventanitas advirtiendo que nunca sacan información personal, pero ¡por favor! ¿Tú les crees?, pues yo tampoco.
Este es el mismo mecanismo que tienen las redes sociales (por más que me gusten) como Facebook y otras parecidas, las cuáles recopilan nuestra información y la venden a empresas de marketing para que nos puedan ofrecer productos todo el tiempo.
Pero bueno, me desvié un poco del tema, volviendo a la piratería, Microsoft sabe quien tiene software pirata y en algunos casos toma acciones legales, como en el caso del Hotel Panamericano o intimidan a través de cartas, como en Argentina, pero además de esto hay que reconocer que el software pirata es una amenaza por las siguientes razones que enumeran muy bien en Software Legal Uruguay:
Cómo vemos el utilizar software pirata no es tan buena opción después de todo, sin embargo entiendo las principales razones por las que se usa y justamente de ello he hablado en numerosas ocasiones en distintos ámbitos que van desde el hogar, pasando por las PyMEs y la Educación Pública hasta la Administración Pública. Porque en todos ellos hay mucho software pirata, me consta. Por ello yo digo “No a la piratería… Usa Software Libre”.
Sin embargo vuelvo al punto en el que Microsoft podría en un momento dado,
inutilizar todas esas computadoras (si de por sí lo hacen con los apagones de cada 2 horas para los que adquirieron la versión de prueba de 90 días de Windows 7) así que cuál es la opción, bueno hay dos opciones, la primera “legalizarte”, es decir adquiere tus licencias originales (con las consecuencias $$$$ que implica esto) y olvídate del problema o; usa software libre el cual en sus licencias permite el estudio, copia, distribución y modificación del software, además de que da la ventaja de que estarás usando software de calidad, más seguro, sin virus, sin archivos infectados, con soporte técnico, sin certificados de autenticidad, totalmente funcional (no tienes que instalarle una suite ofimática por ejemplo), y lo más importante de todo con la libertad que implica que no existe la piratería y que no estás violando los derechos de nadie porque tú eres dueño de un SO o de un programa y no pagas por el permiso a usarlo (las licencias son eso, permisos para usar el SO de Microsoft, DE MICROSOFT NO TUYO), con la seguridad y libertad de que si lo compartes tampoco violas ningún derecho ni violas ninguna ley, haciendo de tu comunidad un lugar mejor pues lo que haces es simplemente compartir conocimiento.
Esto último es la belleza y la importancia del software libre: la de la capacidad de compartir conocimiento pues al fin y al cabo el software es conocimiento. Es como un libro, cuando tú lo compras, eres dueño del libro y puedes hacer con él lo que quieras, (subrayarlo, leerlo, releerlo, arrancarle hojas, rayonearlo, etc.) pero también se lo puedes pasar a un amigo para que él también lo lea, ¿por qué no hacer lo mismo con el software? (bueno si se puede con el software libre), el libro no es más que una serie de letras acomodadas de tal manera que crean palabras, estás a su vez, agrupadas de cierta forma, hacen oraciones y por último estas oraciones se acomodan creando párrafos, cuartillas, capítulos, etc. De igual forma un programa o un SO no son más que unos y ceros acomodados en un orden establecido para desplegar órdenes e impulsos eléctricos que hacen que en nuestra pantalla veamos lo que vemos.
Es muy fácil entender cómo el software no sólo debe ser libre sino que tenemos que entenderlo como una herramienta capaz no sólo de ser conocimiento sino de crearlo.
Mientras sigamos pensando que el software privativo deba ser “el estándar” no estamos sino destinados a seguir las órdenes de empresas como Microsoft, Adobe, Apple, etc. que muchas veces (como buenas empresas que son, eso no lo niego) velan por sus intereses y no por los de la comunidad, creo que en esta explicación se puede dejar entrever nuevamente, cuál es la importancia de la implementación del software libre en sectores tan importantes como la Educación Pública o la Administración Pública, pero bueno ya estuvo bien de mis reflexiones, me gustaría saber cuál es su opinión al respecto.
Saludos.
Fue una tarde de lunes de café con los amigos, en el que todos hablamos de temas tan distintos, pero a la vez con un fin, lo que si me encanto de esa tarde es que todos eran pensamientos diferentes a los mios, tal vez porque sus áreas de estudio eran Administración y otros de Publicidad. La conversación llego a tal punto de comentar libros y congresos, así hasta escuchar una anécdota sobre una experiencia de como conseguir un autógrafo de un artista de su admiración.
Durante dicha plática se menciono la “La Ley de Atracción” del cual esta ley se demuestra en el libro titulado “El Secreto“, lo que por lo tanto voy a tener que leer, bueno dicha ley hace que todo lo veas en una manera positiva pero que vuelvas tus deseos en algo material, según lo que entendí que si deseas algo hay que materializarlo y todo será como un mundo perfecto para ti. Otro libro mencionado fue “El Psicoanalista” que trata sobre una persona psicoanalista que lo amenazan de muerte, le dan dos opciones: suicidarse o matar cruelmente a uno de sus seres queridos, la historia llega a tal punto de que la persona si puede caer al suicidio ya que todo a su alrededor se vuelve en su contra, pero el comienza a realizar todo lo contrario a lo que cualquier persona haría en su situación, y hace una novela bastante entretenida tanto que hay un final inesperado, esto hace que también sea de lectura forzosa para mi.
Después de un par de horas, y unos cioccolatos sabrosísimos, llegamos a mencionar un congreso llamado “La Ciudad de las Ideas” en el que un pequeño resumen de lo que era, se llego a mencionar un largometraje titulado “Planilandia“(este es el punto al que quería llegar), esta película apenas la vi y es bastantemente recomendable, es basado en una novela con el mismo nombre pero la película te resume en una hora y media muy bien la esencia. Planilandia es mundo de 2 dimensiones, el cual su población esta compuesto por cuadrados, triángulos y círculos y unos cuantos polígonos; estos tienen historia, política, leyes, escuela, y todo lo que una sociedad contiene. En este mundo solo estaban encerrados en lo que ellos creían, pero hasta que el protagonista de esta película, un cuadrado llamado “A”, descubre que existe otra dimensión más que el suyo, y es la tercera dimensión en el que su mundo ya esta compuesto por esferas y cubos. Te pongo su sinopsis por Wikipedia:
Hex es una joven hexágono que vive en un mundo bidimensional habitado por varios personajes geométricos. Vive con sus abuelos, Arthur y Arlene, porque su madre y su padre fueron ejecutados por creer en una tercera dimensión. La elite de los círculos les condenó por herejía.
Los círculos (que representan una poderosa elite, en realidad son una parodia de los científicos y políticos), conocen la tercera dimensión, pero deciden mantenerlo en secreto para que los habitantes de Planilandia no les resten autoridad.
Un cubo, colocado en un lugar visible para los habitantes de Planilandia, es escondido en un lugar conocido como Area 33h (una alegoría al Área 51, donde el Gobierno de los Estados Unidos escondía supuestamente las pruebas de extraterrestres), y Hex encuentra dicho lugar.
Spherius, un ser esférico de la tercera dimensión (alegoría de un extraterrestre), “contacta” con el abuelo de Hex mientras duerme. Entonces este decide ir a rescatar a su nieta enfrentándose a la elite de los círculos. Finalmente Spherius se muestra a los planilandenses, incluyendo a la elite.
El pueblo de Planilandia es liberado de la opresión de la clase poderosa de los círculos y empieza una nueva era.
Bastante recomendadisima la película aquí te pongo su trailer:
Bueno, hasta el próximo post.

Fecha: miércoles 17 de marzo 2010 Hora: 9 am
Lugar: Salón Gomory, Universidad Anáhuac Mayab – Mérida, Yucatán
Entrada libre, cupo limitado, puedes regístrate aquí.
But forgot to put the video on what verily probably had inspired to make the "Instrucciones para cumplir 30" that I posted long ago today reading planetalinux found that MarcoAlfonso posted "Wear Sunscreen", that Dette pointed when I post about "Efectos secundarios" that would be the only and original (even when I like a lot the new one), so I post here the two of them together and why I'm writing on english it's a very good question, I don't even know... it just happen.
Instrucciones para cumplir 30 on youtube
<object height="385" width="480"><param name="movie" value="http://www.youtube.com/v/ZjENpj9_x_g&hl=en_US&fs=1&rel=0"><param name="allowFullScreen" value="true"><param name="allowscriptaccess" value="always"><embed allowfullscreen="true" allowscriptaccess="always" height="385" src="http://www.youtube.com/v/ZjENpj9_x_g&hl=en_US&fs=1&rel=0" type="application/x-shockwave-flash" width="480"></embed></object>
And of course the one and only wear sunscreen
<object height="385" width="480"><param name="movie" value="http://www.youtube.com/v/OzFCkRG--NQ&hl=en_US&fs=1&rel=0"><param name="allowFullScreen" value="true"><param name="allowscriptaccess" value="always"><embed allowfullscreen="true" allowscriptaccess="always" height="385" src="http://www.youtube.com/v/OzFCkRG--NQ&hl=en_US&fs=1&rel=0" type="application/x-shockwave-flash" width="480"></embed></object>
Aqui les dejo el nuevo capitulo de esta serie.
Capitulo 4:
<object height="300" width="400"><param name="allowfullscreen" value="true"><param name="allowscriptaccess" value="always"><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10018333&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=00ADEF&fullscreen=1"><embed allowfullscreen="true" allowscriptaccess="always" height="300" src="http://vimeo.com/moogaloop.swf?clip_id=10018333&server=vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=00ADEF&fullscreen=1" type="application/x-shockwave-flash" width="400"></embed></object>
Today I took a break before my usual lunchtime to go to the movies — Boogie el Aceitoso was on at 13:00 (and not at the more usual, late screenings).

Oily Boogie is a great antihero drawn by the much beloved Roberto El Negro Fontanarrosa, a very widely known Argentinian humorist/cartoonist. I got acquinted with Boogie as during the 80s-90s my parents were asiduous readers of Proceso, a weekly political analysis magazine which included one of his cartoons at the last page.
Boogie is a pathological ex-Vietnam, ex-Laos ex-El Salvador, ex-Gulf War, ex-(whatever comes next) USA soldier, who deals with the local mafias whenever he is not active. Brutal, often seen as inhuman.

I remember reading it without really understanding its nonsensical violence at first. And, as I said, Fontanarrosa is a very loved cartoonist - In Mexico I think we were much more acquinted with Boogie than with Inodoro Pereyra, and still, Fontanarrosa's death in 2007 was very heartfelt here.
About the movie: I found it to be very good, of course, knowing what to expect. Most lines are short, screen adequations of various cartoons along Boogie's long life as a thug. I specially liked the animation technique — I know very little about the subject, but it mixed quite naturally and constantly obvious still, cartoony characters with vivid, photo-based items. It creates a completely believable atmosphere inside the absolute amoral, selfish and (fortunately!) grossly exagerated and impossible world of Boogie.
I sometimes feel somewhat stupid when writing in English for a mostly Spanish-speaking audience — Still, if you see Boogie in a movie theater, don't hesitate and go. As always, with non-top-selling, non-Hollywood movies, it is quite probable it will not be showing for long.
[Actualización, 10 de Marzo] El curso si se va a llevar a cabo el día 20 de Marzo en el Cesun Universidad, Campus Morelos, de 9am a 6pm en Av. Cucapah *Sur # 20100* Fracc. El Lago.
Los interesados en asistir por favor pongan su comentario en el post de @stanmx sobre el curso, ya que a esas personas Stan les hará llegar la información de pago del curso, recuerden que ese dinero es para la compra de comida y bebidas para el curso, por lo tanto es importante que quienes deseen ir paguen cuanto antes para comprar las cosas con anticipación, cualquier duda sobre el pago Stan les puede ayudar.
Adicionalmente la gente de TekPub fue amable de regalarnos una subscripción a la serie de video de Ruby On Rails, la cual cuenta con 10 videos de 1 hora aproximadamente, cubriendo diferentes aspectos de RoR.
La subscripción se le regalara, en una mecánica por definir, a alguno de los asistentes de curso.
[Actualización, 8 Marzo] Es muy probable que el curso se lleve a cabo el día 20 de Marzo en el Cesun Universidad, Campus Morelos. En cuanto este confirmado se les hará saber.
Después de un par de meses de que @stanmx me estuviese dando lata comentara sobre su interés de un curso de Ruby On Rails, decidimos hacer el ejercicio de ver si había interés entre los desarrolladores de la ciudad, y el ejercicio fue bueno, actualmente hay alrededor de 12 personas que levantaron la mano.
Entrando en detalles del curso, actualmente estamos viendo quien nos puede facilitar un espacio para al menos unas 15 personas, de preferencia que tenga acceso a Internet y que podamos hacer uso de un proyector, obviamente también buscamos un lugar donde nos puedan abrir un sábado y estar ahí entre 10 y 12 horas.
El curso no es gratuito, pero tampoco es lucrativo, se pide una cooperación de $250.00 pesos, lo que incluye el curso y bebidas/alimentos/botanas durante la realización del mismo.
Pre-requisitos para el curso
Contestando a preguntas directas que me han realizado, sobre que se necesita a para poder atender el curso, aquí les dejo la siguiente información.
Observaciones
Ruby On Rails puede hacer uso de diversos motores de base de datos, pero por cuestiones de simplicidad vamos a hacer uso del motor de SQLite, aunque si se va a explicar como, por ejemplo, cambiar la configuración para conectarse a un MySQL.
La version de Ruby on Rails sobre la que se va a trabajar es la 2.3.5, aunque la version 3.0 Beta 1 esta disponible, vamos a irnos por la ruta de la version estable.
Si desean instalar algún administrador gráfico para SQLite y tienen instalado Firefox, pueden instalarle el addon SQLite Manager.
¿Como instalar Ruby On Rails en mi equipo?
Dependiendo del OS de nuestra laptop es como vamos a realizar la instalación, por la lista de amigos que levantaron la mano al curso puedo darme cuenta que vamos a tener OSX, Linux y Windows, así que aquí va las guías para cada OS.
RoR en Windows
Hace algunos meses escribí un post que detalla la instalación de RoR en Windows, utilizando cygwin y un editor llamado e-TextEditor. El e-TextEditor no es gratuito tiene un costo como de 40 USD y cuenta con versión de evaluación.
Otra opción de instalación es utilizar algún IDE de RoR, las posibles IDEs las menciono mas abajo en el post ya que estas son comunes sin importar el SO.
RoR en Linux
Esta guía en español y para Ubuntu es muy fácil y directa, pero fácilmente se puede adaptar para cualquier distro de Linux.
Si se sigue esta guía, es recomendable configurar gEdit para RoR, lo cual nos da un buen IDE para trabajar en Linux.
Otra opción de instalación es utilizar algún IDE de RoR, las posibles IDEs las menciono mas abajo en el post ya que estas son comunes sin importar el SO.
RoR en OSX
En OSX es necesario insertar el disco de instalación de OSX e instalar las herramientas de desarrollo.
Como IDE es posible usar TextMate, aunque no es gratuito, cuentan con versión de evaluación.
Otra opción de instalación es utilizar algún IDE de RoR, las posibles IDEs las menciono mas abajo en el post ya que estas son comunes sin importar el SO.
IDEs para RoR
Para quienes se sientan mas a gusto con un IDE completo hay 3 posibles opciones de las cuales solamente una no es gratuita, pero cuenta con versión de evaluación.
Para lo que tengan duda sobre si instalar una IDE o no, en el curso no nos vamos a enfocar a ningún IDE en particular, todos los comandos los vamos a ejecutar desde la consola, la IDE nos va a servir únicamente como un editor de texto.
El curso
El temario tentativo para el curso es el siguiente:
Fecha y lugar
De momento de desconoce, espero que se pueda confirmar en los próximos días, la fecha depende en gran medida de la disponibilidad del espacio que nos faciliten, así que estén pendientes a este blog y a
.
No hay nada que decir, sólo ve el video =)
<object height="385" width="480"><param name="movie" value="http://www.youtube.com/v/Tv9iDzNg3Os&hl=es_ES&fs=1&rel=0&color1=0x3a3a3a&color2=0x999999"><param name="allowFullScreen" value="true"><param name="allowscriptaccess" value="always"><embed allowfullscreen="true" allowscriptaccess="always" height="385" src="http://www.youtube.com/v/Tv9iDzNg3Os&hl=es_ES&fs=1&rel=0&color1=0x3a3a3a&color2=0x999999" type="application/x-shockwave-flash" width="480"></embed></object>
Enlace: wear sunscreen
Pues hoy me llegó una copia del Open Solaris en versión Live CD que hace unas semanas pedí por internet.
Pues bueno, abro el sobre, saco el disco y lo coloco en la laptop con la intensión de probarlo…
Por mas que traté, nomas no arrancaba, supuse que la unidad de CD de mi laptop estaba dañada pero al sacar el disco y verlo veo que tiene dos muescas en la superficie de lectura.
Mendigo coraje que hice, alguien, seguramente en la oficina de correos de aquí de México engrapó algo al sobre (la grapa estaba allí) y se encontró con el CD en el camino, le valió gorro no tener cuidado, dañando la superficie de lectura del disco) y engrapó dos veces mas, ahora si en el sobre.
Así pues me llego mi CD de Open Solaris, pero se fue derechito al bote de basura.
Ya pedí otro ¬¬
Como verán en estos días he estado haciendo algo de investigación relacionado a mi tema de tesis, parte de la cual necesita de entrevistas, exploración y análisis de datos estadísticos, justamente de estos últimos, ayer escribí un post sobre mis aproximaciones a cuánto gasta el Poder Ejecutivo Federal en licencias de Microsoft Windows y Microsoft Office, resultado que si aún no leen, es de aproximadamente $760,000,000.00 (setecientos sesenta millones de pesos mexicanos), bueno el caso es que ayer y hoy he continuado con este tipo de investigaciones y decidí meterme al portal de Transparencia de la UNAM, ahí después de navegar unos minutitos, encontré las tablas de gastos realizados en cuanto a Contrataciones de Obras, Bienes y Servicios, ahí me fui a la tabla que dice “Compras a dependencias” y descubrí datos interesantes, mi principal motivación era ver cuánto se gasta la UNAM en equipos de Cómputo y Software y esto fue lo que encontré.
Primero que nada debo aclarar que en dicha tabla se muestra la información de adquisiciones de toda la UNAM, esto lo digo porque hay quienes piensan que la UNAM es sólo Ciudad Universitaria y olvidan que están las Facultades de Estudios Superiores, las Escuelas Nacionales y las Preparatorias así como todas los Institutos y Centros de Estudio a lo largo y ancho del país; segundo, la tabla que encontré, corresponde únicamente al periodo de 2009 (1 de Enero-31 de Diciembre) y; tercero, desgraciadamente la tabla es muy general y sólo da los datos de “Concepto”; “Monto”; “Proveedor”; “Vencimiento” y; “No. de Referencia”, me hubiera gustado que estuviera desglosado por Facultades o Instituciones para así poder ver cuánto se destina a cada una; además de esto el concepto no es tan específico, es decir sólo dice “Equipos de Cómputo” y no da más indicaciones, por lo que no se sabe si son computadoras o periféricos u otra cosa. Pero bueno fueron muchas advertencias, así que vamos con los datos:
En el período que comprende el 1 de Enero de 2009 al 31 de Diciembre del mismo año, la UNAM realizó 36 compras de equipo de cómputo, las cuales varían desde los $5,554.50 (cinco mil quinientos cincuenta y cuatro pesos, con cincuenta centavos), hasta los $6,318,296.61 (seis millones trescientos dieciocho mil doscientos noventa y seis pesos, con sesenta y un centavos); además estas fueron realizadas en su mayoría con proveedores distintos, con algunos casos en los que algunos proveedores repetían; sin embargo el gran total de compra de equipo de cómputo de la UNAM en 2009 fue de: $34,248,105.80 (treinta y cuatro millones doscientos cuarenta y ocho mil ciento cinco pesos, con ochenta centavos).
Ahora bien, cuando vemos el tamaño que tiene la UNAM realmente esta cifra puede no significar tanto, sin embargo esto es sólo la compra de un año, lo cual me hace pensar que cada año por lo menos se gastan algunos millones en equipo de cómputo, nuevamente vuelvo al punto en que no podemos determinar qué entienden por equipo de cómputo pues lo mismo puede ser un mouse o una impresora que una computadora, salvo el caso de una compra que especifica claramente que fue para la compra de 140 lap tops, ninguna otra hace referencia ni a marcas, ni a modelos, ni mucho menos instituciones a donde fueron a parar dichos equipos.
Este ejercicio lo hago con la misma intención que el de ayer, para darnos cuenta de cuánto podría ser el ahorro de instituciones de los tamaños de la UNAM o el Gobierno Federal en la compra de Equipos de Cómputo si se utilizara Software Libre, al respecto debo decir que en la UNAM hay múltiples laboratorios en distintas Facultades que trabajan exclusivamente con Software Libre por lo que ya podemos hablar de que en ciertos lugares de la Universidad de que existe una cultura del Software Libre (de hecho en la Facultad de Ciencias Políticas y Sociales hemos comenzado a implementar Software Libre desde hace más de un año en el cubículo de los Estudiantes, el A-104; además de que otros espacios e incluso una computadora institucional ya tienen algo de software libre), sin embargo a pesar de que existen estos espacios no han causado gran impacto y es ahí donde hago una pequeña autocrítica en el sentido en que nosotros como usuarios de software libre no hemos hecho el eco necesario para llevar a más personas a la utilización de estos programas y sistemas operativos, así que exhorto a todos los usuarios de software libre de las universidades a que cada quien desde sus espacios, trate de alguna forma (puede ser desde pláticas, vídeos, hasta instalaciones) de llevar el software libre a la mayor cantidad de gente posible, pues sólo así podremos hablar de una verdadera cultura del software libre. O ustedes ¿qué opinan?
Saludos
I started working on a new project at work. This is the "fun stage" of the project: the prototypes and the investigation part.
One of the UI requirements was to drag and drop elements from a ListView to a TreeNode. So, this is how to enable Drag&Drop:
First, you have to enable the AllowDrop property for your TreeView
treeView1.AllowDrop = true;
Then, in your ListView, you have to add code to the ItemDrag event:
listView1.DoDragDrop(listView1.SelectedItems, DragDropEffects.Move);
The DoDragDrop method begins a Drag&Drop operation. The first parameter, is the element(s) you want to drag around. The second, is the type of dragging-and-dropping you want to do. Here is a list:
| None | The drop target does not accept the data. |
| Copy | The data from the drag source is copied to the drop target. |
| Move | The data from the drag source is moved to the drop target. |
| Link | The data from the drag source is linked to the drop target. |
| Scroll | The target can be scrolled while dragging to locate a drop position that is not currently visible in the target. |
| All | The combination of the Copy, Move, and Scroll effects. |
You can combine more than 1 DragDropEffect by bitwise ORing them:
listView1.DoDragDrop(listView1.SelectedItems, DragDropEffects.All | DragDropEffects.Link);
In my project, I only need DragDropEffects.Move functionality.
Well. Now we only have two more things to do. First, we have to take care of the DragOver event. This is raised by your target control (in this case a TreeView) every time the mouse moves over the target's visible area.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | private void treeView1_DragOver(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(typeof(ListView.SelectedListViewItemCollection))) { e.Effect = DragDropEffects.Move; } Point position = treeView1.PointToClient(new Point(e.X, e.Y)); TreeNode tn = treeView1.GetNodeAt(position); if (tn != null) { treeView1.SelectedNode = tn; if (!tn.IsExpanded) { tn.Expand(); } } } |
There are some interesting bits of code in there:
if (e.Data.GetDataPresent(typeof(ListView.SelectedListViewItemCollection))) { e.Effect = DragDropEffects.Move; }
Our data (the one we are dragging around) is stored in the Data property of the event. The GetDataPresent method determines whether this data can be converted to the specified format.
In this case, our format is ListView.SelectedListViewItemCollection. Why? you may ask. Well, because this is the returning type of listView1.SelectedItems (which is the object we are dragging around, remember?).
We could put this particular piece of code inside the target's (TreeView) DragEnter event. This way, it only has to be executed once.
This is also important:
Point position = treeView1.PointToClient(new Point(e.X, e.Y)); TreeNode tn = treeView1.GetNodeAt(position);
The DragEventArgs object holds some information about the event. In this case we are using e.X and e.Y to know the location of the mouse at any given time. But the thing is that the mouse location is relative to the screen, so we have to convert it to client coordinates. That's exactly what PointToClient does.
Now that we have the position relative to the client, we can get the TreeNode under that position. If there is no TreeNode under that position (maybe the mouse is moving over whitespace) it returns null.
The rest of the code is trivial, it expands a TreeNode if its not expanded already.
Lastly, we have the DragDrop event, in which we release the mouse button over our target TreeNode.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | private void treeView1_DragDrop(object sender, DragEventArgs e) { Point position = treeView1.PointToClient(new Point(e.X, e.Y)); if (e.Data.GetDataPresent(typeof(ListView.SelectedListViewItemCollection))) { TreeNode tn = treeView1.GetNodeAt(position); var li = (ListView.SelectedListViewItemCollection)e.Data.GetData(typeof(ListView.SelectedListViewItemCollection)); foreach (ListViewItem item in li) { MessageBox.Show(tn.Text + " = " + item.Text); } } } |
The only interesting or new line in here is this one:
var li = (ListView.SelectedListViewItemCollection)e.Data.GetData(typeof(ListView.SelectedListViewItemCollection));
this method retrieves the data associated with the specified data format (at least, that's what MSDN says) but you still have to cast it accordingly.
Once you have your data, you can do anything you want with it (i'm just displaying which TreeNode received the Items and the Items' text)
Happy hacking.
UPDATE
If you want to see which TreeNode you're selecting while dragging, just add this to your code:
1 | treeView1.HideSelection = false; |
El otro dia me puse a jugar con un ejemplo de un servidor tcp simple en python que vi aqui
Tengo un maquina que quiero saber cuando algo pasa, en mi caso se puede resumir en el comando:
$while true; do [ “$(lic | grep 65/65 | wc -l)” != 0 ] && alerta94; sleep 20; done
Es decir cuando con el comando “lic” ( inventado por mi) no arroja alguna linea que contenga 65/65 no pasa nada, cuando si contenga una linea con 65/65 se ejecuta el comando “alerta94″ , y esto se revisa cada 20 segundos, obviamente aqui puede ser cualquier otra condicion y tomar cualquier otra accion
.
mi comando alerta94 consiste en lo siguiente:
$echo | nc 192.168.66.94 50000
Bueno en mi pc ejecute el script de servidor de tcp simple, asi que mi pc estara escuchando por el puerto 50000 tcp
# a simple tcp server
import SocketServer
import sys
import pynotifyclass EchoRequestHandler(SocketServer.BaseRequestHandler ):
def setup(self):
if not pynotify.init(”ALERTA”):
sys.exit(1)
n = pynotify.Notification(
“Ayuda”,
“Tengo Hambre”,
“dialog-warning”)
n.set_timeout(pynotify.EXPIRES_NEVER)
n.show(),
print self.client_address, ‘Algun Mensaje!’
self.request.send(’Hola sysadmin ‘ + str(self.client_address) + ‘\n’)def handle(self):
data = ‘nada’
while data:
data = self.request.recv(1)
self.request.send(data)
if data.strip() == ‘’:
returndef finish(self):
print self.client_address, ‘Gracias!’
self.request.send(’alra ‘ + str(self.client_address) + ‘\n’)server = SocketServer.ThreadingTCPServer(('’, 50000), EchoRequestHandler)
server.serve_forever()
Lo que agregue fue la parte de la notificacion (en negritas), lo grabe en un archivo llamado “lala.py” y lo ejecute:
$python lala.py
Cuando en la pc cliente se cumpla la condicion y se ejecute “alarma94” aparecera en mi pc el siguiente recuadro:
Ahorita estoy pensando en implementar Status.net para el monitoreo de actividades en mis servers… http://status.net/
Hace ya algún tiempo hice una solicitud de información al IFAI, en la cual preguntaba a la Secretaría de Comunicaciones y Transportes (sólo a esa secretaría porque en el portal del IFAI no me daban la opción de “Gobierno Federal” o algo más general y me dio la gana esa Secretaría jeje) cuántas computadoras tenían y de esas, qué sistema operativo tenían, además de la paquetería básica que incluían.
Por mi síndrome de “se me olvida incluso lo que desayuné hoy” olvidé la solicitud y hoy que andaba revisando y depurando documentos de la computadora de mi oficina me encontré con dicha solicitud (la subiría a la página de documentos pero tiene mucha información personal, como dirección, teléfono y esas cosas y la verdad en estos tiempos en lo que nadie está seguro, mejor no lo hago), el caso es que al encontrar la solicitud, me di cuenta de que la respuesta ya debería estar ahí, por lo que me dediqué a buscar mi contraseña del servicio del IFAI y a entrar en mi cuenta, después de muchos intentos lo logré y encontré mi respuesta.
Los datos en cuanto a sistemas operativos y paquetería en la Secretaría no me sorprendieron nada (Tienen Microsoft Windows 2000, XP y Vista en sus equipos y la paquetería básica consiste en Office 2003 y 2007), lo que sí me sorprendió es el número de equipos que tienen, ya que yo calculaba algunos miles de equipos, pero no tantos jeje, la cifra exacta de equipos de la Secretaría de Comunicaciones y Transportes es de…… cha cha cha channnnnnn (redoble de tambores por favor): 14,854 (catorce mil ochocientos cincuenta y cuatro equipos), por lo menos hasta Noviembre de 2009.
Así es, casi 15,000 equipos, sólo en una Secretaría, digo, habrá algunos que digan que esto no es nada sorprendente pero la verdad yo no tenía idea de cuántos podría haber en una sola Secretaría, además hice la solicitud con un motivo en especial, como algunos de ustedes sabrán, estoy haciendo mi tesis y obviamente tratará sobre software libre (aún no lo delimito bien, pero mis intereses giran alrededor de la implementación del software libre en la Administración Pública y esas cosas) y parte de mi investigación tenía o tiene que ver con el saber qué ventajas traería para la AP mexicana, la implementación de SO´s libres, entonces decidí pedirle al IFAI información respecto a los equipos y SO´s que se utilizan en la SCyT.
Ahora bien esto es sólo una Secretaría y de acuerdo a la Ley Orgánica de la Administración Pública Federal (la cual pueden consultar en su versión más actualizada (y oficial) de la página de la Función Pública), en su Capítulo II “De la competencia de las Secretarías de Estado, Departamentos Administrativos y Consejería Jurídica del Ejecutivo Federal”; Artículo 26, que a la letra dice: “Para el despacho de los asuntos del orden administrativo, el Poder Ejecutivo de la Unión contará con las siguientes dependencias:
| Secretaría de Gobernación | ||
| Secretaría de Relaciones Exteriores | ||
| Secretaría de la Defensa Nacional | ||
| Secretaría de Marina | ||
| Secretaría de Seguridad Pública | ||
| Secretaría de Hacienda y Crédito Público | ||
| Secretaría de Desarrollo Social | ||
| Secretaría de Medio Ambiente y Recursos Naturales | ||
| Secretaría de Energía | ||
| Secretaría de Economía | ||
| Secretaría de Agricultura, Ganadería, Desarrollo Rural, Pesca y Alimentación | ||
| Secretaría de Comunicaciones y Transportes | ||
| Secretaría de la Función Pública | ||
| Secretaría de Educación Pública | ||
| Secretaría de Salud | ||
| Secretaría del Trabajo y Previsión Social | ||
| Secretaría de la Reforma Agraria | ||
| Secretaría de Turismo | ||
| Consejería Jurídica del Ejecutivo Federal” |
Entonces tenemos que el poder Ejecutivo está compuesto por 18 Secretarías de Estado y una Consejería Jurídica (además claro de Presidencia), por lo que echando números (lo siento pero con los datos que tengo sólo puedo especular) y más o menos calculando un promedio de 10,000 computadoras por dependencia (hay Secretarías más grandes que otras, además de que unas son más importantes que otras), tenemos que sólo en el poder ejecutivo Federal hay aproximadamente 190,000 (ciento noventa mil) computadoras, de las cuáles estoy casi seguro que en cuanto a SO´s y paquetería básica, el 99% tienen algún SO de Microsoft Windows (2000; XP; Vista; 7) y la paquetería de oficina Microsoft Office (2003; 2007 e incluso; 2010).
Si ahora calculamos el precio de las licencias, tenemos que un SO de Microsoft cuesta “bajita la mano” $2,000 pesos mexicanos (obviamente a este precio sólo obtendríamos las versiones “Starter” de dichos SO´s y por ejemplo en donde trabajo tienen en todas las compus la versión Enterprice que más o menos andará por los $7,000 pesos mexicanos, pero a favor de los de Microsoft, cuando hablas de los volúmenes de licencias que se tienen que manejar para la Administración Pública , seguramente se manejan licencias corporativas, que tienden a ser mucho más baratas, la verdad no sé que tanto pero tampoco creo que anden regalando SO´s), entonces, si calculamos 190,000 computadoras x $4,000 pesos mexicanos (del SO y de la paquetería de Office, pues recuerden que son productos separados y con precios similares), nos da el gran total de (por favor si están leyendo esto parados, mejor siéntense o agárrense de algo o alguien jeje): $760,000,000.00 (setecientos sesenta millones) de pesos mexicanos, si son de otra parte del mundo y para que se den una idea de cuánto es, si el dólar está a $12.32 pesos mexicanos, entonces hablamos de $61,688,311.69 (sesenta y un millones seiscientos ochenta y ocho mil trescientos once) dólares gringos, bastante dinero creo yo.
Como mencioné antes, estos son datos basados en la especulación, sin embargo
todos los cálculos lo hice (según yo) muy por debajo del promedio que en realidad es, por lo que seguramente son muchos más millones, también cabe señalar que esto sólo corresponde al Ejecutivo Federal, faltarían los otros dos poderes (Legislativo y Judicial) a nivel federal, así como los poderes a nivel local y municipal; los organismos descentralizados, órganos desconcentrados y un laaaaargo etcétera que es lo que en realidad compone a toda la Administración Pública de un país, si sólo del Poder Ejecutivo estamos hablando de varios cientos de millones de pesos la cifra total de toda la AP debe ser descomunal, este breve ejercicio matemático lo hice para que nos demos cuenta de cuánto se puede llegar a gastar la AP en sistemas de información y comunicación, la razón: ya en repetidas ocasiones he hablado de que una de las principales ventajas de la utilización de software libre en la AP es la del ahorro de recursos (no es la más importante pero sí una de las más llamativas), mismos que tenemos que recordar provienen de nuestros impuestos, por lo que esto demuestra la importancia y la necesidad de implementar estos sistemas en nuestra Administración Pública.
Al respecto sé que no es nada sencillo y justamente uno de los grandes problemas de la adopción de estos sistemas en la AP (así como en las PyMEs y en cualquier otro ambiente) es el de la migración, pues costaría dinero en capacitaciones y migración de bases de datos y otras cosas a un entorno nuevo (como lo es GNU/Linux o cualquier otra plataforma libre o abierta), también siempre he reconocido que la adopción de software libre no significa ahorro automático de todos esos millones (por las razones que expuse antes y porque al final, todo sistema de información requiere de mantenimiento) sin embargo creo que para los niveles de dinero que se manejan, vale mucho la pena gastar ahora y ver cómo ese gasto va reduciendo dramáticamente con el tiempo, antes de seguir con este modelo de pago de licencias por SO´s que ni siquiera garantizan seguridad o calidad (como se vio con Vista), las ventajas de la utilización de software libre en la AP están ahí, en este post así como en el blog he hablado ampliamente de ellas, depende de nosotros (como administradores públicos (o futuro administrador público en mi caso), usuarios, pero sobre todo como ciudadanos ) que esto sea una realidad en el futuro, sé que no es fácil, sé que no es sencillo, pero si otros países lo han comenzado (España, Dinamarca, Venezuela, Alemania, Brasil, sólo por mencionar algunos) porque no habríamos nosotros de hacerlo.
Saludos.
P.D. Por cierto, me encantaría que no. 1 comentaran, pero que también si están interesados en el tema (y quieren ayudarme) hagan sus propias solicitudes de información al IFAI y compartan sus datos, recuerden que (me voy a ver muy institucional pero ni pex) el acceso a la información es nuestro derecho.
The release of OpenSSH 5.4 was announced today. Its announced features include many small improvements, in usability and in crypto strength.
One of my favorite tricks using ssh is what Ganneff named ssh jumphosts – Many (most?) of my machines are not directly accessible from across the firewall, so the ability to specify in the configuration files where to jump through is most welcome. Well, with this "netcat mode" it will be much clearer to read and less of a hack… Of course, it loses a bit of the hackish æsthetic value, but becomes easier!
(yes, this post is basically a marker so I remember about it — But others might find it interesting)
Hoy salió a la luz información interesante acerca de unos de mis sitios “favoritos”, facebook, la cual menciona una historia bastante común en nuestras fechas.
Resulta que aparentemente facebook ha estado rodeado desde sus inicios no solo de los problemas de seguridad y confidencialidad que los usuarios han podido precenciar, sino que apartentemente el fundador no solo robó la idea de un proyecto para el que lo contrataron, sino que al parecer incluso se puso a usar información confidencial recabada en facebook para atacar a sus contrincantes, y demeritar la imagen de páginas de competencia.
Hay dos cosas que me parecen muy relevantes, una es la manera tan infantil en la que un desarrollador se comporta con sus clientes, robando un concepto y haciendolos ver como si ellos tuvieran la culpa de que no despegara, digo, el contexto es totalmente lógico, pero lo preocupante es la manera en la que un cuate de 19-20 años ya tiene bien puesta su visión en la lana, y va a hacer lo que sea necesario para lograr lo que el llama éxito, lo cual quedó demostrado con los años y sus actividades.
Por otro lado, es bastante curioso que este cuate, viniendo de un perfil más técnico/tecnológico, no haya logrado encajar correctamente los conceptos de seguridad y confidencialidad, aunque pensandolo bien, pues creo que tiene sentido, si él mismo no está dispuesto a respetar la información de los subscriptores con tal de perjudicar a la competencia, pues mucho menos estará interesado en hacer esa parte del trabajo sucio que significa: hacer las cosas moralmente correctas.
En fin, me da tristesa que el mundo se mueva por el dinero, a todos nos gusta vivir bien, pero es ridículo que la mayoría de nosotros busquemos “la buena vida” a pesar de lo que sea.
He hablado de temas similares con google, con apple, microsoft, y podemos hablarlo con televisa, tvazteca, telcel, el PRI, el PAN, PRD, y así, es tan triste que ni siquiera sean suficientemente cuidadosos como para mover las piezas de manera discreta, se avientan sus robos, sus fraudes, sus tranzas por enfrente de todos, y no hay nadie que los pueda detener, triste.
Para iniciar el año necesitaba algo nuevo, algo que no hago normalmente… ¡como hacer deporte!. Y pues ni modo, al principio me costó, pero después me dio coraje ver acá que hay más de 40 disciplinas deportivas que ofrece la UNAM sin costo y uno quedándose aplastado haciendo panza y acabándose la vida de la manera más burda y estúpida que hay. Así que decidí hacerle frente a mi problemita y hacer algo diferente. Tardé un poco en escoger, dados mis horarios escolares y no académicos, mi única opción era realizar alguna actividad por las tardes-noches; así que revisando las horas en que se ofrecían las clases sólo restó(no recuerdo que haya quedado otro) Kendo. Alguna vez había escuchado de él, nunca me llamó en realidad la atención pero total… ¡escribí un correo!. xD
Escribí un correo y me contestaron muy amablemente que primero debía ir a una clase, con ropa cómoda y ver si el Kendo era lo mio, después me pedirían lo que fuera que necesitara. Hurté entonces un pants de mi papá y una playera de mi hermano y casi obligado por mi familia, fui a la clase. Al llegar, lo de siempre, el niño tímido que nomás espera a ver que pasa, en eso, un chavo(ahora sé que se llama Jorge) me preguntó si iba yo a la práctica y me invitó a pasar al dojo. No sabía yo que onda, pero como vi que estaban corriendo, ps… a darle, para después hacer unos ejercicios más con unos gritos de palabras raras que después me enteraría, eran los números en japonés. Me cansé, como buen sedentario en reciente activación, sudé como nunca y nada más fue para calentar. Ahora venía lo bueno, nos prestaron(a mi y a otros nuevos) un Shinai, una especie de espada de bambú(varios más de grafito) y nos pusieron a hacer unos ejercicios, gritando Men, Kote y Do. Había leído con antelación que en una práctica de Kendo el cansancio era mucho mayor que tener sexo, correr más de una hora y cosas por el estilo; no lo creí, hasta ese día, terminé hecho sopa.
Mi primera clase me encantó, y si hay algo que se grabó fue la actitud de todos los Sempai(alumnos avanzados), así como había que obedecerlos y respetarlos, ellos respetaban y además cuidaban de todos los de grados inferiores. Igual no se me olvida lo que me dijeron en mi primer regaño:
¡Grite usted, si no sabe que decimos, grite cualquier cosa. En el Kendo puede faltarle técnica, pero nunca puede faltarle Espíritu!.
De ahí me quedaron ganas de regresar. De eso ya hace casi un mes. He faltado a algunas clases por cuestiones escolares o de la casa, pero cuando puedo ir, ahí estoy. Hace poco me compré mi Shinai, nada ostentoso, el más barato, pero mío.
El miércoles que viene presentaré mi primer examen, espero obtener algún grado; en el Kendo existen 7 Kyu y 10 Dan. Los Kyu(algo así como los grados de aprendíz) son los grados anteriores a los Dan(algo equivalente a cinta negra). Espero obtener al menos 7º Kyu(el más bajo) y de ahí seguir practicando. Uno de mis Sempai dice que algo prudente es ir presentando exámenes cada 2 ó 3 meses, dependiendo de la dedicación.
Si uno ve videos de Kendo, parece muy sencillo(a mi me parecía así), la realidad es otra, es muy complicado siquiera simular el movimiento sin un oponente enfrente y a la hora de golpear o mejor dicho, querer hacer un corte es aún mucho más complicado, sin mencionar el cansancio inmenso; con 5 minutos de hacer cortes seguidos, uno tiene para sudar hasta quedar como sopa aguada.
Y después de tanto choro, ¿qué es el Kendo?. Bueno, a leer la wiki.
Lo que si les dejo es el propósito del Kendo:
Moldear la mente y el cuerpo,
Cultivar un espíritu vigoroso,
Y mediante la práctica correcta y rigurosa,
Esforzarse para mejorar en el arte del Kendo.
Apreciar la cortesía humana y el honor,
Relacionarse mutuamente con sinceridad,
Y perseguir siempre el desarrollo de uno mismo.
Y lo anterior con el fin de ser capaz de:
Amar a su país y a la sociedad,
Contribuir al desarrollo de la cultura
Y promover la paz y la prosperidad entre todas las personas.
Seguiré reportando mis avances en Kendo, así como posteando algunos videos de ésta arte marcial japonesa.
Saludos.
I must confess I don't remember who I got this invitation from. Anyway, if you are in the right geographic area, you might be interested. I will try to participate:
This is a year-long seminar that will be held the second Thursday every month at Fonoteca Nacional (a place I have wanted to visit for a long time!), in Barrio de Santa Catarina, Coyoacán. Among the organizers they have Creative Commons Mexico.
Free entrance (but limited space - so they ask interested people to confirm their presence by mail to bvallarta@conaculta.gob.mx).
[update] I went with Pooka to the first session. We arrived almost 1hr late (due to me mistaking the schedule :-/ ) but it was interesting. Of course, quite biased towards the Google viewpoints, but interesting. We got the program for the next sessions — So, mostly for myself to keep handy, here it goes:
| Date | Title | Speakers |
|---|---|---|
| 2010-03-11 | Google and copyright | Manuel Tamez, Hugo Contreras, María Fernanda Mendoza |
| 2010-04-08 | Generalities about rights on intelectual property | Jesús Parets, Guillermo Solórzano, Jorge Mier y Concha |
| 2010-05-13 | Copyright's nature and competent authorites | Carmen Arteaga, Luis Schmidt, César Callejas |
| 2010-06-10 | Moral and patrimonial rights | Guillermo Pous, Eduardo de la Parra, Ramón Obón |
| 2010-07-08 | Reproduction rights for audible material | Álvaro Hegewisch, Óscar Javier Solorio, Marco Antonio Morales, José Ramón Cárdeno |
| 2010-08-12 | Licenses and patrimonial right transmission. Works for hire, works done under laboral relationship, or carried out in official service | Dolores Franco, Jesús Mejía, Raúl Pastor |
| 2010-09-09 | Limits to explotation rights and literary plagiarism | Carmen Arteaga, Juan Ramón Obón, Jorge Mier y Concha, César Callejas |
| 2010-10-14 | Copyright in a digital setting | Jesús Parets, Gastón Esquivel |
| 2010-11-11 | Law-regulated intelectual property rights | Rosalba Elizalde, Salvador Ortega, Gastón Esquivel, Manrique Moheno |
| 2010-12-09 | International protection and collective gestive societies | Horacio Rangel, Luis Schmidt, Jesús Mejía |
El pasado 2 de marzo fue anunciada la primer versión de la rama 4.4 de KDE SC: KDE SC 4.4.1 con el nombre clave “Clara“. Por motivos de tiempo no me fue posible publicar la entrada, sin embargo, aquí les traigo cómo instalar esta versión.
Aún no se encuentra disponible en el repositorio updates estable de Fedora pero podemos instalarlo desde el repositorio de KDE RedHat
Para ello, abrir una terminal y ejecutar lo siguiente para agregar el repositorio:
su -c "wget http://apt.kde-redhat.org/apt/kde-redhat/fedora/kde.repo -O /etc/yum.repos.d/kde.repo"
Después simplemente instalan con el siguiente comando:
su -c "yum --enablerepo=kde-testing groupinstall 'KDE (K Desktop Environment)'"
O actualizan con:
su -c "yum --enablerepo=kde-testing update"
Y listo, reinician y ya podrán disfrutar de esta nueva versión
Nota: Si les marca algún error de dependencia de K3B, añadir “–exclude=k3b*” (sin las comillas) al comando respectivo que ejecuten.
Tip: Si tienen problemas con plasma y las aplicaciones de KDE, les recomiendo que inicien con configuraciones nuevas. Para ello muevan la carpeta ~/.kde a otro sitio por ejemplo ~/KDEconfs y reinicien su sesión.
Tengo que decir que se nota bastante la mejora en la estabilidad de todo así que no duden en actualizar
Así es, los usuarios de Windows ya podrán disfrutar de Opera 10.50, versión que sustituye a la horrorosa versión 10.10.
Como se puede ver, tiene un look nuevo, con el que dejan a un lado la clásica barra de menús y adoptan un nuevo y único menú “O” (muy al estilo de MS Office 2007-2010).
Este nuevo opera incluye también un nuevo sistema llamado “opera unite”, cuya función es poder compartir cualquier tipo de información de Internet. (Para quienes aman las redes sociales)
Pueden descubrir todas sus nuevas características descargando opera 10.50 aqui.
Nota: Esta entrada fue realizada con Opera 10.50
Ya tengo un artículo para poder recuperar GRUB en este blog, pero está orientado al Grub 1.x y hoy tuve una laptop con una instalación de Ubuntu 9.10 y que al reinstalar el Hasefroch nomás se perdió y pues aunque la persona estuvo tratando de poder recuperar Grub, la mayoría de los enlaces que consultó y aplicó nomás no le funcionaron porque estaban enfocados a esa versión 1.x, pero Ubuntu 9.10, Debian Squeeze y probablemente más distribuciones están usando actualmente GRUB 2.x y obviamente la forma de funcionar cambió.
Así que vamos a ver la forma rápida de cómo hacer para recuperar Grub2
Al igual que en el artículo anterior, precisaremos de una distribución Live, como Ubuntu o la que ustedes prefieran e iniciar desde ahí.
Como menciono lo que se hizo fue iniciar con el cd de Ubuntu, escoger el idioma español y la opción de “Probar sin instalar” (o algo así)
Una vez dentro e iniciado ubuntu hacemos clic en “Lugares – Equipo”
Esto abrirá una ventana de Nautilus que nos indica todas las particiones que encuentra SIN montarlas. En el caso de la pc en cuestión encontró 2 (dos) partciones y las etiquetó como disk y disk2. Cuando se instaló se crearon dos particiones raíz (/) y home (/home). Al darle clic sobre el ícono de disk, éste se monta y nos muestra el contenido que es típico de la partición raíz (/).
Ahora abrimos una terminal haciendo clic en “Aplicaciones – Accesorios – Terminal”
Nos aseguramos en donde está montada la partición y cúal es:
df -h
/dev/sda1 43G 2.0G 8G 2% /media/disk
Ok, veremos primero la talacha y luego explico que hicimos :-p
Como vemos la partición ya está montada en /media/disk lo que necesitamos es que los dispositivos también sean cargados ya que usaremos un entorno chroot.
sudo su
mount –bind /dev /mnt/dev
Y ejecuta el comando chroot de forma que accedemos como root al sistema de archivos de nuestro Ubuntu:
chroot /media/disk
Por último cargamos el Grub en el MBR ejecutando el siguiente comando:
grub-install –recheck /dev/sda
(sda lo debemos substituir por el disco duro que utilizamos para arrancar los sistemas operativos, casi siempre es sda. Ojo!! no poner el número de partición, solo sda)
Reiniciamos y cuando vuelva a arrancar ubuntu (no el del live-cd), podemos ajustar en el menú del grub manualmente para que aparezca en el menú de arranque el nuevo sistema operativo que nos borró el MBR, o dejar que lo haga el automáticamente con el siguiente comando:
$ sudo update-grub2
Y eso es todo
Como algunos de mis amigos ya lo saben, estoy de regreso en México, no solamente para visitar, sino definitivamente. A finales del año pasado recibí una oferta de trabajo y para no hacer el cuento largo, la acepté y estoy aquí de regreso.
Por otra parte, dentro de una semana voy a estar participando en el “Congreso Internacional de Ingenierías y Software Libre” en la Universidad Politécnica de Tlaxcala. Voy a estar impartiendo un taller de implementación de OpenLDAP y una conferencia de “Load Balancing con IPVS”. La página del congreso es http://ciisli.uptlax.edu.mx/
Saludos!
I just uploaded Feedbag 0.6 to Gemcutter and GitHub.
Just a couple of small nice additions to this version:
Sometimes you need to find the feed for a URL quickly, not from a script. What I do, and what someone else showed me too, is this:
~ $ irb -- require "rubygems" = true -- require "feedbag" = true -- Feedbag.find "http://stereonaut.net" = ["http://stereonaut.net/feed", "http://stereonaut.net/tag/feed/", "http://stereonaut.net/comments/feed/"] --
But now you can simply do:
~ $ feedbag cnn.com http://twitter.com/compupaisa == cnn.com: - http://rss.cnn.com/rss/cnn_topstories.rss - http://rss.cnn.com/rss/cnn_latest.rss == http://twitter.com/compupaisa: - http://twitter.com/statuses/user_timeline/119479806.rss - http://twitter.com/favorites/119479806.rss ~ $
Enjoy the feedbag executable on your $PATH now!
Yesterday I received my ID

Now I need the driver license, maybe next week I go to DMV.
Californiano is a post from: Albertux~# ./Blog
Después de muchos intentos al fin logre instalar mi lifecam vx-1000 en ubuntu 9.10 (Ubuntu 9.04 acá), aquí están los pasos para instalar:
1. Abrir la consola
- Menu: Aplicaciones/Accesorios/Terminal
(Ahora nos encontramos en nuestro home y procederemos con la instalacion
2 Instalando prerequisitos
2.1 Instalar Python (En esta guia use python-2.3)
$ sudo apt-get install python
2.2 Instalar libncurses
$ sudo apt-get install libncurses5 $ sudo apt-get install libncurses5-dev
2.3 Instalar Mercurial para descargar el codigo fuente
$ sudo apt-get install mercurial
2.4 Instalar cheese para probar la camara
$ sudo apt-get install cheese
2.5 Instalar las herramientas para compilar los fuentes GCC, make y otras utilidades.
(Ver obligadamente _make,_y_utilidades… )
apt-get install build-essential
3. Descargando y actualizando los fuentes de los modulos
$ hg clone http://linuxtv.org/hg/v4l-dvb
3.1 Entramos al directorio que descargamos recien
$ cd v4l-dvb
3.2 Actualizamos los fuentes
$ hg pull -u http://linuxtv.org/hg/v4l-dvb
3.3 Recuperamos la estructura del fuente
$ hg clone http://linuxtv.org/hg/dvb-apps
Si todo va bien, tendremos un resumen similar a eso:
rockerox@rockerox-desktop:~/v4l-dvb$ hg clone http://linuxtv.org/hg/dvb-apps destination directory: dvb-apps requesting all changes adding changesets adding manifests adding file changes added 1320 changesets with 5491 changes to 1875 files updating working directory 1374 files updated, 0 files merged, 0 files removed, 0 files unresolved
5. Ejecuten esta orden y no cambien nada dentro del programa, solo pongan exit y yes para que guarde el archivo de configuracion que necesitamos.
$ sudo make menuconfig
5.2 Editar archivo de configuracion
$ sudo gedit v4l/.config
5.3 Buscar “CONFIG_DVB_FIREDTV=m” y lo cambian por “CONFIG_DVB_FIREDTV=n”
# # Supported FireWire (IEEE 1394) Adapters # CONFIG_DVB_FIREDTV=n CONFIG_DVB_FIREDTV_FIREWIRE=y CONFIG_DVB_FIREDTV_IEEE1394=y CONFIG_DVB_FIREDTV_INPUT=y
5.4 Cerrar el editor y continuar con la compilacion.
$ make
5.5 Si make no entrego errores proceder con la instalacion, de lo contrario ver punto 7
$ sudo make install
6 Reiniciando
$ sudo reboot
7 Comprobaciones
En este punto de la compilacion de los modulos, deben revisar si no hay excepciones al hacer un make
Es importante este paso ya que debemos verificar si estan todas las herramientas instaladas.
Deben prestar mucha atencion en revisar el log del make por si hay errores
Si se fijan en el log indica si estan presente las utilidades requeridas para compilar, debe decir “YES” en todos los requisitos, prestar atencion en los que dicen “NO” y proceder a instalar. (sudo apt-get install y el nombre de lo que falta)
A mi me entrego esto al finalizar el make por si les sirve de ayuda
make[2]: Leaving directory `/usr/src/linux-headers-2.6.31-17-generic' ./scripts/rmmod.pl check found 349 modules make[1]: se sale del directorio `/home/rockerox/v4l-dvb/v4l'
Y el make install
/sbin/depmod -a 2.6.31-17-generic make -C firmware install make[2]: Entering directory `/home/rockerox/v4l-dvb/v4l/firmware' Installing firmwares at /lib/firmware: vicam/firmware.fw dabusb/firmware.fw dabusb/bitstream.bin ttusb-budget/dspbootcode.bin cpia2/stv0672_vp4.bin av7110/bootcode.bin make[2]: Leaving directory `/home/rockerox/v4l-dvb/v4l/firmware' make[1]: se sale del directorio `/home/rockerox/v4l-dvb/v4l'
SI todo esta bien, el log dira que esta todo en orden y que la compilacion ha terminado.
8. Probando la camara tras reiniciar
Cuando carga el sistema, vemos que el led de la camara se encuentra apagado y no encendida como estaba antes.Quiere decir que vamos en buen camino.
Abrimos el Cheese en Aplicaciones->Sonido y Video->Fotomaton de camara web Cheese
8.1 Configurando Cheese
En Editar->Preferencias, aparece el dispositivo, deben escoger USB camera (/dev/video0 en mi caso)
luego cerrar la ventana y deberia aparecer la imagen.
8.2 Comprobacion Final
Si aparece la imagen verder quiere decir que no se instalo correctamente, hay que volver al paso inicial y repetir (No olviden borrar el directorio que se creo al descargar el fuente ya que no funcionara si lo compilan sobre este.
Suerte a quienes lo prueben
Fuente: Ubuntu foros