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.
O 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
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.
Los detalles de mi kubuntu:
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.
Les dejo el enlace de instalación de Smart Launcher
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.
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
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
python setup.py installSolo 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 knownLa 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.
python dragonkeeper.pyDeberí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:
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:Waiting for host connection on port 0 / Esperando una conexión anfitrión en el puerto 0.
opera:config#DeveloperTools|DeveloperToolsURLY 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
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
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.
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:
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:
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.
![]() |
| Imagen que circula por facebook respecto a la extinción del rinoceronte negro |
La filosofía de Facebook es aun peor que la fiolosofía del Reader's Digest.
— Mauro Parra (@mauropm) May 6, 2013
@toxickore es la tecnificación del chisme, una actividad tan antigua como la vida misma.Y que siempre ha sido mas nefasta que otra cosa.
— regina daichman (@regina_dchmn) May 5, 2013
İ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.
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 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
**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)
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
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`)
);
/*Model/Log.php*/
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);
}
}
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./*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());
}
}
?>
'emergency'
'alert'
'critical'
'error'
'warning'
'notice'
'info'
'debug'
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.
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
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.
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
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
Its alive and kicking! :)
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.
Entre 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.
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.
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.
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 ;-)
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.
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.

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:
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:
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!
Video explicativo: "Will TPP turn Internet service providers into copyright cops?"
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?
| Attachment | Size |
|---|---|
| Poster. Design by Gacela — Thanks! | 457.49 KB |
| Infography about TPP distributed by the EFF | 392.45 KB |
| "Here, let me sign this for you". Image by Colin Beardon. | 27.08 KB |
$max_servers = 1;
$max_requests = 1;[mysqld]
...
set-variable = max_connections=512For 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).
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.
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.
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.
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.
Recientemente instale Windows 7 en una HP dv9815nr y tuve un error.
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.
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
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!
Venezuela 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.
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!
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!
Si tienes un campo de tipo texto, ya sea cualquiera de los siguientes tipos de datos:
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.