[Ubuntu] Tip para acortar los comandos para controlar servicios

Es muy sencillo.

Recuerdo cuando probé redhat hace años, que para iniciar/detener/reiniciar un servicio por consola, se hacía así:

# service nombre-del-servicio start

En debian y ubuntu, se hace igual, pero llamando directamente a los scripts en init:

# /etc/init.d/nombre-del-servicio start

o así:

$ sudo /etc/init.d/nombre-del-servicio start

Aunque sea un capricho, es posible hacerlo de una forma corta en debian y ubuntu. Debemos instalar un paquete (muy ligero) llamado debian-helper-scripts:

$ sudo apt-get install debian-helper-scripts

Y listo. Ya podemos manipular los servicios por consola como se solía hacer en redhat, osea:

# service nombre-del-servicio start

o

$ sudo service nombre-del-servicio start

Seguir leyendo [Ubuntu] Tip para acortar los comandos para controlar servicios

Ministro Ferreiro se da vuelta la Chaqueta

Me parece ULTRAOSPECHOSO que a poco tiempo de haberse destapado la gran noticias sobre el Acuerdo Marco Colaboración Chile/Microsoft, hoy apareció en la web del ministerio de economía la siguiente información:

Ministro Ferreiro presentó la Estrategia Digital:
Una renovada carta de navegación con áreas de acción concretas para un mayor impacto productivo y social en el uso de las tecnologías de información en el país.

La presentación de la Estrategia Digital estuvo a cargo del ministro Ferreiro y el secretario ejecutivo del Consejo de Ministros para el Desarrollo Digital, Alejandro Barros.

Áreas de acción de la Estrategia Digital

Tres ejes son los que abarca la nueva Estrategia Digital del gobierno:(uno de ellos es)

Política tecnológica: plantea el abordaje de temas como el uso de software de código abierto, el uso y protección de los datos personales, el incremento en la seguridad informática, la propiedad intelectual del desarrollo tecnológico y la adopción de estándares que faciliten el acceso a la información y la interoperabilidad de los sistemas.”

Fuente: Ministerio de Economía

¿Será un tapaboca a la reacción de la blogósfera?¿Le estará haciendo honor a su partido (DC)? Seguir leyendo Ministro Ferreiro se da vuelta la Chaqueta

Explicación con manzanitas sobre el tema MS+Chile

Esta analogía la expuse en el Foro Powers, y fue bien recibida, espero que sirva para que aquellos que no entienden la implicancia por no estar familiarizados con la tecnología, pero si es un tema transversal, que afecta a todos los chilenos.

Dice así:

Supongamos que tengo una microempresa que fabrica pantalones. Tengo mi clientela, muchos han visto las bondades y ventajas de mis pantalones así que mucha gente independiente me compra el producto, de bajo costo y altas cualidades.

Ahora, llega el gobierno y hace un acuerdo con PantolonCorp, una trasnacional conocida porque sus pantalones son bonitos, pero reconocido por todos que las polillas se los hacen chupete.

Entonces el gobierno decide que todas las reparticiones públicas debe ocupar pantalones de PantalonCorp. Luego, regalarle a los escolares pantalones marca PC (PantalonCorp), instruyen a profesores para que los usen y promuevan, …

¿A donde fue a parar mi innovador negocio?

EDIT: acá esta el video del reportaje del Canal 13. a Mi gusto, no muy bueno, que quieren que les diga

Ministro de Economía vende el país a Microsoft

Ya no encuentran a que más sacarle plata.

En las últimas horas se ha destapado esta grave noticia. El Ministro de Economía Alejandro Ferreiro habría firmado el mes de mayo un acuerdo con Microsoft Corp, en el marco de la Estrategia Digital.

