20080521

Anda ya amb la crisi !

Tanta crisi i tanta ostia i aquest dissabte em vaig quedar sense poder anar a dinar a "Els Pescadors" perque estava plé !

Si tanta crisi hi ha com hi ha tanta gent que s'en va a dinar a 75 euros el cobert ?

Hi ha més paranoia que un altre cosa.

20080409

Meme d'avui fa 10 anys

Avui fa 10 anys la meva vida era radicalment diferent, he pensat fer un petit meme, qui sap, potser el miri d'aquí 10 anys més i em faci gracia.


Situació sentimental:


Fa 10 anys acabava de començar a sortir amb la Eva, actualment portem 8 anys de convivència i 4 de casats :)

Situació Laboral:

Al 1998 era consultor d'Oracle, havia acabat el projecte del Ticketing de la Caixa (ServiCaixa) i encara no havia entrat al mega-projecte Sony.

Cobrava uns 1.000 euros al canvi, així que vaig ser un precursor de l'anomenat mileurisme fins i tot abans de que s'implantes l'euro.

Després vaig estar uns 3 anys al projecte Sony dins d'Oracle.

A partir del 2001, 6 anys com a responsable tècnic de lavanguardia.es i elmundodeportivo.es.

I finalment com a emprenedor a Omatech on soc CTO i fundador.

Lifestyle:

Aquí hi han hagut molts canvis, de viure a casa els papes al 1998 a independitzar-me i anar a viure amb la Eva a començaments del 2000 a un pis de 45m2 (tambe vaig ser un precursor dels mini-pisos) a canviar-me al pis on visc ara, no es per vacil.lar però es un dúplex de 94 metres amb parking, encara que en realitat es tot del banc.

Evidentment dins de l'apartat de lifestyle no podem oblidar que els caps de setmana del 1998 me'ls passava anant al A+SACO (actual RAZZMATAZ) divendres i dissabte, sessions maratonianes !

Actualment un bon cap de setmana es el que no tinc que currar i no tinc compromisos socials, i el puc passar amb pijama i pantumfles amb els gats i la Eva mirant la tele o series al portàtil.

Situació econòmica:

En aquest punt no em puc queixar, de ser mileurista a Oracle he passat a tenir un sou considerable, encara que sent emprenedor hi ha mesos que s'ha de sacrificar la paga :)

Nomes cal dir que he passat de no tenir hipoteca a tenir una hipoteca de 300 euros al mes pel mini-pis (en paral·lel amb crèdit pel cotxe i milers de crèdits mes, fins i tot per comprar el llit) a tenir nomes una hipoteca pel nou pis en l'actualitat, això si, de 1.200 euros !

Música:

Aquí els meus gustos han variat poc, descobreixo grups nous com Maximo Park, Editors, fa més de temps Kings of Convenience, Interpol, Strokes...

Peró em continuen agradant Pixies, Sr. Chinarro, The Cure, Prodigy, Smiths i tants altres que ja em feien vibrar al 1998.

Tecnologia:

Crec que per aquestes dates de fa 10 anys tenia un mòbil que ara faria vergonya però que era "lo mas" en aquella època, un Ericsson (abans de que fos Sony-Ericsson), posteriorment vaig passar per algun Motorola i un Nokia, fins al Nokia clamshell que tinc actualment.

Els que em coneixeu sabreu que la meva passió son les Palms, he de reconèixer que fa 10 anys no tenia Palm ja que, segons la meva Palm, em vaig comprar la primera el dia 17/04/1998, això vol dir 10 anys menys 8 dies :)

He passat per diverses reencarnacions de Palms durant aquests 10 anys, la primera recordo que em va costar 42.000 peles i me la vaig comprar amb molt esforç de mileurista, com fan al palminfocenter el meu historial es el següent:

Palm Pilot Personal -> Palm Vx -> Palm Tungsten|T --> Palm Tungsten T5 --> Palm T|X

Val a dir que tinc emmagatzemat a l'agenda de la palm tot el meu historial dels últims 10 anys (menys 8 dies), des de hores que feia a Oracle a projectes de Vanguardia a reunions d'Omatech, etc.

Internet:

