Domingo 19 de mayo de 2013

Alcance Libre: Curso de Certificación Java Programmer
Maurico González

Maurico González
Linux Echoes

[Solución] Obtener sonido por HDMI

Si algo me gusta hacer, además de escribirles , es ver películas desde mi computadora, conectada vía HDMI a un televisor, en mi anterior laptop se debía activar el audio HDMI modificando GRUB, ahora que mi laptop es una Intel, teoricamente, debio funcionar desde el inicio, cosa que no fue así.

Aparentemente, el kernel que tiene la familia de ubuntu 13.04, tiene deshabilitado un modulo que permite el sonido por HDMI (algo que no debería ser, ya que yo usuario, solo espero que funcione al conectarse), sin embargo, tras un poco de búsqueda, encontré la solución, que consta de instalar dicho módulo.

Podemos descargar directamente el módulo de la página de launchpad e instalar manualmente el paquete.

fixO podemos agregar el repositorio e instalar desde la terminal: (recomiendo altamente este método)

sudo add-apt-repository ppa:ubuntu-audio-dev/alsa-daily
sudo apt-get update
sudo apt-get install oem-audio-hda-daily-dkms

Reiniciamos nuestra laptop (portatil) y listo, ya podremos usar el sonido por HDMI.

Saludos


Maurico González

Maurico González
Linux Echoes

Mi escritorio de Mayo

Con la entrada a exámenes finales y un poco más de tiempo para poder escribir y cambiar mi escritorio, les presento el look de mi kubuntu 13.04.

Solo con lo que necesito

Solo con lo que necesito

Los detalles de mi kubuntu:

  • Tema de iconos: Elementary USU.
  • Tema plasma: Smoother.
  • Plasmas: Cajonera, vista de carpeta, lancelot menu.
  • Tema cursor: Oxygen default

Sábado 18 de mayo de 2013

Maurico González

Maurico González
Linux Echoes

Smart Launcher [Android]

Como todo buen derivado de Linux, Android nos permite colocar nustros telefonos como queramos, colocando temas (Cyanogen Mod), diferentes lanzadores, fondos “vivos”, iconos, bueno, casi todo lo podemos cambiar.

Hoy mientras miraba las novedades en la Play Store, me encontré con “Smart Launcher”, un lanzador de aplicaciones, sencillo pero al mismo tiempo hermoso. Smart Launcher organiza automáticamente nuestras aplicaciones en cinco categorías, comunicación, internet, juegos, media, utilidades, configuraciones. La pantalla principal de este lanzador, solo muestra cinco enlaces directos, música, cámara, galería, teléfono, mensajes y navegador web; creo que esto es lo que más se ocupa, y smart launcher, lo coloca a primer alcance. Se lleva puntos extra por permitir la instalación de temas nuevos que te permiten hacer aun más personal nuestro teléfono.

Su sencillez implica el “sacrificio” de una característica de Android, que son los widgets en nuestro escritorio, sin embargo, esto se puede solucionar utilizando la versión de paga del lanzador.

Como dicen una imagen dice mas que mil palabras, por lo que les presento como lo tengo en mi actual LG optimus HUB.

Pantalla de inicio

Pantalla de inicio

Un lindo tema al estilo KDE

Un lindo tema al estilo KDE

Les dejo el enlace de instalación de Smart Launcher


Jueves 16 de mayo de 2013

Planeta Laguna: No aparece la opción de comprimir una carpeta en Nemo
The Open Enchilada Project: The Open Enchilada Project S06E08: Cumple de Mike

Martes 14 de mayo de 2013

Planeta Laguna: Organización de espionaje presenta manual para búsquedas en Internet
Oswaldo Villa

Oswaldo Villa
Villatux Blog <--

Internet gratis!! con Telcel y Movistar (con banda ancha USB)

La configuración aquí mostrada fué realizada en Ubuntu-Linux 13.04 , pero debe funcionar en cualquier distro linux.


NOTA:  
* Necesitas poner un chip que no tenga saldo para la conexión
* Si tu USB viene con un chip , cámbialo por uno de cualquier celular, para que no te gaste el saldo que tienes, o si no tienes saldo pues úsala xDD

ASEGURARNOS QUE DETECTA BIÉN LA USB



* La insertamos y esperamos a que la detecte la computadora.  lo sabemos al dar clic en las redes inalambricas por que dirá :"Banda ancha movil"
* Damos clic ahi para seguir los pasos que nos indica:
  - Lugar
  - Compañia de telefonía celular

COMPROBAR
Ya que la detecta correctamente podemos probar, al abrir nuestro navegador web (en mi caso Firefox)  y buscar cualquier pagina ej. www.google.com.mx  esto nos redireccionará a una pagina en donde nos dice que no tenemos saldo para navegar en internet y que paguemos para hacerlo :p



REGISTARNOS EN

https://www.hotsplots.de/en/register.html



 Despues de registrarnos y confirmar el correo que nos llegó a la bandeja de entrada de nuestro correo, podemos ingresar a la pagina con nuestra cuenta:


Ya cuando estemos logeados con nuestra cuenta,  podemos ingresar al siguiente enlace :

https://www.hotsplots.de/en/my-hotsplots/my-userdata/openvpn-key.html

de donde descargaremos los archivos necesarios para conectarnos a la vpn gratuita con nuestra cuenta que acabamos de crear. (Bbajamos la version para UNIX/Linux):


REALIZAR LA CONEXIÓN A LA VPN DESDE TERMINAL

Abrimos la terminal de sistema y nos situamos en el directorio donde descargamos el archivo .tar como superusuario:

villatux#cd /home/villatux/

Descomprimimos:

villatux#tar -xvf openvpn_key.tar

 Nos situamos en el directorio de las configuraciones de la VPN:

villatux#cd openvpn_key

Instalamos openvpn si es que no lo tenemos :


villatux# apt-get install openvpn

Ejecutamos openvpn para que lea las configuraciones que descargamos:

 villatux# openvpn hotsplots.conf

y veremos algo como esto:

 villatux# openvpn hotsplots.conf
Mon May 13 17:33:40 2013 OpenVPN 2.2.1 x86_64-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Feb 13 2013
Mon May 13 17:33:40 2013 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA.  OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Mon May 13 17:33:40 2013 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Mon May 13 17:33:40 2013 Control Channel MTU parms [ L:1545 D:138 EF:38 EB:0 ET:0 EL:0 ]
Mon May 13 17:33:40 2013 RESOLVE: NOTE: vpn.hotsplots.net resolves to 5 addresses
Mon May 13 17:33:40 2013 Data Channel MTU parms [ L:1545 D:1300 EF:45 EB:4 ET:0 EL:0 ]
Mon May 13 17:33:40 2013 Fragmentation MTU parms [ L:1545 D:1300 EF:45 EB:4 ET:0 EL:0 ]
Mon May 13 17:33:40 2013 Local Options hash (VER=V4): '35ec189c'
Mon May 13 17:33:40 2013 Expected Remote Options hash (VER=V4): '9b1c411c'
Mon May 13 17:33:40 2013 UDPv4 link local (bound): [undef]
Mon May 13 17:33:40 2013 UDPv4 link remote: [AF_INET]46.228.204.146:1194
Mon May 13 17:33:41 2013 VERIFY OK: depth=1, /C=DE/ST=Berlin/L=Berlin/O=hotsplots_GmbH/OU=certificate_authority/CN=www.hotsplots.de/emailAddress=ca@hotsplots.de
Mon May 13 17:33:41 2013 VERIFY OK: nsCertType=SERVER
Mon May 13 17:33:41 2013 VERIFY OK: depth=0, /C=DE/O=hotsplots_GmbH/OU=Gateway_Server/CN=VPN1
Mon May 13 17:33:44 2013 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Mon May 13 17:33:44 2013 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Mon May 13 17:33:44 2013 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Mon May 13 17:33:44 2013 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Mon May 13 17:33:44 2013 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 1024 bit RSA
Mon May 13 17:33:44 2013 [VPN1] Peer Connection Initiated with [AF_INET]46.228.204.146:1194
Mon May 13 17:33:46 2013 TUN/TAP device tun0 opened
Mon May 13 17:33:46 2013 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Mon May 13 17:33:46 2013 /sbin/ifconfig tun0 10.44.40.194 pointopoint 10.44.40.193 mtu 1500
Mon May 13 17:33:46 2013 Initialization Sequence Completed


Hasta donde dice  " Initialization Sequence Completed"  nos indica que la conexión fué realizada con éxito.  y ahora a navegar , que para eso es el internet xDD

Lunes 13 de mayo de 2013

The mythical and handy Chef (1st Part… What is Chef?)

Chef is an automation platform that transforms infrastructure into code. Stop thinking in terms of physical and virtual servers. With Chef, your real asset is the code that brings those servers and the services they provide to life. An automated infrastructure can accelerate your time to market, help you manage scale and complexity, and safeguard your systems.\

Chef is based on a key insight: You can model your evolving IT infrastructure and applications as code. Chef makes no assumptions about your environment and the approach you use to configure and manage it. Instead, Chef gives you a way to describe and automate your infrastructure and processes. Your infrastructure becomes testable, versioned and repeatable. It becomes part of your Agile process.

Chef relies on reusable definitions known as cookbooks and recipes that are written using the the Ruby programming language. Cookbooks and recipes automate common infrastructure tasks. Their definitions describe what your infrastructure consists of and how each part of your infrastructure should be deployed, configured and managed. Chef applies those definitions to servers to produce an automated infrastructure.