Ya se ha hablado mucho, y tal vez en las fuentes tienen un mayor conocimiento sobre el tema, pero de lo que puedo rescatar es que en un derroche de bondad MS pretende:

  • Intervenir la educación: ofrecer productos MS a estudiantes y hacer que lo Profesores los promuevan (¿convertir académicos en promotoras?)
  • Intervenir órganos del Estado: pretenden enlazar su plataforma con datos de organismos como el Registro Civil. La idea es que el ciudadano pueda estar sincronizado con información de estos organismos, de esta manera aumentar la participación con ellos (y de pasada, MS tiene acceso a 15 información de cada habitante del país).
  • Invertir en las Pymes: Regalando productos tan malos como MS Works, de tal modo que cuando necesiten software de verdad (no de juguete), estos tengan que comprar las versiones completas. De pasada, aumentar la dependencia de productos MS.
  • Domicilio digital: donde el ciudadano puede interactuar con los organismos del Estado. A su vez, el ciudadano tendrá a su disposición la plataforma Live (Messenger, Spaces, Mobile) implementando toda la infraestructura que se requiera (¿? pero si ya existe eso y es gratuito)

No me explayo más porque en verdad es una lata escribir tanto, pero ya saben que pueden consultar las fuentes.

Finalmente un Ministro de estado le da el visto bueno al acuerdo, vendiendo a precio huevo 15 millones de potenciales usuarios.

[sarcasmo] Que empresa privada más buena onda [/sarcasmo]
Me gustaría saber que opinan los diputados que promovieron el Proyecto de Acuerdo en pro del Software Libre al respecto.

Fuentes:

ACTUALIZACION:

Dejo acá un enlace a Digg con la noticia!. Haber si se puede subir a la portada, digg it!

Bonus track:

 

ACTUALIZACION 2:

otro Bonus Track:

La verdad que es muy latoso escribir la noticia completa, por eso si tienen mayor interés, por favor lean las fuentes y opinen. Yo cumplo con mi granito de arena con divulgar la noticia.

Surgió casi espontáneamente una idea sobre formar un “Frente de Liberación Digital” algo así como una agrupación que proteste en forma organizada contra este grave problema.

¿Donde me anoto?

EDIT: Gracias al comentario de Deimus, me han facilitado un enlace a FDL.

Neutralidad Tecnológica se ve amenazada en Chile.

Para quienes no están enterados de este tema, lo primero que debo decirles es que es de común interés para todos, no solo para quienes estamos más cerca del mundo de la tecnología.

Hoy en día vivimos en el futuro que nos contaban cuando niños, ya no es una minoría la que tiene acceso a la tecnología, la conectividad a internet a aumentado en forma masiva, tanto que hoy es un medio de comunicación de alta convocatoria, no así antaño.

Es por todo esto que el tema de la Neutralidad Tecnológica toma una importancia mayor.

Para ponerlo en palabras simples voy a dar ejemplos:

  • Pagamos un sobreprecio exagerado por conexiones a Internet de menor calidad, respecto a muchos países. ¿Hay neutralidad?
  • Quienes adquieren equipos nuevos están obligados a pagar licencia por un Sistema Operativo que tal vez no voy a usar. ¿Hay neutralidad?
  • Cuando quiero compartir mi trabajo en forma de un documento, pero mi software no es compatible con el del destinatario porque el formato no es un estándar abierto. ¿Hay neutralidad?
  • Cuando necesitamos (si, necesitar) navegar una página web que solo funciona en 1 navegador. ¿Hay Neutralidad?

Bueno ahora que se entienden los problemas, de lleno a la noticia.

Hace poco, se dio a conocer que el Congreso Nacional aprobó en la Cámara de Diputados un Proyecto de Acuerdo que promueve el uso de estándares y software libre en diversas reparticiones estatales.

Ahora apareció en el Mercurio un reportaje donde se hablaba de la ACTI y la “amenaza a la Neutralidad Tecnológica”. En tal reportaje se hablaba que el acuerdo en el congreso violaría tratado internacionales sobre la neutralidad tecnológica, y que iría CONTRA la tendencia mundial en la materia.

Curioso, cuando en la actualidad llegan noticias de una gran diversidad de países que se están pasando a estándares abiertos y software libre.

Espero que sea un “error” y no una mentira camuflada en un medio. Está claro que el único interés amenazado por la iniciativa es el de los monopolistas basados en estándares tecnológicos cerrados. La industria en el último tiempo a demostrado que el software libre puede ser tan rentable y lucrativo como las tecnologías propietarias cerradas. Es más, incluso abarata enormemente los costos.