Fa 10 anys ja era un Internauta empedernit, a Oracle una de les ventatges era tenir una bona (per la epoca) connexió a Internet i una adreça de correu electrònic. Si, ara sembla ridícul, però al 1998 ser un mileurista amb email et donava cert cache :)

A casa, misèria i companyia, durant molt de temps em va acompanyar el meu modem extern de 56ks tant a casa els pares com al primer mini-pis. Posteriorment vaig possar ADSL de ya.com fins que per un error em van donar de baixa (ells s'ho van perdre) i em vaig passar a Jazztel, de moment em funciona i com diem els informàtics, "Si funciona no lo toques"

Coneixements:

Aquest punt també ha sofert molts canvis, com dèiem al grup NCA d'Oracle el nostre lema és NTNPI (No tenim ni puta idea) i això ha de ser la màxima que ha de guiar a un bon informàtic, mai ho podràs saber tot, però lo important es tenir ànsies de coneixement.

Fa 10 anys estava força tancat al món Oracle, que si PL/SQL que si SQL*Loader que si Forms que si Oracle Application Server...

Després a Vanguardia vaig ser pioner en els Servlets i JSPs (també amb molt component de PL/SQL a la part de Base de Dades), molt del codi de l'actual lavanguardia.es encara es meu, registre d'usuaris, generació de pàgines estàtiques, vaja, un munt de línies.

Dins de vanguardia ja vaig començar a fer coses amb AJAX amb prototype primer i després amb jQuery que es la canya ! com ells mateixos diuen "Javascript is sexy again"

Fa un any i mitg em vaig ficar amb el PHP i el MySQL i la veritat es que m'encanta.

Qui sap d'aquí 10 anys que estarem fent...

Una cosa curiosa de fer-te gran es com canvia l'adquisició de coneixements. Fa 10 anys aprenia de la gent mes gran que jo, ara aprenc dels mes joves. Espero que ells també puguin aprendre alguna cosa de mi a la seva vegada :)

Bé, segur que em deixo moltes coses, però em direu, a que ve tot aquest rotllo ?

Doncs avui es el meu aniversari i m'he aixecat en plan remembering al 1998 tenia exactament 25 anys tal dia com avui i al 2008 ... bé, calculeu vosaltres mateixos ;)

20080404

Why Google is hiring too many people ?

The answer is simple, since Google IPO, the company started to hire lots and lots of people (engineers basically) to fire them in case of a fall in their shares.

If you have only 2.000 employees or less (pre-IPO time) you cannot reduce your workforce significantly enough to raise your shares price in case of necessity.

Now Google have more than 20.000 employees (ten times more) and my theory is that a lot of them are not doing serious contribution to the company products and services.

Based only on my experience, the [human] customer care of google is as poor as allways has been in the past, try to make a question not found in a FAQ or ask for a index reinclusion and you will feel the nigthmare of talking to real human Googler's.

Let's see if the share's price drop, and then, how many Googler's will return to dull jobs via pink slip ?

Note:

Don't missunderstandme, I'm a huge fan of the google tools and services, the automatic ones and this post is based on my personal opinion only.

20080319

Las 8 preguntas de las consultoras Big-5 al iniciar un proyecto


En el post "Question your work", Jason de 37 signals nos proponía 8 preguntas que debes hacerte antes de iniciar un proyecto (en mi caso para clientes).



Considero estas 8 preguntas muy interesantes y, consciente o inconscientemente, siempre las planteo en los proyectos que abordamos.

Las 8 preguntas originales son estas:

1. ¿Por qué estamos haciendo esto?
2. ¿Qué problema estamos solucionando?
3. ¿Es esto realmente útil?
4. ¿Estamos añadiendo valor?
5. ¿Cambiará la manera de hacer las cosas?
6. ¿Hay alguna manera más fácil de hacerlo?
7. ¿Cuál es el coste de oportunidad?
8. ¿Realmente vale la pena?

Pues resulta que hace unos días tuve una reunión con unos ex-Consultores de una Big-5 que me recordo a mis mejores épocas rodeado de Arturitos en Sony. Entiendo que un director de una consultora high-level, al cabo de los años y con la experiencia acumulada en mil proyectos, resumiría sus ocho preguntas más o menos así:

1. ¿Tiene sangre (pa$ta) el cliente? ¿Está dispuesto a que alguien le chupe la sangre (tiene presupuesto)? Si no es así, más vale echar a correr, no sigas leyendo.
2. ¿Puedo ser yo el que se lleve el proyecto? ¿Tengo algún conocido/pariente/networking dentro del cliente que me ayude a conseguirlo?
3. ¿Es posible que el proyecto que estoy intentando vender sea totalmente inútil, pero tan caro, que el director general de la compañia apruebe el presupuesto, aunque sea para vacilar con sus amigos directores generales mientras juega a golf?
4. ¿Tengo acceso al susodicho director general, el que toma las decisiones, y me da igual lo que opinen el resto de empleados que realmente utilizarán la herramienta?
5. Aunque el proyecto sea un fracaso, ¿tengo algún cabeza de turco a quien culpar? Es ideal escoger algún empleado del cliente, que son los peor vistos por las altas esferas, si puede ser el único que lo ha dado todo por el proyecto, mejor; ¡así seguro que salen más proyectos en el cliente!
6. ¿Soy capaz de incorporar un equipo de Análisis de como mínimo 5 personas y que creen un PowerPoint de mínimo 30 Slides, lleno de obviedades, antes de la firma del proyecto y por supuesto facturar todos estos recursos (de perfil recién licenciado) a precio de MBA de Stanford?
7. ¿Puedo colocar algún consultor mega-experto de Madrid (si estás en Barcelona) o de Barcelona (si estás en Madrid)? Luce un montón, sacarás algo más de margen con las dietas y encima siempre tienes tema de conversación con él. El lunes a media mañana cuando llega: "¿Cómo ha ido el vuelo?" y el viernes después de comer: "¿A qué hora tienes el vuelo?"
8. ¿Tengo algún perfil del tipo high-level-project-manager, si puede ser gordito y bonachón mejor, que sólo vaya a la primera y a la última reunión del proyecto y cuyo propósito principal sea invitar a comer o cenar a toda la cúpula directiva y después tomar unos cubatas y lo que surja?

Como veréis, no soy muy amigo de los consultores de alto nivel, ya que se comen los jugosos presupuestos grandes dejando las migajas que realmente aportan valor para las pequeñas pymes tecnológicas :)

