Mi Historia en GM2

Zarco inició en mayo de 2015 a través de una pasantía sin saber nada de lo que es el software development y ahora es uno de los líderes técnicos más apreciados del GM2. Con 22 años tuvo la oportunidad de viajar a los Ángeles a trabajar codo a codo con uno de nuestros clientes más […]

How CSS CALC works

How CALC works. Mirar esto para entender cómo funciona el CALC de CSS https://bitsofco.de/how-calc-works/

Cómo funciona el browser 

Interesante lectura sobre como funciona el browser. No podés no saber esto: https://dev.to/sanjsanj/optimising-the-front-end-for-thebrowser

Centrando cosas con CSS

Van guías prácticas, muy.. Caso centrar vertical y horizontalmente, sabiendo el tamaño o no.. Centering in CSS: A Complete Guide http://howtocenterincss.com/

Optimización WooCommerce agregando multiple column indexes

Muchas queries que hacemos con mysql en proyectos WooCommerce usan la misma combinación de columnas en sus condiciones de búsqueda. Por lo que crear índices de columnas múltiples puede acelerar el proceso del a query considerablemente.   Algunas de las tablas son: table = wp_postmeta index = (post_id, meta_key) table = wp_woocommerce_order_items index = (order_id, […]

Shared folders that Chef requires are missing on the virtual machine

GuestAdditions 4.3.28 running — OK. ==> default: Checking for guest additions in VM… ==> default: Setting hostname… ==> default: Configuring and enabling network interfaces… ==> default: Mounting shared folders… default: /vagrant => /Users/gonzo/Workspace/aaaa-chef default: /opt/aaaa/current => /Users/gonzo/Workspace/aaaa-chef/workspace/aaaa ==> default: Chef 12.4.0 Omnibus package is already installed. ==> default: Running provisioner: chef_solo… ==> default: Detected Chef […]

How to Add an Admin User to the WordPress Database via MySQL

Update the bold sections with your stuff   INSERT INTO `wp_users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_status`) VALUES (‘newadmin’, MD5(‘pass123’), ‘firstname lastname’, ’[email protected]’, ‘0’); INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, (Select max(id) FROM wp_users), ‘wp_capabilities’, ‘a:1:{s:13:”administrator”;s:1:”1″;}’); INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, (Select max(id) FROM wp_users), ‘wp_user_level’, ’10’);

WordPress admin is running so slow! Usually are network issues

After upgrading wordpress to 4.1 and installing a few plugins, my Admin area became un usably slow. WordPress checks for updates on every request! BAD IDEA So I edited the code under the function wp_update_plugins() near the call to “wp_remote_post()” to look like this: if ( defined( ‘DOING_CRON’ ) && DOING_CRON ) { $timeout = 30; } […]

Restringir el acceso a apache en ubuntu server

Primero generamos el archivo de contraseñas siguiendo la documentación de apache:http://httpd.apache.org/docs/2.2/programs/htpasswd.htmlLuego editamos el archivo security dentro de /etc/apache2/conf.dAgregamos las siguientes lineas, apuntando al lugar donde están los sitios                        AuthType Basic                AuthName “Restricted Sites”          […]

Configurando sendmail

Logramos instalar en ubuntu server 11.10 un sendmail para enviar mails desde las computadoras de la lan. Para instalarlo en linux, seguimos este tutorialhttp://www.youtube.com/watch?v=4YIsY7OHVvo Eso nos permitió mandar mails desde el local, pero necesitabamos que todas las computadoras de la LAN pudieran. Entonces seguimos este otro:http://www.bowu.org/it/system/linux/sendmail/sendmail-relay-server-in-lan.html Pero no hicimos todo igual,esto no lo agregamos: LOCAL_DOMAIN(‘yourhost.yourdomain’)dnl Luego […]

PostgreSQL en MAC OSX

Descargar el paquete de acá:http://www.kyngchaos.com/software:postgres Y si queres tambien la extensión PostGIS. Esto descarga un dmg. Instalaro nomás. Ojo que por lo menos debes tener osx 10.6 y cpu de 64 bits. Ver el log:   sudo tail -f /usr/local/pgsql/var/postgresql-2012-09-21.log Probar si te podes conectar estando logueado con tu user:   psql -U postgres -h localhost Tuve […]