Cookbooks and recipes are made from building blocks called resources. Many resources are included in Chef, but you can also create your own, in particular to deal with legacy systems. Also, you can interact with the community of Chef users, numbering in the tens of thousands, who are constantly sharing cookbooks, recipes and advice. There’s a good chance you’ll find someone who’s worked on situations similar to yours. The community will support your success, and Opscode’s professional services are there to help you as well.

chart-basic-installation.jpg

The Chef server stores your network’s configuration data and recipes. The data describes all the “ingredients” that make up your infrastructure. Recipes are step-by-step instructions for assembling those ingredients together into a complete, running system. The Chef client is a program that runs the recipes on nodes of the network, which may be physical or virtual servers either on-premise or in the cloud. You use a workstation to update the state of the Chef server from time to time, as your infrastructure evolves. All changes are captured using revision control.

Getting started with Chef
Want to learn more? The best way is to start playing.

Sign up for a free trial of Hosted Chef.
Get hands on with Chef quickstart guides on #learnchef.
Take a look at some cookbooks.
Take a look at the documentation.
If you want a little help getting up to speed with Chef, try our Chef Fundamentals training.

So after all this info… are you ready for the real cool stuff? … next post

Mounting an Amazon S3 bucket as a local file system

1.- Download the latest version of s3fs (which is a FUSE backend for S3) from http://code.google.com/p/s3fs/downloads/list

mkdir /opt/s3fs
cd /opt/s3fs
wget http://s3fs.googlecode.com/files/s3fs-r191-source.tar.gz

2.- Unpack it:

tar -xvzf s3fs-r191-source.tar.gz

3.- Install dependencies for building:

yum install libxml2-devel libcurl-devel fuse fuse-devel fuse-libs gcc gcc-c++

4.- Build and install the code (this copies the binary s3fs to /usr/bin):

make
make install

5.- Edit a config file for storing your keys (you can check them out under AWS Menu -> Your Account -> Security Credentials)

vim /etc/passwd-s3fs
<access key>:<secret_key>
chmod 640 /etc/passwd-s3fs

6.- Create a directory for mounting the S3 filesystem and mount it. Note that you can mount the s3fs anywhere you like:

/usr/bin/s3fs bucketname /mnt/mountpoint

mkdir  /media/s3vol
/usr/bin/s3fs bucket_name -o default_acl=public-read  /media/s3vol

7.- Check it is woking correctly:

grep s3fs /etc/mtab
cd /media/s3vol
ls -lah
Alcance Libre: ¿La información en Internet desaparece? Wayback Machine web.archive.org

Domingo 12 de mayo de 2013

Héctor Reyes

Héctor Reyes
Héctor

OPERA DRAGONFLY

Una de las herramientas que ha hecho indispensables al momento de desarrollar proyectos web es sin duda Opera Dragonfly, el siguiente video describe un poco de lo que se puede hacer con el:



Esta es una herramienta que viene incluida con Opera, solo falta presionar unas cuantas teclas y se lanzará (Ctrl + Shift + I en Windows y Linux, ⌘ + ⌥ + I en Mac.), posiblemente les recuerde a Firebug, a titulo personal nunca lo he usado, en Dragonfly e encontrado la solución a todas mis necesidades, pero mi intención no es compararlo con Firebug ni describir como usar Dragonfly, lo que describiré es como instalarlo en nuestra maquina local o en el servidor para que este disponible para el equipo de desarrollo.

Comenzare por decir que Opera Dragonfly se encuentra liberado bajo la Apache License v2.0 y lo podemos descargar del repositorio en github de Opera, pero antes de usar el archivo que se descargo es necesaria otra herramienta, esta se llama Dragonkeeper y la descargamos del repositorio en github, una vez que se ha desempaquetado lo único que hay que hacer es ingresar a dragonkeeper-master y ejecutar:

python setup.py install
Solo hay que tener instalado "setuptools" de python, esto instalara lo que se necesita para ejecutar Opera Dragonfly, dentro del mismo directorio se encuentra otro llamado dragonkeeper y en este se encuentra dragonkeeper.py, antes de poder ejecutarlo hay que modificar la linea 18, originalmente se encuentra así:

hostname, aliaslist, ips = socket.gethostbyname_ex(socket.gethostname())
La modificación se hace ya que al momento de ejecutarlo arrojaría el siguiente mensaje de error:

socket.gaierror: [Errno -2] Name or service not known
La modificación queda de la siguiente manera:

hostname, aliaslist, ips = socket.gethostbyname_ex('localhost')
Ahora solo falta ingresar a dragonfly-master (el primer zip que se descargo) en este directorio se encuentra src y ya no es necesario ejecutar build.sh ya que todo lo que se requiere se encuentra dentro de src, pero si quieren tener las traducciones al español y generar unos cuantos archivos y reemplazar con estos los que se encuentran en src, se puede hacer, que fue la opción que yo tome.

Ahora lo que hay que hacer es tomar todo el contenido de src y copiarlo al directorio dragonkeeper que se encuentra en dragonkeeper-master y ejecutar:

python dragonkeeper.py
Deberíamos de ver el siguiente mensaje:

server on: http://localhost:8002/
Ingresamos a http://localhost:8002/client-en.xml o a http://localhost:8002/client-es-LA.xml (si se ejecuto build.sh) y deberíamos de ver el siguiente mensaje en ingles o español según sea el caso:

Waiting for host connection on port 0 / Esperando una conexión anfitrión en el puerto 0.

Y finalmente hay que configurar Opera para que al momento de ejecutar a Dragonfly busque el servicio en nuestro equipo o servidor, en la barra de dirección escribimos:

opera:config#DeveloperTools|DeveloperToolsURL
Y lo que hay que modificar es el parámetro Developer Tools URL y colocar http://localhost:8002/client-es-LA.xml (el xml dependerá del idioma que gusten emplear) y con esto se tiene Opera Dragonfly ejecutándose de manera local ya no desde los servidores de Opera

Héctor Reyes

Héctor Reyes
Héctor

GARTOON

Si hay algo que extraño de las versiones anteriores de Gnome es que podía usar los iconos que Silvestre Herrera ha hecho, el único que puedo usar en la actual versión de Gnome es Neu



No se que pase con los otros iconos que no los muestra y los cambia por otros :down: así que me di a la tarea de tratar de hacer funcionar aquellos que solía usar y que actualmente no se visualizan de manera correcta en mi sistema, no se si a todos les pase pero a mi si :doh:

El primero con el que he estado trabajando es Gartoon, investigando me encontré con que GNUtoon/Ubuntoon es una derivación de este tema que posteriormente suspendió su desarrollo y se generó Gartoon Redux .

Después de modificar el archivo index.theme basándome en el de Neu, logré que los iconos se mostraran de manera correcta



Pero al ver que había derivaciones del original Gartoon, mezcle los iconos que contenían ambos proyectos, teniendo un conjunto mayor de iconos, claro faltan algunos programas o extensiones. Si gustan descargarlo se encuentra disponible en este enlace, en un tiempo que tenga libre trabajare para que se muestre bien alguno de los iconos de Silvestre Herrera
LogicalBricks Solutions: Poder de la consola, con el programa De Puntitas

Viernes 10 de mayo de 2013

LogicalBricks Solutions: Curso de Diseño Gráfico con GNU/Linux
Oswaldo Villa

Oswaldo Villa
Villatux Blog <--

Cambiar codificación de ficheros con VI > VIM

Una vez que el archivo se encuentra abierto con VIM y suponiendo que el archivo esta codificado con iso-8859-1 (latin1) se debe teclear en el modo comandos la siguiente línea.

    :set fenc=utf-8

Si el archivo esta codificado con utf-8 y se desea pasar a iso-8859-1 se debe escribir la siguiente línea.

    :set fenc=iso-8859-1


Nota: No deben existir espacios entre fenc, el igual y el tipo de codificación que se utilizará.


Este comando solo permitirá cambiar la codificación del archivo que se encuentra abierto, sin embargo puede ser necesario editar la codificación de varios archivos para lo cual se puede ejecutar el siguiente comando en la consola de linux.

    find -name '*.php' -exec vim {} '+set fenc=utf-8' '+x' \;

find -name '*.php' permite buscar uno o más archivos dentro del directorio y de los directorios que se encuentran en su interior que coinciden con el parámetro de búsqueda.
-exec permite ejecutar un comando sobre los archivos que son encontrados.
vim {} '+set fenc=utf-8' permite cambiar la codificación de los archivos que coinciden con la búsqueda realizada.
Renich Bon Ciric

Bitwig: Estación de producción musical para Linux!

http://bitwig.com/

Ok, aún no puedo creerlo!

Es posible que, si has leido mi blog, te darás cuenta de que tengo una banda. Soy músico y me gusta mucho componer. De hecho, tengo varios discos en:

http://jamendo.com/artist/Renich

http://jamendo.com/artist/introbella

Durante mucho tiempo, me frustré mucho por no poder producir mi música en GNU & Linux al 100%. Me ha molestado mucho tener que usar Windows para ésto. Aún existiendo tanto software increible para grabación en Linux, han sido varios los problemas que he enfrentado:

- No sirve mi interface en Linux: M-Audio Firewire-1814
- No he encontrado un software con el workflow adecuado
- No he podido conseguir sonidos sampleados adecuados o en variedad suficiente.