20080315

Se busca actor PORNO para nueva productora GAY



Mes o menys aquest es l'anunci que s'ha publicat fa poc a MADRID.IPSOJOBS.COM

Espero que tinguin exit amb la cerca de candidats...

Justament, un dels objectius de ipsojobs.com desde la seva fundació va ser captar totes aquelles ofertes de feina que d'altres canals no cobrien, ja sigui per cost (una persona que busca un cangur no esta disposada a pagar per publicar un anunci de feina) o per censura (no crec que la productora porno-gay, pugui publicar l'anunci a infojobs).

Veure anunci, solicitant actors porno-gay per una nova productora a Madrid.

Estem contents de la marxa d'ipsojobs.com en els 6 mesos que portem on-line, podeu veure el post de half-aniversary aquí

20080311

Medio-Cumpleaños feliz ipsojobs.com !



Este domingo (jornada electoral) ipsojobs.com cumplió 6 meses un medio-cumpleaños y estamos muy contentos de como esta funcionando la página. Queremos agradecer a todos los partners, city managers y usuarios la confianza que han depositado en nosotros.

Esperamos ver un crecimiento progresivo en ofertas, tráfico y usuarios en los próximos 6 meses, de momento, os dejamos algunas cifras conseguidas con mucho esfuerzo y muy poco presupuesto :)

  • Número total de ofertas publicadas: 14.709 (6.563)
  • Ofertas de trabajo activas actualmente: 4.645 (2.395)
  • Media de nuevas ofertas por dia: 81,7 (72,9)
  • Número de sites activos (ciudades): 282 (219)
  • Número de administradores (city managers): 160 (149)
  • PageRank: 4 (4)
  • Alexa Ranking: 62.204 (56.540)
  • Partners: 8 (3)


Gracias a todos los partners, administradores y usuarios. Vosotros haceis de ipsojobs.com más que un tablón de anuncios de trabajo global !