Usando gzip

The following examples illustrate typical uses of the command gzip for compressing (or “packaging”) a file into an “archive file”. gzip archivefile1.txt This command compresses the file archivefile1.txt and replaces it with the compressed version named “archivefile1.txt.gz”. If you want to keep the uncompressed version, you can use the -c option, which writes to standard out, and then […]

Trabajando con Mango en Ecplipse

Instalarlo en el eclipse Descargar el proyecto desde http://mango.serotoninsoftware.com/download.jsp  Descomprimirlo Add empty subdirectories “lib”, “src_gen” and “src_test” to the extracted forlder. In file build.properties, edit tomcat.home to point at the tomcat location on your system.  For windows, make sure forward slashes “/” are used in the tomcat.home path. In my case:  /Users/gonzo/Applications/apache-tomcat-6.0.35 Get axis-ant.jar from somewhere […]

Usando rsync

Para copiar a una maquina remota: rsync -avz /root/temp [email protected]:/home/thegeekstuff/ -v: vervose-a: archive mode-z: compress–progress: mostrar progreso para cada archivo nota: en este ejemplo crearía la carpeta temp en destino. Archive mode es lo mismo que ingresar todos estos params: -r, –recursive recurse into directories-l, –links copy symlinks as symlinks-p, –perms preserve permissions-t, –times preserve […]

Parallax Effect

DEMOhttp://www.ianlunn.co.uk/demos/recreate-nikebetterworld-parallax/ EXPLANATIONhttp://www.ianlunn.co.uk/blog/code-tutorials/recreate-nikebetterworld-parallax/

Eclipse y Tomcat en OSX

Howto install Tomcat with Eclipse IDE on MacOS X. What we need: Tomcat Eclipse JEE 1. Extract Eclipse into your Applicationfolder and Tomcat to your prefered location for example into your home directory. 2. change into the apache-tomcat-6.0.20/bin directory and make all .sh files executeable cd /apache-tomcat-6.0.20/binchmod +x *.sh 3. test if it starts ./setclasspath.sh./startup.sh […]

Cómo hacer DUMP de mysql excluyendo ceirtas tablas o vistas

Primero armar un txt con las que queremos inluir en el backup:mysql -uroot -p -N information_schema -e “select table_name from tables where table_schema = ‘nombre_base’ AND table_name not like ‘%view’” > table_list.txt Luego corremos el backup a partir del txt:mysqldump -uroot -p nombre_base `cat table_list.txt` > mybackup.sql

How to set Bitbucket for Multiple Accounts

How to set Bitbucket for Multiple Accounts Just found the solution for adding multiple accounts to Bitbucket. The reason why it is not so straight forward is because one SSH key only can link up to one account. So if there is more than one account the method will be slightly different. Here is how the […]

usando VsFTPd en linux

Instalarloyum install vsftpd Abrir puertos en el forewall, si lo hubiera:Puertos 20-21Puertos 1024-1048 Modificar el config de vsftpd vi /etc/vsftpd/vsftpd.conf#—Add following lines at the end of file—    pasv_enable=YES    pasv_min_port=1024    pasv_max_port=1048    pasv_address= Reiniciar el servicio /etc/init.d/vsftpd restartCreando usuariosAgregamos un usuario llamado joe: useradd -m -G users,ftp,wheel joe -s /bin/bashLe asignamos un pass: passwd joeHacemos que pueda escribir /var/wwwchown […]

Como montar disco nuevo ubuntu

Near the bottom of the output you should see where the disk is located. it will be something like:/dev/sdbSo let’s assume it is on /dev/sdb.If you can’t figure it out where the drive is located  with dmesg issue the command:sudo fdisk -lThe above command will report something like:/dev/sda1 * 1 18709 150280011 83 Linux /dev/sda2 18710 […]

Little Snitch Configuration

1. Block obdev.at in /etc/hosts by adding a line:127.0.0.1 obdev.at 2. Install Program, and Restart 3. Block Little Snitch with Little Snitch, in Little Snitch Configuration click the New button, select Deny Connections at top, Choose Application: /Library/Little Snitch/Little Snitch UIAgent 4. Enter the serial number 5. Restart (I’m not sure if it’s necessary)