Pero todavía hay quienes ven en el cambio un supuesto “costo mayor”, dado que se debería re-aprender y re-entrenar a los usuarios para que ocupen otro software. Pero es obvio que este tipo de gente se quedó en la era de piedra del software libre, quizás aun creen que para hacer una tarea cotidiana tan simple como redactar un documento es necesario levantar comandos por consola, siendo que es lo mismo que se conoce en la actualidad, simplemente abrir el documento con un par de clicks.

También leí el argumento de que “Neutralidad” significa poder escoger, y en ese caso, si a mi me parecía mejor una tecnología cerrada, tengo todo el derecho a ocuparla. Cierto, se tiene derecho a ESCOGER ocupar un recurso propietario, pero no a que me lo impongan.

Pero por sobre todo, MI OPINIÓ PERSONAL, es que todos debemos tener derecho a la interoperabilidad, a la misma calidad al mismo precio, y como usuario poder acceder a los mismos contenidos sin importar que plataforma estoy ocupando.

Fuente: FayerWayer

Haciendo documentación decente con Doxygen

Ya llevo un buen tiempo ocupando esta herramienta (y con ganas de escribir de ella), pero no había tenido tiempo.

Doxygen es un programa esencialmente de consola, que lee el código fuente de un programa, y a partir de los “comentarios” más las definiciones del propio código genera la documentación, la cual puede hacerse en varios formatos a la vez.

Dentro de los formatos de documento que más me interesan está disponible el HTML (varias páginas con enlaces entre sí) y LaTeX (el cual se puede pasar a PDF con pdflatex).

En el proyecto GDT, he estado traspasando la antigua documentación a los comentarios del código fuente.

Lo interesante de Doxygen, es que en sí trabaja parecido a un compilador, en el sentido de que analiza el texto, la sintaxis, reconoce el lenguaje,y además permite su propia sintaxis en los comentarios, de modo que cualquier cosa que uno escriba puede ser formateada al generar el documento, pero sin alterar la funcionalidad del programa.

Otro dato bueno, es que Doxygen permite ocupar una herramienta externa de Graphviz llamada “dot“. Este programita hace gráficos/diagramas. En conjunto con Doxygen, genera los diagramas de colaboración y herencia entre las Clases.

Finalmente, obtenemos un documento que hace referencia a todo nuestro programa, de calidad profesional, y que permite una facil publicación.

El único contra que llevo hasta el minuto, es que en la versión PDF, la documentación de GDT me está quedando un poquito pasada de peso (3 MB, con más de 500 páginas). Tal vez sea porque active la opción que incluye todos los métodos heredados en las Clases hijas, o quizás GDT tiene muchas Clases.

Hay 2 cosas que he descubierto muy bien aún, pero me parece que se pueden hacer son:

  • Agrandar el tamaño de las fórmulas matemáticas.
  • Incluir imágenes en el PDF (para contribuir con la obesidad del documento :P)

Para instalar en ubuntu:

sudo apt-get install doxygen graphviz tetex-base tetex-extra

Más información en la web oficial de Doxygen.

Como hacer una DLL en Visual C++ y que el mismo código funcione en otros compiadores.

Bueno, este problema es clásico, MS versus resto del mundo. Ya antes me ha ocurrido haciendo páginas web, tener que preocuparse de Internet Explorer y el resto de navegadores.

Mientras intentaba compilar GDT en Visual C++ 2005 Express, me encontré con un problema muy extraño.

Finalmente logre arreglar partes del código para que no me arrojara warnings en tiempo de compilación.

Pero en tiempo de enlazado (en el linker o vínculador) me daba mensajes raros cuando intentaba enlazar un programa de ejemplo con la librería.

El mensaje exactamente símbolo externo “símbolo” sin resolver. Ese símbolo podía ser una variable, una función, una clase, una una propiedad un método, etc…

El problema se produce porque en VC++ se deben exportar los métodos que se tomarán como “visibles” fuera de la librería dinámica (los métodos a los que el programa que se enlaza con ella tendrá acceso).

Según este tutorial de MSDN, la solución pasa por añadir __declspec(dllexport) antes de cada símbolo que se desea exportar a la DLL. El problema es que yo quiero que mi código sea multiplataforma, y esa sentencia claramente no me la va a tomar un compilador como GCC.

Esta es mi solución:

Seguir leyendo Como hacer una DLL en Visual C++ y que el mismo código funcione en otros compiadores.