Nuestros partners:

20080309

7 Hechos que demuestran que "Los Simpson" son una nueva religión [Humor]




Esta mañana he pensado que "Los Simpson" se estan convirtiendo en una nueva religión (en España por lo menos), veamos algunos datos.




  • Ves más horas a Homer Simpson, siempre repitiendose en Antena3, que horas vas a misa (si es que alguien sigue yendo).
  • Te encuentras con situaciones cotidianas en las que sueltas, "Esto es como aquel episodio de los Simpson en que...", los sketchs de la serie son las nuevas parábolas bíblicas.
  • Cuando aparece una nueva temporada inédita (con cuentagotas) te lo tomas como el nuevo testamento, respecto a las primeras 6 o 7 temporadas repetidas (antiguo testamento)
  • Hay un choque de religiones entre seguidores de "Los Simpson" y los de "Padre de Família" en algunos locales ya han prohibido hablar de: Política, Religión y "SERIES DE ANIMACIÓN PARA ADULTOS"
  • No sabes porque pero siempre acabas viendo episodios de los Simpson a la hora de comer y/o cenar y te los sabes de memoria, incluso te avanzas a las bromas y las recitas como una letanía.
  • Cada episodio tiene argumentos más inverosímiles pero siempre con moraleja, como los evangelios.
  • Si los Simpson son una religión, Antena3 es la cadena evangélica de San Homer !!! (especializada en el antiguo testamento)


Espero que me mandeis más similitudes en los comentarios y que copies este texto en vuestro propio blog !

:)

20080307

Presentació de l'iPhone SDK (esdikey)

Aquesta nit no podía dormir i com que sabía que hi havia la presentació d'Apple del nou SDK per l'iPhone, m'he decidit a veure el vídeo de presentació.

JA NO PODRE DORMIR !

Increible, un SDK amb accés a totes les funcionalitats del Sistema Operatiu i les increibles funcionalitats que només trobes en un iPhone:

  • Multi-touch interface
  • TCP/IP integrat
  • 3D Engine
  • Geolocalització
  • Accés a la API del accelerometer (moviment espaial, tipus Wiimote)
  • SQLLite integrat
  • Só envolvente multicanal
  • Accés a la Agenda
  • Accés a la camera
  • ...


A més el SDK es gratuït, pots baixar-te'l i començar a programar JA!

Les eines de desenvolupament son espectaculars si fem cas de les demos, trempera tecnológica a tope !


També han pressentat una especie de tenda on podras descarregar els programes (sempre validats per Apple). Falta veure si aquest model de distribució de software trionfa o no, pero les característiques son espectaculars.

  • Instal.lació i actualització dels programes "over the air" sempre que tinguis connexió
  • Els programes gratuits son realment gratuits, si passen el control de qualitat d'Apple, el desenvolupador no ha de pagar res i l'usuari tampoc.
  • Els programes de pagament es venen amb un rati de 70-30 (70 pel developer, 30 per Apple)



L'unic fee que han anunciat es un fee de 99$ per entrar dins del developer program, amb la qual cosa crec que donaran support als desenvolupadors, dema mateix, omatech.com s'apuntarà al developer program, no hi ha res a perdre i si molt a guanyar.

Bé, els competidors ja es poden possar les piles:
  • Nokia ja cal que espabilis
  • Microsoft deixa-ho ja, si en tants anys no t'has fet amb el mercat, desenganyat, ja no ho faras
  • Google, potser necessitaras alguna cosa més que un Android per trencar el mercat.
  • RIM i Palm, el viure de rendes s'ha acabat, el killer mobile device definitivament ha arribat.


Si encara no era un "believer" avui m'han convençut, l'iPhone arrasarà, es un producte trencador que pot capturar molt "developer mind share" en molt poc temps i aquest cop Microsoft no té ni idea del que li ve a sobre.


Més informació a http://developer.apple.com
Per cert aquí teniu el vídeo que m'ha fet veure la llum

20080218

5 Top reasons why “webmasters” do google’s dirty job

If you’re into web development, you may have realized that you’re really working for google every day.Let’s have a look to the different google-tasks performed by a typical webmaster:1. Be kind to the Google search engine2. Google Analytics3. Google Maps4. Google Adsense5. Google Adwords...