hacer merge entre un branch y el trunk

No es la primera vez que me enfrento a ello, pero siempre se me olvida cómo se hace y pierdo un montón de tiempo con ello. Así que lo apunto, y seguro que a alguien más le hace falta:El escenario en mi caso son 2 rama: el trunk y un branch del primero. El branch […]

Configurar un SSL cert en apache. HTTPS

Hay que primero generar un par de archivos en el servidor en cuestión (generar CSR): Las partes en bold son el nombre del cominio pelado.Cuando te pregunta un nombre, en realidad es el dominio completo: www.claseviva.com openssl req -new -newkey rsa:2048 -nodes -keyout claseviva.key -out claseviva.csr Para godaddy pide copiar el contenido del .CSR en […]

Bash/SSH autocomplete no funciona ni las teclas de historia

Cuando creas un usuario de cero, por defecto a veces usa un bash medio choto.Por eso, luego de creado hay que chequear que bash usa: # getent passwd USUARIOUSUARIO:x:1001:1001:x:/home/USUARIO:/bin/sh Si esta usando esa básica /bin/sh cambiarlo con: # chsh -s /bin/bash USUARIO

Entendiendo los DNS

Siempre reniego con esto. Me pasó que un servidor con dominio .com.ar estaba registrado en nic.ar como DNS y ese Servidor tenía varios dominios funcionando bien apuntando a él, pero todos .com.ar Cuando quise apuntarle un .com, el panel del registrante no pedía IP, solo pedía el nameserver (ns1.zaraza.com.ar) pero no lo aceptaba porque no […]

svn locale problema

svn: warning: cannot set LC_CTYPE localesvn: warning: environment variable LC_CTYPE is UTF-8svn: warning: please check that your locale name is correctsvn: Can’t convert string from native encoding to ‘UTF-8’:svn: CROACIA_-_PARA_SOLICITAR_NACIMIENTO__-_CON_TRADUCCION_AL_ESPA?195?145OL_HECHA_POR_SEBASTIAN.jpg Para solucionarlo, hay que crear el locale que pide (UTF-8) a partir de uno existente. En mi caso es_AR.utf8Para eso, hay que crear un symlink […]

Cómo hacer andar socket mysql con XAMPP

Resulta que cakephp console usa el sock para conectarse al mysql, y como XAMPP lo pone en una carpeta interna hay que crear un symlink: crear primero la carpeta /var/mysql sudo ln -s /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock /var/mysql/mysql.sock

Guia sobre WII

Launchers conocidos: SoftChip Backup Loader: es un .dol que se baja por ahi y se corre con el HomeBrew Channel. Puedes seleccionar que IOS utilizar para correr un juego.Hemos utilizado el “multicios” para instalar “37 with ios 37 IOS 232” y seleccionar la IOS 232 desde el SoftChip.Tengo configuradas las opciones de fix 002, la […]

sp_generate_inserts para sql server 2008

http://vyaskn.tripod.com/code/generate_inserts_2005.txt stored procedure que crea inserts para una tabla X Usage: Example 1: To generate INSERT statements for table ‘titles’: EXEC sp_generate_inserts ‘titles’ Example 2: To ommit the column list in the INSERT statement: (Column list is included by default) NOTE: If you have too many columns, you are advised to ommit column list, as […]

BASH: Run tasks in the background

Run tasks in the background bash lets you runone or more tasks in the background, and selectively suspend or resume any ofthe current tasks (or “jobs”). To run a task in the background, addan ampersand (&) to the end of its command line. Here’s an example:bash> tail -f /var/log/messages &[1] 614Eachtask back-grounded in this manner […]

instalar git en centos

Instalando Git en Centos 5 Para comprobar si se tiene instalado Git, ejecutar: git –version Si no está instalado, puede instalarlo usando yum. Pero, en Centos 5, normalmente no está disponible un repositorio que contenga el paquete git. Para comprobarlo, como usuario root, en la consola de comandos, ejecute: yum install git Obtendrá un mensaje […]

Localizing PHP web sites using gettext