Ante estos problemas, he insistido un montón tanto a Propellerheads Reason, a Ableton Live y a M-Audio que empiecen a colaborar con la comunidad para hacer disponibles sus softwares y drivers para GNU & Linux! A Propellerheads les vale madre. En Ableton ni siquiera me han contestado. M-audio pareció querer colaborar (Ver ffado) pero nunca se concretó al parecer.

No todo ha estado perdido. Existen projectos como Bitwig o como Pianoteq que se están poniendo las pilas y harán mi sueño realidad de poder producir un disco; y de tocar en vivo usando 100% Linux!

Al parecer, Bitwig tiene un muy buen acercamiento. Se parece mucho el workflow a Ableton Live. Creo que, ésto, abrirá un gran nicho de mercado. Mucha gente usará este tipo de software; comprándolo! Claro! No tendrás que gastar dinero en licencias de antivirus, sistemas operativos, utilerías; teniendo más dinero para invertir en ellos! Muy inteligente y parte de mis argumentos en los emails que he mandado.

Actualmente, le mandé un correo a Bitwig; pidiéndoles que me incluyan para ayudarlos a empaquetar para Fedora su producto; aún cuando tenga que firmar un NDA o algo así. Además, me gustaría ser beta tester. Estoy seguro que varios Fedorianos se apuntarán para ayudar a debuguear el software. Ojalá y pase algo con eso.

La neta, felicito a los de Bitwig y a los de Pianoteq por sus grandes esfuerzos. Cada vez está más cerca el Home Studio o el Pro Studio para los productores acostumbrados a estos workflows; como yo ;)

Jueves 09 de mayo de 2013

Rafael Bucio

Rafael Bucio
Rafael Bucio ⠠⠵

Nuevos iconos de facebook

Son los iconos que se usan, en el chat pero ahora se pueden poner en los títulos de las imagenes y publicaciones en la biografías del facebook , 2013.


☔ : Paraguas
⚡ : Rayo
☀ : Sol
☁ : Nube
☕ : Taza de café o te creo que es no sé
❤ : Corazón
☺ : Cara sonrojada
♥ : Corazon pequeño
☝ : Manos juntas
✌ : Amor y paz
… ver más:  yahoo.

Planeta Laguna: ¿Necesito un teléfono de última generación?
Planeta Laguna: Leer desde nuestros dispositivos móviles
Gunnar Wolf

Gunnar Wolf
Gunnar Wolf

Still more e-voting related rants

Some weeks ago, I contacted Rosa Martínez, a tech journalist with some questions regarding what I regarded as a trick interview with an e-voting salesman. Well, not only she offered me to publish an answer to that interview, but she also offered me to write another article on a second site she also works with.

So, I accepted. Being quite time-deprived, although I managed to send her the first answer quickly, by April 22, I only sent the second article yesterday night.

Anyway, the links. The texts are published in Spanish:

Planeta Laguna: Las mejores Portadas para Facebook

Miércoles 08 de mayo de 2013

Planeta Laguna: Chica Vivian
Planeta Laguna: Me sé cruel

Martes 07 de mayo de 2013

Luis Armando Medina

Luis Armando Medina
Como Instalar Linux

Como instalar Nemo en Ubuntu 13.04

Ubuntu 13.04 es un sistema que me ha agradado, es mas estable y rápido que las versiones anteriores, trabajo en general mas agusto y todo sería perfecto si no hubieran amputado a Nautilus el gestor de archivos de Gnome que biene en Ubuntu 13.04. En mi opinión esta aberración e intento de gestor de archivos llamado Nautilus me hace la vida imposible pues no puedo saber ni siquiera cuanto espacio libre tengo… tal vez los nefastos desarrolladores de Gnome o de Nautilus pensaron que son datos demasiado complicados para el usuario común… como dijo Linus Torvalds son unos “interface nazis”. Pero como el software libre es maravilloso hay manera de arreglar las cosas y ponerlas a tu gusto y por eso te digo como instalar Nemo el gestor de Cinnamon que rescata las utilidades que le quitaron a Nautilus ademas de las mejoras que la gente de Gnome nunca quiso aceptar y que hacen de este gestor de archivos una maravilla. Sigue estos pasos para instalar Nemo en Ubuntu 13.04

Abre una terminal y teclea los siguientes comandos:

sudo add-apt-repository ppa:gwendal-lebihan-dev/cinnamon-stable

sudo apt-get update

sudo apt-get install nemo

Si quieres instalar otro extras de Nemo puedes instalarlos también con este comando

sudo apt-get install nemo-compare nemo-dropbox nemo-fileroller nemo-pastebin nemo-seahorse nemo-share

Luego de instalarlo puedes arrancarlos con Alt+F2 y tecleando nemo
Cuando arranque puedes hacer click derecho en el icono y seleccionar “Mantener en el lanzador” y acomodarlo donde mejor te guste en el lanzador de Ubuntu 13.04.

Asi se ve Nemo en Ubuntu 13.04:

como instalar nemo en ubuntu 13.04

Gunnar Wolf

Gunnar Wolf
Gunnar Wolf

Talking about Debian while Debian was getting released