read more | digg story

20080202

Com fer un backup incremental en 65 lineas de PERL



Sempre he volgut tenir una manera fàcil de fer backups incrementals de directoris sencers.

Aquest cap de setmana he dedicat un dia (no sencer) a implementar un procés amb els següents requeriments:

- El procés escanejara el directori d'origen i replicarà exactament tot el contingut al directori de destí
- Si pel camí trobem fitxers o directoris ja existents, comprovarem si s'han modificat
- Si el fitxer no s'ha modificat, no el copiem
- Si el directori ja existeix, no el recreem
- El directori d'origen MAI serà modificat pel procés, nomes es permet passar fitxers o directoris al destí, així minimitzem el perill de fer alguna bestiesa

Per mi, es un backup incremental prou bo.


La idea es instal·lar als nous Desktops de la oficina que van sobrats de disc dur, el procés, configurat perquè faci backup de les dues unitats de xarxa que tenim a la oficina i on tots treballem de forma compartida.

Amés una es una unitat de SAMBA que esta mapejada a un Linux de desenvolupament i l'altre es una unitat remota normal i corrent d'un Fileserver amb Windows.

Dilluns crearé un directori de backup per cada unitat de xarxa a cada PC dels nous i provaré el procés, a veure si tinc èxit.

De moment en local em funciona, us explico una mica com ho he fet:

Com sempre diu el Manel, el PERL es molt potent, val a dir que jo sempre modifico la frase per "El PERL es potent, pero PERILLOS!!!"

De totes maneres, aquest matí m'he instal.lat la versió gratuïta el "Active State Perl" el líder en entorn Windows i he començat a rascar, val a dir que fa un any que tinc experiència demostrada en PHP però el PERL és lleugerament diferent i he hagut de canviar una mica el Xip.

Anem a veure com fer un backup incremental d'un directori origen a un directori destí, en nomes 65 línies de PERL (incloent comentaris i sense fer xapusses per compactar codi)

Declaració de variables i d'intencions:

Les primeres línies son molt avorrides, només fem imports i declarem variables...


use strict;
use warnings;
use File::Find;
use File::Copy;
use File::stat;

my $files_copied=0;
my $files_updated=0;
my $dirs_scanned=0;
my $files_scanned=0;
my $dirs_created=0;

my $source = 'c:/apons/';
my $destination = 'd:/apons2/';
print "Anem a copiar tot el contingut de manera incremental de $source a $destination!\n";


$source serà el directori d'origen (recordem que aquest mai es modificarà) i $destination es el directori de destí, només cal que existeixi, el procés ja crearà tota la estructura de directoris per sota d'ell.

Uff, ja portem 15 lineas, no se pas si aconseguirem fer tot això en les 50 que ens queden :)


find(\&Wanted, $source);

print "Dirs scanned: $dirs_scanned, Files Scanned: $files_scanned\n";
print "Dirs created: $dirs_created, Files copied: $files_copied, Files updated: $files_updated\n";


De fet aquí acaba el "main program", ja que la resta esta a la Subrutina "Wanted", en aquestes 3 línies, simplement cridem a la funció find, que recorre tots els fitxers recursivament partint directori indicat pel segon paràmetre, en aquest cas $source, per cada fitxer s'executarà la subrutina Wanted.

El find de PERL (que podem fer servir gracies al use File::Find; de les primeres línies) em recorda bastant a la comanda de UNIX find . -name "$source" -exec Wanted {} \; (sempre salvant les distancies)

Ah, les altres línies son com un resum de les operacions que hem fet, clar, no ?