Contenido dehttp://mel.melaxis.com/devblog/2005/08/06/localizing-php-web-sites-using-gettext/ Developing multi language web sites using PHP is actually very easy. A common approach is having an include file for every supported language which contains an array that maps string ids to localized text (for example “WelcomeText” => “Welcome to our homepage.” would be included using something like ). However there are several […]

Agregar un APP tab en una fanpage

Crear la app en https://developers.facebook.comCompletar el “Page Tab Name” y el “Page Tab URL” en el panel llamado “Select how your app integrates with Facebook“ Adding an App to a Page Facebook Page administrators can add your app directly to their Page by navigating to the following URL: https://www.facebook.com/dialog/pagetab?app_id=YOUR_APP_ID&next=YOUR_URL, where YOUR_APP_ID and YOUR_URL can be found […]

Autologin con SSH

Para que se loguee to maquina directo al server por SSH sin pedir clave, hay que copiar tu public key al server. cat .ssh/id_dsa.pubAcá verás la cadenota de tu key La copias y la pegas en el archivo del server.ssh/authorized_keys Si no existe en el server creas la carpeta .ssh en el home y luego […]

XAMPP on osx con ssl

Cómo habilitar SSLsudo /Applications/XAMPP/xamppfiles/xampp enablessl Para ver qué más se puede hacer hay que ejecutarsudo /Applications/XAMPP/xamppfiles/xampp Luego para que el virtual host soporte tambien https hay que tocar el sudo nano /Applications/XAMPP/etc/extra/httpd-vhosts.conf Agregar; NameVirtualHost *:443 Y configurar en el vhost: < VirtualHost *:80 *:443 >   ServerName vantageone.local   DocumentRoot “/Users/gonzo/Documents/Aptana Studio 3 Workspace/vantageone/site/” < / VirtualHost […]

usando el bendito tar