Last Saturday, I was invited to talk about Debian to Hackerspace DF, a group that is starting to work at a very nice place together with other collectives, in a quite centric place (Colonia Obrera). I know several of the people in the group (visited them a couple of times in the space's previous incarnation), and wish them great luck in this new hackerspace!

Anyway — I was invited to give an informal talk about Debian. And of course, I was there. And so was Alfredo, who recorded (most of) it.

So, in case you want to see me talking about how Debian works, mostly on a social organization level (but also regarding some technical details). Of course, given the talk was completely informal (it started by me standing there, asking, "OK, any questions?"), I managed to mix up some names and stuff... But I hope that, in the end, the participants understood better what Debian means than when we started.

Oh, and by the end of the talk, we were all much happier. Not only because I was about to shut up, but because during my talk, we got notice that Debian 7.0 "Wheezy" was released.

Anyway — If you want to see me talking for ~1hr, you can download the video or watch it on YouTube.

Emerson Posadas

Emerson Posadas
toxickore BLOG

La tecnificación del chisme (Regina dixit)

En estos días de modernidad e inventos del hombre blanco, se me ocurrió organizar bien todos mis contactos telefónicos. Nombres, apodos, apellidos, fotografía.

¿Y de donde iba a sacar la fotografía de todos esos? Facebook pensé.

Si, terminé de completar esa tarea de organizar los contactos y días después empecé a reflexionar (de nueva cuenta) sobre las dimensiones que está tomando el replicado masivo de falacias. Me llamó la atención que estaban mencionando sobre la extinción del rinoceronte negro.

Imagen que circula por facebook respecto a la extinción del rinoceronte negro
Pues, para no variar, hay que tener un poco de sentido objetivo al respecto. Cientos de miles de personas comentan y se desgarran las medias sobre lo malo y horrible que es el ser humano. Y dijera la morsa, ¿hicieron algo en su momento para evitarlo?. Lo mas probable es que no y con unos simples "like" o "me gusta" se limpien conciencias.
Pero mi comentario no era al respecto de las conciencias, sino mas bien de la información que la multitud de millones de usuarios ahora otorga a esa red social.

Nadie se detuvo a pensar:
  • ¿Será verídica esa información?
  • ¿Cuál es la fuente informativa?
 Me di a la tarea de hacer una breve búsqueda por internet y un medio que no fuera facebook.

El artículo dice:  "In 2011 it was declared extinct by the IUCN"

Ups, les llegó tarde la noticia ¿non? apenas se vienen a consternar por un evento que tuvo lugar en el año 2011. Pero ahí van todos replicando esto, en masas de millones, dejando en el imaginario colectivo una idea que no se dieron ni la mínima molestia de confirmar. Y no se diga los cientos de frases motivacionales, de chismes y basura y mas basura.

Resumo brevemente lo que se puede uno encontrar por allá en estos días con estos breves pero certeros tuits:




Lo que da miedo, es la posibilidad de que como en los medios convencionales, se manipule la información pública, viralizada por los medios electrónicos de hoy en día a una velocidad impresionante. Un HG Wells y la guerra de los mundos pero con objetivos mas siniestros.

La opinión de un simple ser humano.
José Luis Moreno G.

José Luis Moreno G.
akheron-linuxakheron-linux

Çağı Yakalamak

 

İnternette oyun oynamayı çok isteyip çeşitli nedenlerden dolayı bu kültürden uzak kalmış insanlardan birisiyim ben. Hem casino vari oyunların bugüne kadar bize empoze ettiklerinden dolayı, hem de internet ortamında kişisel bilgilerimi, kart bilgilerimi paylaşmaktan çekindiğimden dolayı gibi sebeplerden bahsedebilirim. Çoğu insanında aynı tereddütü yaşadığını düşünüyorum.

Sanal dünyada o kadar çok kalpazanlık haberi okudum ki sanırım bu şekilde ön yargılı olmam pekte anlamsız değil. Fakat artık çevreme baktığımda herkes bir tıkla hem de küçücük cihazlarla, akıllı telefonlarla birçok işini halledebiliyor. Dürüst olmak gerekirse bu kendimi kötü hissetmeme neden oluyor. Kendimi çağın gerisinde kalmış hissinden bir türlü kurtaramıyorum. Sanırım bu konuda biraz öz güvene sahip olup, olumlu ya da olumsuz bir deneyim yaşamalıyım. Ön yargılar kendinizi kötü hissetmenize sebep olduğu anda en iyi müdahaleyi kendinize siz yapabilirsiniz. Kimin ne söylediği aslında pek takılmamanızı tavsiye ederim.

Luis Armando Medina

Luis Armando Medina
Como Instalar Linux

Como Instalar Cinnamon 1.8 en Ubuntu 13.04 o en Debian 7

Recientemente ha sido anunciado Debian 7 y también ha sido liberado Cinnamon 1.8 un novedoso shell que ha desarrollado la gente de Linux Mint para crear una opción a Gnome Shell que de la experiencia de escritorio a los entornos modernos pero con la experiencia de uso de un escritorio que tradicionalmente siempre se ha tenido, aunque buscando ser siempre útil, práctico y con características que los usuarios de esta distro han solicitado siempre. Para instalar Cinnamon 1.8 en Ubuntu o en Debian 7 puedes seguir unos cuantos pasos para tenerlo en Ubuntu o en Debian.

Como siempre primero abre una terminal con la combinación de teclas Ctrl+Alt+T y luego agrega los repositorios de Linux Mint a la lista de origenes de software:

En Ubuntu:

$ sudo -s -H
# echo “deb http://packages.linuxmint.com/ debian main import backport upstream romeo” >> /etc/apt/sources.list

En Debian:

$ su -
# echo “deb http://packages.linuxmint.com/ debian main import backport upstream romeo” >> /etc/apt/sources.list

Luego actualiza la lista de paquetes y agrega la keyring de Linux Mint para autentificar los paquetes de software que vas a instalar, teclea estos comandos:

# apt-get install linuxmint-keyring
# apt-get update

Por último solo instala Cinnamon 1.8 en Ubuntu 13.04 o en Debian 7

# apt-get install cinnamon

Aquí una imagen de Cinnamon en Ubuntu 13.04 trabajando como entorno.

como instalar cinnamon 1.8 en ubuntu

Lunes 06 de mayo de 2013

Planeta Laguna: Serpientes y escaleras
Luis Armando Medina

Luis Armando Medina
Como Instalar Linux

Banda ancha Nokia CS-11 en Ubuntu y Linux Mint

Como configurar y poner a funcionar una Banda Ancha (Telcel) Nocika CS-10, CS-11 o CS-15 en Ubuntu o Linux Mint, es muy sencillo, lo primero que tienes que hacer es descargar el software para habilitar el dispositivo ya que requiere algunos firmwares de nokia. Lo siguiente es realizar estos sencillos pasos:

Actualización: Nokia ha eliminado el soporte a muchos productos incluyendo el CS-11 por lo que no es posible encontrar el archivo para instalar este equipo. Pero es posible descargar el archivo aquí: nokia-zerocd_0.2-10_all.deb

1.- Si ya descargaste el software para linux (en la parte final de la página) descomprime el archivo Linux_2.1.zip, luego, busca dentro de la carpeta “linux” el archivo “nokia-zerocd_0.2-10_all.deb” e instala este paquete haciendo doble click en el archivo o con el comando siguiente:

"sudo dpkg -i nokia-zerocd_0.2-10_all.deb"

2.- Conecta la Banda Ancha a tu puerto USB. El sistema va a cargar el dispositivo como un medio de almacenamiento, pero debes abrir la carpeta personal para expulsar el dispositivo que muestra el almacenamiento USB.

3.- Luego ve al ícono de “Redes” en la barra de estado (arriba a la izquierda) y al pulsar busca la sección “Banda Ancha Movil” y da click para que quede activa (“On”)

Si es la primera vez que lo configuras te mostrará una pantalla, ahí debes seleccionar tu país, “México” en mi caso, luego te mostrará los operadores que están configurados para tu país, en mi caso es “Movistar” y “Telcel”, en mi caso seleccioné “Telcel” luego te muestra otra opción “Telcel Predeterminado” selecciónala y da click en Aceptar.

Vas a mirar que el LED de la Banca Ancha parpadea en rojo y cambiará a otro color cuando esté lista para conectarse a la red Celular.

4.- En el ícono de “Redes”, da click en la red “Telcel Predeterminado” para conectarte y poder navegar por la banda ancha.

Disfruta de internet en cualquier lugar, los dispositivos de internet por GSM pueden ser muy útiles pero siempre ten en cuenta que aun es un servicio caro, recuerda que debes conocer los detalles de tu plan de datos pues puedes incurrir en costos muy altos y es mejor evitarse sorpresas al momento de recibir tu factura. Como vez en Ubuntu / Linux Mint también puedes disfrutar de Internet por Banda Ancha de forma muy sencilla.

Luis Armando Medina
www.luisarmandomedina.com

Oswaldo Villa

Oswaldo Villa
Villatux Blog <--

Importar Archivos .DBF a MySQL con dbf2mysql

Recientemente me interesé en consultar algunos datos de algunas personas por X motivos, el problema es que estos datos estaban en una base de datos de FoxPro  .DBF  y ya estaba integrada a un software para windows. Esto no es para mi nada grato ya que no tengo windows instalado en mis computadoras. 

Para poder ver mis datos hice la importación a mysql y con ello hacer sencillas consultas SQL o también hacer una interfaz web para las consultas.

En esta ocasión utilicé el software "dbf2mysql" disponible en la lista de repositorios de ubuntu, y lo instalas super sencillo:

1) Instalar dbf2mysql:

sudo apt-get install dbf2mysql


Las banderas más importantes de dbf2mysql són los siguientes:

    -h indica el servidor a donde conectarse
    -U usuario MySQL
    -P password MySQL
    -d base de datos donde se insertaran los datos
    -t tabla donde se insertarán los datos
    -c crea la tabla si no existe
    -cc crea la tabla, pero no inserta registros
    -f traduce los nombres de campo a minúsculas
    -n no se agrega ‘NOT NULL’ en las sentencias de creación de tabla
    -o exporta solo los campos listados (Ej. -o field1,field2…)
    -s substituye permite cambiar nombres de campos (Ej. -s oldName1=newName1,oldName1=newName1)
    -i lista de campos a indexar. Genera UN indice por campo (Ej. -i field1,field2…)
    -r quita espacios antes y después de datos alfanuméricos
    -v muestra detalles de la conversión
    -vv muestra más detalles
    -vvv incluye informe de progreso

ya teniendo instalado el programa, y sabiendo como se utiliza manos a la obra:

2) Creo una base de datos MySQL vacia:

mysql -u [DBUSER] -p -e "CREATE DATABASE `[DBNAME]`"

3) Por último lanzamos el siguiente comando para indicarle que importe el archivo dbf a la base de datos local, en la tabla [DBTABLE] de la base de datos [DBNAME], entrando con el usuario [DBUSER] y el password [DBPASS]. Mediante el flag -c forzamos a que cree la tabla si no existe y con -f le indicamos que traduzca los nombres de los campos a minusculas:

dbf2mysql -h localhost -U [DBUSER] -P [DBPASS] -d [DBNAME] -t [DBTABLE] -c -f /home/villatux/miarchivo.dbf

Esta importación no tendra en cuenta algunos atributos importantes de la tabla como, por ejemplo, los campos autoincrementales.

Si tenemos algun problema de este tipo, es recomendable crear la estructura de la tabla antes de realizar la importación.
David García del Valle

David García del Valle
Dave G. | Blog

Before you install Amavis don't forget the right packages !

My logs of Amavis said:

**Unmatched Entries**
  No decoder for       .tnef: 1 Time(s)
  Found decoder for    .tar  at /usr/bin/pax: 1 Time(s)
  Found decoder for    .7z   at /usr/bin/7zr: 1 Time(s)
  Internal decoder for .zip : 1 Time(s)
  Found decoder for    .rar  at /usr/bin/unrar-free: 1 Time(s)
  Internal decoder for .tnef: 1 Time(s)
  Found decoder for    .deb  at /usr/bin/ar: 1 Time(s)
  Creating db in /var/lib/amavis/db/; BerkeleyDB 0.42, libdb 4.8: 1 Time(s)
  Found decoder for    .zoo  at /usr/bin/zoo: 1 Time(s)
  Found decoder for    .arc  at /usr/bin/nomarch: 1 Time(s)
  starting.  /usr/sbin/amavisd-new at mail.openetworks.net amavisd-new-2.6.4 (20090625), Unicode aware, LANG="en_US.UTF-8": 1 Time(s)
  AM.PDP-in proto code loaded: 1 Time(s)
  Using primary internal av scanner code for ClamAV-clamd: 1 Time(s)
  Found decoder for    .cpio at /usr/bin/pax: 1 Time(s)
  Local-out proto code loaded: 1 Time(s)
  Found decoder for    .doc  at /usr/bin/ripole: 1 Time(s)
  Found decoder for    .rpm  at /usr/bin/rpm2cpio: 1 Time(s)
  SQL::Quarantine      NOT loaded: 1 Time(s)
  Found decoder for    .Z    at /bin/uncompress: 1 Time(s)
  Found decoder for    .cab  at /usr/bin/cabextract: 1 Time(s)
  Internal decoder for .gz  : 1 Time(s)
  No decoder for       .lha : 1 Time(s)
  Found decoder for    .bz2  at /bin/bzip2 -d: 1 Time(s)
  Found decoder for    .exe  at /usr/bin/unrar-free; /usr/bin/arj: 1 Time(s)
  No decoder for       .F   : 1 Time(s)
  Found decoder for    .arj  at /usr/bin/arj: 1 Time(s)
  Internal decoder for .mail: 1 Time(s)
  Found decoder for    .lzo  at /usr/bin/lzop -d: 1 Time(s)