sub Wanted
{
my $elemento = $_;
my $source_file=$File::Find::name;
my $destination_file=$destination.substr($source_file, length($source)-1);

if (-d $elemento)
{# Es un directori
$dirs_scanned++;
if (-e $destination_file)
{# Ya existia el directori, no fem res
#print "Directorio $destination_file ya creado NO action \n";
}
else
{# No existia el directori, el creem
$dirs_created++;
print "Vamos a crear -> $destination_file\n";
mkdir $destination_file;
}
}


Anem una mica més al gra, vegem el codi de la subrutina Wanted, aquí es on es realment fem la feina.

my $elemento = $_; asigna el fitxer actual que estem tractant a $elemento;

Assignem a $source_file la variable $File::Find::name que conte el nom complet del fitxer (incloent el directori).

A la línia my "$destination_file=$destination.substr($source_file, length($source)-1);" es on substituïm el directori d'origen pel directori destí.

El "if (-d $elemento)" comprova si el fitxer que estem escanejant es un directori, si aquest es el cas, fem el següent

$dirs_scanned++; incrementem les estadístiques.

if (-e $destination_file), si existeix el directori destí no fem res, en canvi al else, incrementem els $dirs_created, printem un missatge i fem un mkdir per crear el directori destí.

Ja portem 40 línies, ai mareta, no se si arribarem, ens queden 25 !!!



if (-f $elemento)
{# Es un fitxer
$files_scanned++;
if (-e $destination_file)
{# El fitxer ja existeix, mirem la data de modificacio
#print "El fichero $destination_file existe, comprobamos si esta actualizado.\n";
my $source_stat = stat($source_file);
my $source_mtime = $source_stat->mtime();
my $destination_stat = stat($destination_file);
my $destination_mtime = $destination_stat->mtime();
if ($source_mtime > $destination_mtime)
{# Efectiviwonder, el fitxer s'ha modificat, el copiem
print "OJITO, algo ha canviat al fitxer origen $source_file, maxaquem el backup\n";
copy($source_file, $destination_file);
$files_updated++;
}
}
else
{# El fitxer de desti no existeix, el copiem
print "El fichero $destination_file NO existe, lo copiamos.\n";
copy($source_file, $destination_file);
$files_copied++;
}
}
}


El primer if "if (-f $elemento)" controla si el fitxer que estem tractant es realment un fitxer.

El segon, controla si el fitxer de destí ja existeix "if (-e $destination_file)", si es així declarem obtenim les propietats del fitxer origen i el fitxer destí amb les següents línies:


my $source_stat = stat($source_file);
my $source_mtime = $source_stat->mtime();
my $destination_stat = stat($destination_file);
my $destination_mtime = $destination_stat->mtime();


La funció stat, la podem fer servir gracies al "use File::stat;" en aquest cas obtenim el mtime (modification time) del fitxer d'origen i del destí.

Posteriorment comprovem si el "$source_mtime > $destination_mtime" si es així hem de maxacar el fitxer de destí sense pietat, ja que està obsolet:


print "OJITO, algo ha canviat al fitxer origen $source_file, maxaquem el backup\n";
copy($source_file, $destination_file);
$files_updated++;


Com veieu hem aprofitat per printar un bonic missatge i incrementar el contador de fitxers actualitzats.

Finalment anem al else, que es quan el fitxer de destí no existeix, llavors simplement copiem el fitxer al destí, printem un missatge i actualitzem les estadístiques.


print "El fichero $destination_file NO existe, lo copiamos.\n";
copy($source_file, $destination_file);
$files_copied++;



Aquí podeu veure un exemple de una execució incremental:


C:\apons>test.pl
Anem a copiar tot el contingut de manera incremental de c:/apons/ a d:/apons2/!
El fichero d:/apons2//lvg200706120451lb.pdf NO existe, lo copiamos.
OJITO, algo ha canviat al fitxer origen c:/apons/test.pl, maxaquem el backup
El fichero d:/apons2//i_want_you_to_learn_perl.jpg NO existe, lo copiamos.
Vamos a crear -> d:/apons2//proves
El fichero d:/apons2//proves/jquery.js NO existe, lo copiamos.
El fichero d:/apons2//proves/provainplace.html NO existe, lo copiamos.
El fichero d:/apons2//proves/provainplace2.html NO existe, lo copiamos.
El fichero d:/apons2//Superman-RedSon/Superman - Red Son 03/RED SON08.JPG NO existe, lo copiamos.
Dirs scanned: 250, Files Scanned: 2653
Dirs created: 1, Files copied: 6, Files updated: 1


No torno a copiar tot el codi complert, perquè son només 65 línies, una mica de entrenament de copy&paste no us anirà malament ;)

Enjoy!