This is one way to create a .tar.gz file:tar -cvzf this means:-c = create new archive-v = be verbose-z = compress using gzip-f = filename to create for the new archivefor the directory dont to “directory/*” just to “directory” with no slashfilenames should end in “.tar.gz” as they are tarr’ed then zipped   tar -cvzf […]

Los videos o archivos raro son servidos por apache con mime type incorrecto

Apache no sabe siempre que type ponerle a las cosas.Esto se configura en el .htaccessEjemplo para los videos: If you don’t have access to /etc/apache2/mime.types you can always add what you need to a .htaccess file in the relevant directory. Here are a few mimetypes that could be useful. AddType video/ogg .ogmAddType video/ogg .ogvAddType video/ogg […]

Sitio en IIS 7 que apunte a carpeta compartida de Mac – Parallels

Al no poder escapar de tener que laburar en un sitio bajo IIS, configuré Windows en una virtual con Parallels, y dejé los archivos del sitio del lado de la Mac. Quedando Windows solo para tener levantado el IIS. Pasos: – Configurar el tipo de red en “Bridge” en el Parallels. En Devices > Network […]

Maxlength y textareas

Para agregar funcionalidad al atributo “maxlength” en textareas: var txts = document.getElementsByTagName(‘TEXTAREA’) for(var i = 0, l = txts.length; i < l; i++) { if(/^[0-9]+$/.test(txts[i].getAttribute(“maxlength”))) { var func = function() { var len = parseInt(this.getAttribute(“maxlength”), 10); if(this.value.length > len) { //alert(‘Maximum length exceeded: ‘ + len); this.value = this.value.substr(0, len); return false; } } txts[i].onkeyup […]

towebs y cakephp

Algo han tocado en el mod_rewrite los de towebs.Por algún motivo, al copiar cake, no funcaiona nada.Solo aparece error del servidor y los logs acusan redirects infinitos. LA SOLUCION:Tocar los 3 htaccess que intervienen agregando una / inicial a los php. Van los ejemplos:ROOT .htaccess< IfModule mod_rewrite.c > RewriteEngine on RewriteRule ^$ /app/webroot/ [L] RewriteRule […]

fpdf font generator add fonts

Esta página permite uploadear un ttf y descargar los archivos para meter en la carpeta fpdf/fonts luego es cuestion de$pdf->AddFont(‘Verdana’,”,’verdana.php’); o de:$pdf->AddFont(‘Verdana’,’B’,’verdanab.php’); http://fpdf.fruit-lab.de/index.php?id=3 para bajar fuentes:http://www.webpagepublicity.com/free-fonts-l3.html#Free Fonts

Migrar sitio de URL en wordpress

UPDATE wp_options SET option_value = REPLACE ( option_value, ‘olddomain’, ‘newdomain’) WHERE option_value LIKE ‘%olddomain%’; UPDATE wp_posts SET post_content = REPLACE ( post_content, ‘olddomain’, ‘newdomain’) WHERE post_content LIKE ‘%olddomain%’; UPDATE wp_posts SET guid = REPLACE ( guid, ‘olddomain’, ‘newdomain’) WHERE guid LIKE ‘%olddomain%’; UPDATE wp_postmeta SET meta_value = REPLACE ( meta_value,  ‘olddomain’, ‘newdomain’) WHERE meta_value LIKE […]

CakePhp – Console – Mysql & Mac

A la hora de ejecutar un shell via cakephp, tengo este error: Warning: mysql_connect(): [2002] No such file or directory (trying to connect via unix:///var/mysql/mysql.sock) in /Users/pablo/Documents/workspace/gad/cake/libs/model/datasources/dbo/dbo_mysql.php on line 552 Solucion: hacer un link para dejar todo como lo quiere:sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /var/mysql/mysql.sock Taht’s it!

Mysql – Incorrect arguments to DATA DIRECTORY – MAMP

Incorrect arguments to DATA DIRECTORY, un error que me sale a la primer modificación que quise hacer a una base de mysql. La base estaba instalada via MAMP, en Snow Leopard. Solución:Crear el archivo my.cnf en el directorio /etcy adentro estas 2 líneas: [mysqld]datadir=/Applications/MAMP/db/mysql/

Entendiendo GIT

Comandos útiles Dentro de la carpeta que quiero sincronizar via GIT hay que hacer: git init Después para configurar un repositorio externo a esa carpeta: git remote add origin [email protected]:userXX/repoYYYY.gitPara agregar archivos nuevos antes de commitear: git add . Para commitear localmente mis cambios: git commit -m ‘first commit’Para commitear y agregar archivos al mismo […]

Andoid sdk y cómo hacer para que el teléfono sea reconocido

Primero seguir los pasos de esta guía:http://developer.android.com/guide/developing/device.html Luego, dentro de la carpeta del sdk /platform-tools, corrersudo adb kill-serversudo adb start-serverabd devices Debería aparecer listado el teléfono.

Mover aplicaciones a la SD en Milestone – Android 2.1

Peleando casi todo el tiempo con la falta de espacio en memoria para poder instalar aplicaciones en mi querido Motorola Milestone (Android 2.1), encontré al fin una solución, y de las buenas. El método consiste básicamente en mover las aplicaciones a la SD.Aclaro que no tengo la versión 2.2 de Android, sino la 2.1 que […]

Aplicaciones facebook y perdida de session por IE

Haciendo una aplicación para facebook me pasaba que para INTERNET FUCKING EXPLORER perdía la sessión de facebook, casi en cada request. Despues de rato y cientos de pruebas encontre un bendito post que proponía agregar un header en el archivo correspondiente. En mi caso, php y fue de la siguiente manera: //required for IE in […]

Funcionalidad Placeholder usando jQuery

Funcionalidad placeholder para formularios con JQuery.Poner este code en la page, luego llamar a placeholder.init() en el document.ready. Los inputs que quiero tengan placeholder hay que ponerle una clase con el nombre “placeholder” y en el title el texto del mismo.Para los de tipo password hay que agregarle la clase “password”, y el input tiene […]

ubuntu, compartir archivos con windows

Buen post sobre como comparitr archivos con windows, replicando los users de windows no tienen que poner clave http://www.howtoforge.com/samba_setup_ubuntu_5.10_p4

Apache y persmisos sobre /var/www

Cuando instalamos apache, necesitamos darle permisos a la carpeta /var/www para poder escribir, hacer checkout o lo que fuere, y sin tener que caer en un chmod 777! Tenemos que cambiar el dueño del directorio y con el grupo de apache $ chown tuusuario.www-data /var/www/$ chmod 775 /var/www that’s it!

Recopilaciones sobre Flash y AS

El ActionScript se coloca habitualmente en una capa llamada ACTIONS, y en el primer frame. Chequear en las properties de la pelicula, si está configurada para Player 9 y AS 3.Para ver qué código AS debemos usar. Hay varios objetos primarios a los que podemos acceder:-stage-root Ejemplo de setear un eventhandler para que ejecuto un […]

Fuentes especiales en CSS

Si tenemos una fuente no estandar, y conseguimos su archivo .ttf y .eotse puede hacer esto via CSS: @font-face { font-family: ‘DinShrift’; src: url(“/fonts/DINMITTE.eot”); src: local(‘DinShrift’), url(/fonts/DINMITTE.TTF) format(‘truetype’);} luego usar el font-family como siempre: font-familiy: DinShrift, Arial; Una página para convertir de .ttf a .eot:http://www.kirsle.net/wizards/ttf2eot.cgi Una que funciona mejor es:http://www.fontsquirrel.com/fontface/generator El .eot, es para los […]

crear cron con cake shell

si el cron no anda, fijarse la carpeta Mail en el root del user. para que funcione modifiqué el arhcivo que ejecuta la consola de cake, para que apunte al ejecutable de php:/usr/local/bin/php entonces quedó asi:exec /usr/local/bin/php -q ${LIB}cake.php -working “${APP}” “[email protected]” la entrada del cron quedó:/home/admin/documents/sistema/site/cake/console/cake informes -app /home/admin/documents/sistema/site/app Para ver el log de […]

Google Map Api, búsquedas desde PHP

Usando CURL podemos acceder a la api de google map para realizar búsquedas tipo “web”, “places” etc. $url = “http://ajax.googleapis.com/ajax/services/search/local?v=1.0&”. “q=amsterdam%20museums&key=YOUR KEY&userip=&rsz=large&start=0”; $ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_REFERER, $_SERVER[“HTTP_HOST”]);$result = curl_exec($ch);curl_close($ch);print_r(json_decode($result)); Datos de la URL:– /search/local busca lugares segun la query especificada,si pusiéramos /search/web buscar resultados globales de la web, como si buscáramos […]

Archivos de Configuración propios en Cakephp

Para tener separado settings propios de la app en un archivo que no sea core.php, se puede crear un archivo aparte por ej ‘config.php‘, ubicado en app/config/config.php Luego agregamos en app/config/bootstrap.php la siguiente línea:Configure::load(‘config’); Ahora, definimos las variables de configuración que querramos dentro de config.php del modo:$config[‘Settings’] = array(   ‘version’ => ‘1.0.213’,   ‘title’ => ‘My Application’); para […]

dyndns en router

Para que funcionara la opción de dyndns hubo que setearle la fecha y hora del router.Era un router TPLINK

montar unidades en ubuntu automaticamente startup

By default in Ubuntu the partitions are not mounted automatically. What user has to do it, either use the applet in gnome panel or try to access the partition in “Places”. I never liked this irritating chore. Lets see how partitions can be auto mounted on startup. SATA drives are represented by sdX and SCSI […]

Configurar SSH para evitar escribir todo cada vez

Editar (o crear) el archivo ~/.ssh/config y agregar los hosts de la forma : Host host1 User user1 HostName host1 Host host2 User user2 HostName host2 Para evitar que nos pregunte el pass cada vez: ssh-keygen ssh-copy-id host1 Ahora para entrar al ssh de host1 se hace: ssh host1

osx86

LSPCI:00:00.0 RAM memory [0500]: nVidia Corporation MCP65 Memory Controller [10de:0444] (rev a3)00:01.0 ISA bridge [0601]: nVidia Corporation MCP65 LPC Bridge [10de:0441] (rev a3)00:01.1 SMBus [0c05]: nVidia Corporation MCP65 SMBus [10de:0446] (rev a1)00:01.2 RAM memory [0500]: nVidia Corporation MCP65 Memory Controller [10de:0445] (rev a1)00:02.0 USB Controller [0c03]: nVidia Corporation MCP65 USB Controller [10de:0454] (rev a3)00:02.1 USB […]