Those issues is because you don't have the right packages you need to install the next packages:

Perl modules:

Archive::Zip   (Archive-Zip-x.xx) (1.14 or later, currently 1.30)
Compress::Zlib (Compress-Zlib-x.xx) (1.35 or later, currently 2.060)
Compress::Raw::Zlib (Compress-Raw-Zlib) (2.017 or later)
MIME::Base64   (MIME-Base64-x.xx)
MIME::Parser   (MIME-Tools-x.xxxx) (currently 5.504)
Mail::Internet (MailTools-1.58 or later have workarounds for Perl 5.8.0 bugs)
Net::Server    (Net-Server-x.xx) (version 2.0 adds support for IPv6)
Digest::MD5    (Digest-MD5-x.xx) (2.22 or later)
Time::HiRes    (Time-HiRes-x.xx) (1.49 or later)
Unix::Syslog   (Unix-Syslog-x.xxx)
Mail::DKIM     (Mail-DKIM-0.31 or later, currently 0.40)

The following external programs are used for decoding/dearchiving
if they are available:
  compress, gzip, bzip2, nomarch (or arc), lha, arj (or unarj), rar (or unrar),
  unzoo (or zoo), pax, cpio, lzop, freeze (or unfreeze or melt), ripole,
  tnef, cabextract.
Self-extracting archives (executables) can be of types zip, rar, lha or arj,
and are only recognized when the corresponding dearchiver is available.

optional Perl modules:
  Mail::SpamAssassin          for doing spam scanning (latest version)
  DBI with appropriate DBD::* if using SQL lookups or SQL logging/quarantining
  Net::LDAP                   if using LDAP lookups
  ZeroMQ or ZMQ::LibZMQ[2,3]  Perl module interface to libzmq



Don't forget to run sa-update !!

Reference 
http://www.ijs.si/software/amavisd/INSTALL.txt

Domingo 05 de mayo de 2013

Debian 7.0 Wheezy

Y bueno ayer, como había sido anunciado [1] se liberó Wheezy (Debian 7.0) [2] después de un buen rato, indispensable si piensas actualizar leer las notas de la versión (reléase notes) [3] o la guía de instalación si lo piensas instalar desde cero [4], en todo caso en mi desktop y portátil ya está, también probé en uno de mis servidores, especialmente no el de producción y tengo las siguientes impresiones.

Se agradece la actualización del kernel, apache y php, sin embargo para servidores, la versión de php incluida rompe con suoshin (aunque existe un camino no oficial para aplicar el parche), moodle que bueno ya he mencionado que ya tengo algunos problemas con esto, sin embargo encontré muy bien documentado lo que ha estado haciendo Tomasz Muras [5] y que puede ayudar a entender o al menos pensar en que lio está metido y cuáles son los cambios que tiene moodle en Debian, también viene el cambio de bash por dash, lo cual seguro va a romper con algunos scripts que hemos viniendo haciendo demasiado basados en el primero, al menos yo encontré que con insset el orden de arranque no funcionaba por un pequeño script de subversión de cuando no era sencillo hacer svn+ssh y había que correr un demonio, aún creo que al menos en donde corro Zope y Moodle voy a tener que hacer algunas modificaciones, y de menos esperarme hasta el fin de semestre para hacer cambios, muchos paquetes se han vuelto obsoletos y otros san salido de la distribución por lo mismo es importante leer los programas obsoletos [6] y los problemas a tener en cuenta con Wheezy [7] en fin que definitivamente en una quincena antes me habría ahorrado el pasar de qemu a virtualbox si ubiese podido arreglar el multiarch en wine… en fin he aprendido bastante de virtualbox y para mis necesidades parece estar funcionando muy bien, sobre todo por la posibilidad de pasar imágenes entre OS sin mayor problema, qemu-kvm no me eran tan transparentes al menos ahora que por ahí estoy usando Windows siete de 64bits.

[1] http://www.debian.org/News/weekly/2013/09/#releasedate
[2] http://www.debian.org/News/2013/20130504
[3] http://www.debian.org/releases/wheezy/releasenotes
[4] http://www.debian.org/releases/wheezy/installmanual
[5] http://wiki.debian.org/Moodle
[6] http://www.debian.org/releases/wheezy/i386/release-notes/ch-upgrading.es.html#obsolete
[7] http://www.debian.org/releases/wheezy/i386/release-notes/ch-information.es.html

Abraham Zenteno

Abraham Zenteno
Kraxbox

Registro de logs en DB CakePhp 2.0.x

Podemos registrar logs de nuestra aplicación registrando en archivos o en su caso en la base de datos que en esta ultima manera es de que trata este tutorial, a continuación explico la manera de como implementar eta funcionalidad a sus aplicaciones hechas en CakePhp 2.0.x.

Como primer paso deberá crea la tabla en su base de datos:


CREATE TABLE IF NOT EXISTS `logs` (
`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`type` VARCHAR(20) NOT NULL,
`time` datetime NOT NULL,
`message` text NOT NULL,
PRIMARY KEY (`id`)
);

Una vez creada la tabla de la base de datos procedemos a crear el modelo de nuestra tabla:


/*Model/Log.php*/
class Log extends AppModel{
  public $name = 'Log';
}

Una vez hecho lo anterior se procederá a crear la clase DataBaseLogger la cual tendrá la finalidad de insertar en nuestra db y no en los archivos logs, crear el archivo app/Lib/Log/Engine/DatabaseLogger.php con el siguiente contenido:


App::uses('CakeLogInterface','Log');

class DatabaseLogger implements CakeLogInterface{
 
    function __construct($options = array()) {
        App::import('Model', 'Log');
        $this->Log = new Log;
    }
 
    function write($type, $message) {
        $log['type'] = ucfirst($type);
        $log['time'] = date('Y-m-d H:i:s');
        $log['message'] = $message;
 
        return $this->Log->save($log);
    }
 
}

Por último solo nos resta definir nuestra variable de configuración Cake indicando que el metodo de registro de logs sera por medio de inserción en la base de datos para esto se agregara la constante de configuración en AppController


class AppController extends Controller {
       
    function beforeFilter(){
         CakeLog::config('otherFile',array(
                'engine' => 'DatabaseLogger',
                'model' => 'Log'));

    }
}
?>

Donde Engine hace referencia a DatabaseLogger y model al modelo de la tabla en la que se insertaran los logs.

Ahora bien el siguiente código muestra como utilizar la clase estatíca CakeLog con la función de login


/*metodo de Controlador*/
function login(){         $this->layout = "tpl_login";           if( ! $this->Session->read('Auth.User') ){              if ($this->request->is('post')) {                  if ($this->Auth->login()) {
                     CakeLog::write('info', 'User ' . $this->Auth->user('username') . ' successfully logged in.');

                    $this->redirect($this->Auth->redirect());
                  }else{
                    $this->Session->setFlash('Your username or password was incorrect.');
                  }
              }
          }else{
               $this->redirect($this->Auth->redirect());
          }
     }
?>



Como se muestra en código anterior se utiliza la clase estatíca :
   CakeLog::write('info', 'User ' . $this->Auth->user('username') . ' successfully logged in.');

Para registrar cuando inician sesión los usuarios, los tipos de logs definidos por CakePhp son:


    'emergency'
'alert'
'critical'
'error'
'warning'
'notice'
'info'
'debug'

También puede definir sus propios tipos de logs para mas información

http://book.cakephp.org/2.0/en/core-libraries/logging.html



Resultado del registro









Sábado 04 de mayo de 2013

Planeta Laguna: Revista Cultural Suburbia

Moving a Plone site from AWS to webfaction

Moving a Plone site from AWS to webfaction

I’ve been helping my friends with their Plone site for some years now. Initially, the site was hosted on IntoVPS, which is quite cheap and nice to setup. Unfortunately, at that time, we needed a lot of storage and their plans didn’t provide enough space, so I moved the site to amazon AWS and it’s been almost two years since then. Unfortunately, AWS is very expensive and we have lowered our storage requirements since then. So I’m moving the site again, this time to WebFaction.

We went for the 256MB plan because it includes 256MB of RAM (plone4 uses 160MB at most), 100GB of space (right now we need about 60 GB) and 600 GB of bandwidth which I’m not measuring yet. So, a single plone instance will fit there.

Configuring webfaction

We are using HTTPS to encrypt the whole site’s traffic. I set up two websites: one for HTTP and another for HTTPS. The HTTP website is linked to a Static/CGI/PHP application that only has two files: an index.html and a .htaccess file which it’s only purpose is to rewrite/redirect the traffic to the HTTPS port.

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^(.*)$ https://www.holokinesislibros.com/$1 [R=301,L]

On the HTTPS website I created a Zope (2.13.15) - Plone (4.1.6) application. This is basically a directory that contains a Python2.6 virtualenv, a buildout-cache directory and uses Plone’s universal installer to create and bootstrap a buildout environment in another directory called zinstance. It also creates a crontab entry to start Zope’s instance every 20 minutes.

But I’m using a customized buildout, so I ignored the zinstance directory and instead cloned my repo on the application directory and bootstraped it with a fresh virtualenv of python 2.7.

cd webapps/hkl_plone
virtualenv ve
hg clone ssh://hg@bitbucket.org/tzicatl/holokinesis_libros
cd holokinesis_libros
../ve/bin/python bootstrap.py -c webfaction.cfg
bin/buildout -c webfaction.cfg

Not everything went smooth. I had to adjust my buildout so it could run with the new branch of zc.buildout 2.0. Namely: some syntax errors in my versions.cfg, remove buildout.dumppickedversions extension and update bootstrap.py

I also had to copy some settings from the zinstance directory, like the port.

Finally, in order to completely switch from zinstance to my own buildout in holokinesis_libros I change the crontab command, from:

2,22,42 * * * * $HOME/webapps/hkl_plone/zinstance/bin/instance start > /dev/null 2>&1

to:

2,22,42 * * * * $HOME/webapps/hkl_plone/holokinesis_libros/bin/instance start > /dev/null 2>&1

Setting up HTTPS

Plone (in fact, Zope2) needs to be monkey-patched so it recognizes the X-Forwaded-SSL header. Fortunately, webfaction provides a patch that works really well with recent versions of Plone (4.1.6).

cd ~/webapps/hkl_plone/holokinesis_libros/products
wget -O patch.tar.gz http://wiki.webfaction.com/attachment/wiki/WebFactionSslPatch/WebFactionSSLPatch-1.0.tar.gz?format=raw
tar -zxvf patch.tar.gz
rm patch.tar.gz

I had to to issue a support ticket so the web serve could load my SSL certificates. I only had to point them to the directory where my certs are and they did all the job cofiguring the certificates.

Moving data.fs and blobs

I went the easy route and made an uncompressed tarball of the var/ directory and copied it to the new server.

On the AWS server:

cd path/to/plone/on/aws
tar -cf var.tar var/
# I started a GNU screen session for this.
rsync -avz --delete var/ tzicatl@tzicatl.webfactional.com:/home/tzicatl/webapps/hkl_plone/holokinesis_libros/var/
# Then go to sleep, because it takes a lot of time to transfer from one site to another.

On the Webfaction server:

cd ~/webapps/hkl_plone/holokinesis_libros/
tar -xf var.tar

Server startup and configuration of VHM

Starting the Plone instance is quite easy:

cd ~/webapps/hkl_plone/holokinesis_libros/
bin/instance start

The ZMI welcome screen shows on https://www.holokinesislibros.com/ and https://www.holokinesislibros.com/Plone works very well. Now it is time to login to the ZMI and add a few configuration tot he Virtual Host monster. Webfaction gives us a guide that’s very easy to follow. And, at the end I ended up adding just one line:

*.holokinesislibros.com/Plone

The end

Its alive and kicking! :)

Viernes 03 de mayo de 2013

Planeta Laguna: Mexicanadas: Encontrando un ventilador para el microprocesador

Miércoles 01 de mayo de 2013

TPP, peor que SOPA o el NAFTA/TLC

Gunnar difunde información muy importante en su blog sobre acuerdos comerciales que están sucediendo pueden pasar y que no están haciendo mucho ruido en los medios y en  en los interwebz mexicanos, lo cual de inicio ya es preocupante, la información y su difusión me parece muy importante, pero también creo no esta en los mejores medios para compartirla en un post en ingles, con el PDF y no la infografía, me he tomado la libertad de convertir el PDF de la EFF a PNG (que en una segunda revisada ya vi la propia EFF ha convertido en PNG) y comparto la infografía.

tpp_spanish_720pxEntre si son peras o manzanas se ha convocado a una reunión de trabajo en el Aula Magna de la Facultad de Ingeniería este próximo viernes 3 de mayo y creo que un poco más de ruido en español y no en ingles puede ayudar a que la información viaje más rápido.

tpp

Recursos para saber más:

La infografía en calidad de impresión en formato PDF (local en este blog) y el vinculo directo al archivo en EFF.

Renich Bon Ciric

Migración a NginX

Me da gusto anunciar que Woralelandia y el servidor de la comunidad han sido migrados a NginX!

Antes, usábamos Cherokee; pero, al ser olvidado por su creador, pues, no nos queda más que migrar.

Además, creo que NginX tiene varias cosas muy suaves. Me gusta su estilo de configuración. De hecho, influenciado por MVC, he hecho una serie de includes que me facilitan la vida un chingo.

Te invito a revisar su Wiki para que te des una idea.

Martes 30 de abril de 2013

Gunnar Wolf

Gunnar Wolf
Gunnar Wolf

Activities facing the next round of Trans-Pacific Partnership negotiations ( #yaratpp #tpp #internetesnuestra )

Excuse me for the rush and lack of organization... But this kind of things don't always allow for proper planning. So, please bear with my chaos ;-)

What is the Trans-Pacific Partnership?

Yet another secretely negotiated international agreement that, among many chapters, aims at pushing a free-market based economy, as defined by a very select few — Most important to me, and to many of my readers: It includes important chapters on intellectual property and online rights.

Hundreds of thousands of us along the world took part in different ways on the (online and "meat-space") demonstrations against the SOPA/PIPA laws back in February 2012. We knew back then that a similar project would attempt to bite us back: Well, here it is. Only this time, it's not only covering copyright, patents, trademark, reverse engineering, etc. — TPP is basically a large-scale free trade agreement on steroids. The issue that we care about now is just one of its aspects. Thus, it's way less probable we can get a full stop for TPP as we got for SOPA. But we have to get it on the minds of as many people as possible!

Learn more with this infography distributed by the EFF.

Which countries?

The countries currently part of TPP are Chile, Peru, New Zealand, Australia, Malaysia, Brunei, Singapore, Vietnam — And, of course, the USA.

Mexico, Canada and Japan are in the process of joining the partnership. A group of Mexican senators are travelling to Lima to take part of this round.

Image by Colin Beardon (It's Our Future, NZ)

What are we doing about it?

As much as possible!

I tried to tune in with Peru's much more organized call — The next round of negotiations will be in Lima, Peru, between May 14 and 24. Their activities are wildly more organized than ours: They are planning a weekend-long Camping for Internet freedom, with 28 hours worth of activities.

As for us, our activities will be far more limited, but I still hope to have an interesting session:

Poster design by Gacela. Thanks!

This Friday, we will have Aula Magna, Facultad de Ingeniería, UNAM, México DF, from 10AM and until 3PM. We do not have a clear speakers program, as the organization was quite rushed. I have invited several people who I know will be interesting to hear, and I expect a good part of the discussion to be a round table. I expect we will:

  1. Introduce people working on different corners of this topic
  2. Explain in some more detail what TPP is about
  3. Come up with actions we can take to influence Mexico's joining of TPP
  4. And this will be at Facultad de Ingeniería. Another explicit goal of this session will be, of course, to bring the topic closer to the students!

We want you!

So... I am posting this message also as a plead for help. Do you think you can participate here? Were you among the local organizers for the anti-SOPA movement? Do you have some insight on TPP you can share? Do you have some gear to film+encode the talks? (as they will surely be interesting!) Or, is the topic just interesting for you? Well, please come and join us!

Some more informative links

BE THERE!

So, again: Friday, 2012-05-03, 10:00-15:00

[Update] So, 2012-05-03 came and went. And thankfully, Alfredo was there to record most of the talk! So, you can download the video:

Gunnar Wolf, Salvador Alcántar: ¿Qué es TPP? ¿Por qué me debe preoucpar? ¿Qué podemos hacer?

AttachmentSize
Poster. Design by Gacela — Thanks!457.49 KB
Infography about TPP distributed by the EFF392.45 KB
"Here, let me sign this for you". Image by Colin Beardon.27.08 KB

La palabra mágica

Ya no parece ser “por favor” de este lado de la ciudad.

IMG11954 IMG11952

Lunes 29 de abril de 2013

David García del Valle

David García del Valle
Dave G. | Blog

When Amavis said: NOTICE: reconnecting in response to: err=2006, HY000, DBD::mysql::st execute failed: MySQL server has gone away at (eval 115) line 166, line 1635.: 1 Time(s)

I have an email server with 10 accounts  the amavis said:

****************************************************************
NOTICE: reconnecting in response to: err=2006, HY000, DBD::mysql::st execute failed: MySQL server has gone away at (eval 115) line 166, line 1635.: 1 Time(s)
*****************************************************************

The solution that found is:
Try to add below lines in /etc/amavis/conf.d/50-users before the last line "1;", then restart Amavisd service:

$max_servers = 1;
$max_requests = 1;

 
and other solution is: 

The connection to MySQL server initialized by Amavisd timed out, because you have too few emails.
Please decrease (or add) value of "max_connections" in /etc/mysql/my.cnf like below:


[mysqld]
...
set-variable = max_connections=512

 
Thanks ZhangHuangbin !!

Reference:




Viernes 26 de abril de 2013

The Open Enchilada Project: TOEP S06E07 – Parse, SAP, etc.

Jueves 25 de abril de 2013

Miguel de Icaza

Miguel de Icaza
Miguel de Icaza

Need for Exercises

For many years, I have learned various subjects (mostly programming related, like languages and frameworks) purely by reading a book, blog posts or tutorials on the subjects, and maybe doing a few samples.

In recent years, I "learned" new programming languages by reading books on the subject. And I have noticed an interesting phenomenon: when having a choice between using these languages in a day-to-day basis or using another language I am already comfortable with, I go for the language I am comfortable with. This, despite my inner desire to use the hot new thing, or try out new ways of solving problems.

I believe the reason this is happening is that most of the texts I have read that introduce these languages are written by hackers and not by teachers.

What I mean by this is that these books are great at describing and exposing every feature of the language and have some clever examples shown to you, but none of these actually force you to write code in the language.

Compare this to Scheme and the book "Structure and Interpretation of Computer Programs". That book is designed with teaching in mind, so at the end of every section where a new concept has been introduced, the authors have a series of exercises specifically tailored to use the knowledge that you just gained and put it to use. Anyone that reads that book and does the exercises is going to be a guaranteed solid Scheme programmer, and will know more about computing than from reading any other book.

In contrast, the experience of reading a modern computing book from most of the high-tech publishers is very different. Most of the books being published do not have an educator reviewing the material, at best they have an editor that will fix your English and reorder some material and make sure the proper text is italicized and your samples are monospaced.

When you finish a chapter in a modern computing book, there are no exercises to try. When you finish it, your choices are to either take a break by checking some blogs or keep marching in a quest to collect more facts on the next chapter.

During this process, while you amass a bunch of information, at some neurological level, you have not really mastered the subject, nor gained the skills that you wanted. You have merely collected a bunch of trivia which most likely you will only put to use in an internet discussion forum.

What books involving an educator will do is include exercises that have been tailored to use the concepts that you just learned. When you come to this break, instead of drifting to the internet you can sit down and try to put your new knowledge to use.

Well developed exercises are an application of the psychology of Flow ensuring that the exercise matches the skills that you have developed and they guide you through a path that keeps you in an emotional state ranging that includes control, arousement and joy (flow).

Anecdote Time

Back in 1988 when I first got the first edition of the "C++ Language", there were a couple of very simple exercises in the first chapter that took me a long time to get right and they both proved very educational.

The first exercises was "Compile Hello World". You might think, that is an easy one, I am going to skip that. But I had decided that I was going to do each and every single of one of the exercises in the book, no matter how simple. So if the exercise said "Build Hello World", I would build Hello World, even if I was already seasoned assembly language programmer.

It turned out that getting "Hello World" to build and run was very educational. I was using the Zortech C++ compiler on DOS back, and getting a build turned out to be almost impossible. I could not get the application to build, I got some obscure error and no way to fix it.

It took me days to figure out that I had the Microsoft linker in my path before the Zortech Linker, which caused the build to fail with the obscure error. An important lesson right there.

On Error Messages

The second exercise that I struggled with was a simple class. The simple class was missing a semicolon at the end. But unlike modern compilers, the Zortech C++ compiler at the time error message was less than useful. It took a long time to spot the missing semicolon, because I was not paying close enough attention.

Doing these exercises trains your mind to recognize that "useless error message gobble gobble" actually means "you are missing a semicolon at the end of your class".

More recently, I learned in this same hard way that the F# error message "The value or constructor 'foo' is not defined" really means "You forgot to use 'rec' in your let", as in:

let foo x =
   if x == 1
     1
   else
     foo (x-1)

That is a subject for another post, but the F# error message should tell me what I did wrong at a language level, as opposed to explaining to me why the compiler is unable to figure things out in its internal processing of the matter.

Plea to book authors

Nowadays we are cranking books left and right to explain new technologies, but rarely do these books get the input from teachers and professional pedagogues. So we end up accumulating a lot of information, we sound lucid at cocktail parties and might even engage in a pointless engineering debate over features we barely master. But we have not learned.

Coming up with the ideas to try out what you have just learned is difficult. As you think of things that you could do, you quickly find that you are missing knowledge (discussed in further chapters) or your ideas are not that interesting. In my case, my mind drifts into solving other problems, and I go back to what I know best.

Please, build exercises into your books. Work with teachers to find the exercises that match the material just exposed and help us get in the zone of Flow.

Miércoles 24 de abril de 2013

Alcance Libre: Red Hat presenta Wildfly, el sucesor de JBoss.
Planeta Laguna: Para el error de "failed, reason given by server: Permission denied"

Martes 23 de abril de 2013

Óscar A. Parra V.

Óscar A. Parra V.
El Canibal » Geek

Default Password de Routers

Default Password de Routers

routerpassword

Cuantas veces no se han visto en la situación donde tienen un router pero no tienen el usuario y password por defecto. Yo en múltiples ocasiones me he encontrado en esa situación.
También hay ocasiones que nos olvidamos los password que le ponemos a nuestros routers y tenemos que resetearlos por defecto.
Al hacer esto tenemos que buscar el usuario y password por defecto.

Routerpasswords.com tiene una base de datos de usuarios y password por defecto que usan muchas compañías.

 

Lunes 22 de abril de 2013

Jarro Negro: FLISOL 2013

Sábado 20 de abril de 2013

Óscar A. Parra V.

Óscar A. Parra V.
El Canibal » Geek

windows could not complete installation.

Recientemente instale Windows 7 en una HP dv9815nr y tuve un error.

“Windows could not complete the installation. To install Windows on theis compuiter, restart the installation.”

si alguna vez les sale este error. aqui un quick fix.

cuando les salga el error, presionen SHIFT-F10 para obtener la linea de comando.
Luego esriban CD C:\windows\system32\oobe
Luego escriban msoobe

Hagan una cuenta y pongan password, luego le dan terminar, pongan su numero de serie si se los pide y luego ajuesten la fecha y hora. le dan terminar y reinician.

y listo.

Héctor Daniel Cortés

Héctor Daniel Cortés
'Aztec Eagle' Turbo

2013 VEX Robotics Middle School World Championship - Rankings

Al terminar las rondas de clasificación del 2013 VEX Robotics Middle School World Championship, después de diez juegos jugados, los equipos Mexicanos tienen los siguientes resultados:

En el grupo Spirit:

Rank Num Equipo     (G-E-P) Puntos
9 6966A GONBOTZ - A (8-0-2) 817
22 4359A SECUNDARIA TÉCNICA NO. 22 (6-0-4) 1110
55 4402A Cuitlabots (3-1-6) 838
57 5918A Secundaria 13 (3-0-7) 905
65 6395B Tecnobots (3-0-7) 719
69 6637 Sec. Tec. 67 (3-0-7) 633
80 7351C Sec. Tec. 56-C (0-0-10) 713

En el grupo Oportunity:

Rank Num Equipo    (G-E-P) Puntos
12 7313D SEED-AS 4 (7-0-3) 868
54 5918B Secundaria 13 B (4-0-6) 409
56 6395 Robotics Verein (3-1-6) 725
70 5381B Tenovex (2-1-7) 798
78 7351A Sec. Tec. 56-A (1-0-9) 694
79 5324A Discovery IV (0-0-10) 733
Héctor Daniel Cortés

Héctor Daniel Cortés
'Aztec Eagle' Turbo

Segundo día de competencias

Al terminar el segundo día de las rondas de clasificación del 2013 VEX Robotics Middle School World Championship, después de ocho juegos jugados, los equipos Mexicanos tienen los siguientes resultados:

En el grupo Spirit:

Rank Num Equipo     (G-E-P) Puntos
13 6966A GONBOTZ - A (6-0-2) 597
19 4359A SECUNDARIA TÉCNICA NO. 22 (5-0-3) 779
57 6637 Sec. Tec. 67 (3-0-5) 539
62 5918A Secundaria 13 (2-0-6) 640
67 6395B Tecnobots (2-0-6) 613
72 4402A Cuitlabots (1-1-6) 663
79 7351C Sec. Tec. 56-C (0-0-8) 550

En el grupo Oportunity:

Rank Num Equipo    (G-E-P) Puntos
17 7313D SEED-AS 4 (5-0-3) 753
44 5918B Secundaria 13 B (4-0-4) 320
64 5381B Tenovex (2-1-5) 608
71 6395 Robotics Verein (1-1-6) 554
73 7351A Sec. Tec. 56-A (1-0-7) 584
79 5324A Discovery IV (0-0-8) 668

El día de mañana se jugarán los dos últimos juegos. ¡Suerte para todos!

Viernes 19 de abril de 2013

The Open Enchilada Project: The Open Enchilada Project S06E06: Ruby Motion
Gustavo Rubio

Gustavo Rubio
Ahí vamos

Alo nuevo presidente!

hugo_chavez_print-250Venezuela es un país hermoso, con hermosos paisajes, hermosas mujeres y una rica cultura tanto gastronómica como histórica. Tiene además algunos de los paisajes más increibles y ecosistemas diversos, desde desierto en la zona de Falcón hasta playa en el Golfo e incluso zonas nevadas en la zona conocida como Mérida.

En resúmen, Venezuela es un paraíso, ¿Cómo lo se? Bueno, todo lo leí en wikipedia, la verdad es que nunca en mi vida he estado en dicho país, entonces ¿Cómo puedo estar tan seguro de su belleza? Bueno, armo un juicio derivado de varias premisas o información “bien conocida”, y si, lo se, puede parecer entonces que mi juicio sobre la belleza de un lugar no tendría validez, basado en mis fuentes, tendría pues que “vivirlo en carne propia” ¿No? Bueno si me da usted la razón entonces hemos llegado al punto que hay que discutir: ¿Cómo armamos juicios de la situación política de un lugar que NO conocemos?

Sucede que, con los recientes sucesos en la vida política de dicho país, a todo mundo le ha salido lo analista político. Si bien todos tenemos derecho a expresar nuestra opinión creo que definitivamente para hacer un juicio justo habría que tener fuentes de información fidedigna, “los pelos en la mano” pues, como decimos vulgarmente.

Este tema siempre había llamado mi atención. De antemano, antes de ser tachado como rojillo, comento que no me identifico de ninguna manera con el Chavismo, me parece, personalmente, otro político aprovechado del populismo, si acaso. Su manera de confrontamiento público no me parecía lo más adecuado, porque, desgraciadamente, siendo político, y más ostentando el cargo de presidente, uno debe cuidar su imágen, sea por interés del pueblo o por el simple hecho de llevar buenas relaciones públicas.

Pero, ¿Qué conocía yo de Chávez? Bueno pues no mucho, lo mismo que tu puedes leer en libros, escuchar en la radio e investigar por Internet. A pesar de que a Chávez se le formó una imágen de dictador, opresor y asesino a mi no me consta, es decir, aunque no lo puedo (ni quiero) defender, tampoco me sentiría con el derecho de juzgarlo, principalmente porque no vivo en Venezuela, y de paso porque desconosco la historia política moderna de dicho país y sus consecuencias, solo Dios sabe porque motivos llego un ex-militar a ser presidente, bueno, Dios no, pero su pueblo si.

El caso es que hace unos días, mientras pedía mi sagrado alimento en alguno de los muchos lugares donde venden Sushi, ese que mi primo de California dice que “no es sushi porque el sushi no lleva queso”, me dispuse a leer una publicación de esas gratuitas de circulación local, llamada el “Informante de Baja California”. Leía un artículo titulado “¿Quién calló a Chávez” de la columna “El alquimista” de Juan José Alonso, desconocido hasta ese día para mi, profesor de posgrado del CETYS e IPADE Business School y lider de opinión (supongo) cito algunas partes del artículo:

Jamás me daría gusto ver sufrir a alguien y mucho menos ver como día a día se va muriendo unpoco, pero este proceso parece ser el destino final de uno de mis personajes favoritos (Por odiado),me refiero al protagonista principal de un sinnúmero de eventos cómicos, desenfadados, estúpidos y controversiales. Todos ustedes recordarán al Rey de España diciéndole “¿Por qué no te callas?”,efectivamente, me refiero al “MicoMandate”: Hugo Rafael Chávez Frías, que a veces ejerce depresidente de Venezuela y otras de actor cómico en Latinoamérica.

Desgraciadamente el cáncer está acabando con él y esto lo ha llevado a estar fuera de susacostumbradas apariciones como jefe de estado, sus recurrentes desplantes de poder y privatizaciones, y a sus interminables discursos (a veces de más de 10 horas), pobre Huguito, solo lavida le pudo callar la boca (diría mi abuelita: “Hijo lo que más castiga Dios es la boca), así que hoy amanera de un pequeño e inmerecido homenaje a este singular personaje, quisiera compartirles loque el The Washington Post y Foreing Policy denominan: “Los 12 eventos clave en la vida del Comandante”…

En fin todos estos eventos claves han sido aderezados con una serie de improperios y desplantes, que lo hacen el personaje cómico que ya les platiqué, eso no sería problema si fuera buen gobernante, lo malo es que ha hundido a Venezuela en la pobreza, en la violencia, en la inseguridad, ha mantenido a la dictadura de los Castro, ha patrocinado a otra serie de locos en el poder (Ortega, Evo, Correa, etc.).  Yo pensé que el dinero lo mantendría en el poder más años, pero la naturaleza con crueldad, hoy le dice que debe dejar a los venezolanos en paz.

Me pregunto si el señor Alonso habrá estado alguna vez en Venezuela, o si quiera en sudamérica. La verdad es que, a pesar de compartir el idioma, nuestros vecinos del sur están muy alejados de las políticas del bloque norteamericano conformado por nuestro país, los “gringos” y nuestros vecinos mas lejanos los canadienses.

Es esta misma razón, la lejanía, y muchas veces falta de comprensión de una sociedad con la cual no convivo, por la cual no me atrevería a armar un juicio de ideas políticas sobre un país que desconozco. Parece fácil a veces dar por hecho que ser economista y entender los “indicadores internacionales” nos puede servir para generar dicho juicio, solo habría que recordar que una sociedad está conformada por muchas cosas, no solo indicadores financieros.

Por otra parte, me parece siempre curioso ver como se critican políticas exteriores desde una trinchera bastante comoda como lo es vivir, si no en Estados Unidos, en la frontera, donde tenemos muchas ventajas de las cuales nuestros vecinos sudamericanos no gozan, es más, ni siquiera nuestros propios conacionales de mas al sur. Es muy fácil escribir un artículo basado en fuentes como el Washington Post, que cita el mismo alonso, y armar juicios basados en estos medios de información, que aunque grandes e importantes, tienen agendas como todos, y la agenda de Estados Unidos no es la más humanista ni democrática, sobre todo hablando de política exterior.

Ahora que Chávez está muerto, y que el pajarito le dijo a Maduro que todo estaría bien parece que les dió comezón a los líderes de opinión de derecha al saber que Nicolás Maduro heredaría la dictadura de Facto del comandante, que aunque no les afecte, les molesta, porque así lo dice el criterio del país más poderoso del mundo, que por cierto les da de comer a varios de esos líderes, no puede estar uno entonces en contra, ya saben, no escupas la mano que te da de tragar.

Lo más irónico es ver a muchas de estas personas, que tacharían a Lopez Obrador, por ejemplo, de porro, peleonero y necio, por querer realizar un conteo de votos, derecho electoral por cierto, lo cual no se hizo y al final nos dan la misma cantaleta “que ya se pongan a trabajar, ya perdió” bueno, sucede lo mismo en Venezuela, por un paupérrimo 4% Nicolás Maduro ganó en elecciones a Henrique Capriles, solo que, en este caso, quien pide el reconteo de votos es el opositor de derecha y entonces, ahí si, es un fraude electoral perpetrado por el gobierno de facto.

Hay que ser congruentes con nuestras ideas y sobre todo tener bases para sostener lo que decimos. Podemos tener opiniones diferentes y para todos los temas pero eso no cambia las cosas. Si hay a quienes les molesta que la mano derecha de Chávez haya heredado su puesto solo por ser de izquierda, y aun cuando ni siquiera viven en dicho país, les digo: Sean congruentes, denle vuelta a la hoja y ponganse a trabajar. Creo que es el mismo disco rayado que escuchamos aquí en México en las pasadas elecciones, “predicad con el ejemplo“.

Les dejo el enláce al artículo completo del señor Alonso.

 

Héctor Daniel Cortés

Héctor Daniel Cortés
'Aztec Eagle' Turbo

2013 VEX Robotics Middle School World Championship (First Day)

Al terminar el primer día de las rondas de clasificación del 2013 VEX Robotics Middle School World Championship, después de tres juegos, los equipos Mexicanos tienen los siguientes resultados:

En el grupo Spirit:

Rank Num Equipo    (G-E-P) Puntos
#3: (6966A) GONBOTZ - A (3-0-0) (6-260)
#35: (6637) Sec. Tec. 67 (2-0-1) (4-161)
#40: (4402A) Cuitlabots (1-1-1) (3-199)
#41: (4359A) SECUNDARIA TÉCNICA NO. 22 (1-0-2) (2-341)
#55: (5918A) Secundaria 13 (1-0-2) (2-209)
#56: (6395B) Tecnobots (1-0-2) (2-201)
#72: (7351C) Sec. Tec. 56-C (0-0-3) (0-256)

En el grupo Oportunity:

Rank Num Equipo  (G-E-P) Puntos
#9: (7313D) SEED-AS 4 (3-0-0) (6-212)
#12: (5918B) Secundaria 13 B (3-0-0) (6-120)
#65: (5381B) Tenovex (0-1-2) (1-241)
#66: (6395) Robotics Verein (0-1-2) (1-171)
#77: (5324A) Discovery IV (0-0-3) (0-190)
#80: (7351A) Sec. Tec. 56-A (0-0-3) (0-130)

El día de mañana se jugarán 5 rondas. ¡Suerte para todos!

Jueves 18 de abril de 2013

David Moreno

David Moreno
dm's blog

Debian meetup in Utrecht, The Netherlands

This next Tuesday, April 23rd, 2013, a few of us Debian people in the Netherlands will get together for beer and keysigning in Belgisch Bier Café Olivier in Utrecht. If you are in the area, feel free to come, have a beer or two and mingle!

Find the exact details in this debian-events-nl mail.

See you there!

José Oviedo

José Oviedo
oviedo.mx

SQL Server: No regresa el texto completo en las celdas con valores tipo texto

Si tienes un campo de tipo texto, ya sea cualquiera de los siguientes tipos de datos:

  • varchar(max)
  • nvarchar(max)
  • varbinary(max)
  • text
  • ntext
  • image

Y cuando realizas tu select, no te regresa la información completa, entonces lo que debes de hacer es incrementar el limite de la variable textsize.

Para saber cual es el límite actual solo ejecuta el siguiente comando:

SELECT @@TEXTSIZE

Casi por default te dará un valor de 2147483647 (caracteres)

Y entonces la solución antes de ejecutar tu consulta SELECT, debes de iniciar con la siguiente consulta SQL.

SET TEXTSIZE NUMERO_CARACTERES_A_OBTENER

Digamos que deseas obtener unos 200 caracteres, entonces ejecutas SET TEXTSIZE 200 ,seguido de tu sentencia SQL del SELECT.

Miércoles 17 de abril de 2013

LogicalBricks Solutions: Git: Colores en los mensajes de terminal
Promoviendo Software Libre: Programación shell y Comandos linux
Promoviendo Software Libre: Software Libre en la Educación Media