gentoo linux, java, software libre y otras hierbas
abr, 08 2011 - 1:20 am

Mi experiencia como freelance; pros, contras y cómo empezar

Hace ya más de 8 meses que trabajo como freelance y quisiera compartir con ustedes mi punto de vista respecto a este tipo de trabajos. Primero veremos las herramientas existentes para convertirse en freelance sin salir de casa (e incluso, sin tener contactos previos), y posteriormente mencionaré los pros y los contras. Así que si quieres ser freelance y eres estudiante o simplemente no eres tan bueno con las relaciones sociales, este artículo te podría servir.

¿Cómo empezar?

Existen sitios en Internet que se dedican exclusivamente a eso: servir como puente entre contratistas freelance (programadores, diseñadores, traductores, etc.) y empresas o personas que requieren de dichos servicios. Las más importantes actualmente que recuerdo son: oDesk, elance.com, Freelancer, GetACoder, entre otras. Actualmente trabajo usando oDesk, así que es la herramienta bajo la cual voy a dar mi punto de vista.

Este tipo de empresas son ideales para iniciar en el mundo del freelancing, puesto que no es necesario tener ningún tipo de experiencia previa y hace mucho más fácil la búsqueda de clientes. Antes que nada, ¿cómo funcionan este tipo de empresas? bueno, es básicamente una bolsa de empleo online:

  • Usted, como freelance, crea un perfil que es básicamente un Currículum Vitae virtual (tipo LinkedIn).
  • Los empleadores publican empleos de diversos tipos (PHP, Java, Android, iPhone, traducciones, etc.)
  • Usted puede aplicar a los trabajos que considere apropiados, con lo cual se inicia un proceso de selección.
  • Si gana un contrato, se define el modo de pago: por horas o a precio fijo. El precio por horas es contabilizado por un software especial, que básicamente nos monitorea mientras estemos trabajando.
  • Se recibe pagos de diversas maneras: una tarjeta débito de Payoneer, consignaciones directas a nuestra cuenta bancaria, Paypal, Moneybookers, etc.

Pros del trabajo como freelance

  1. Rentabilidad: sin duda alguna es más rentable que el trabajo convencional. O al menos debe serlo en países latino americanos, en donde el trabajo como programador no es tan bien remunerado como debería ser. No voy a entrar en detalles de mis ganancias pero, para que se haga una idea, desde que trabajo como freelance estoy ganando un 300% más que antes. Además, hay que tener en cuenta que me faltan décadas para ser experto, lo cual quiere decir que cualquier programador novato como yo puede tener ganancias considerables.
  2. No necesita ser profesional: al menos en Colombia (supongo que pasa en todas partes), cuando se busca trabajo y no se tiene un título de profesional, los empleadores se aprovechan de esto y pagan lo que les venga en gana. Cualquier excusa es buena para limitar los ingresos del programador (ser aún estudiante, no tener experiencia previa, no tener bonitas piernas, etc.). Este tipo de problemas no existen en empresas como oDesk: lo contratan porque saben que tiene conocimientos y capacidades de hacer el trabajo, y le pagan en base a esto. De hecho, usted decide cuanto le pagan.
  3. Menos monotonía: una de las razones por las cuales se pierde el gusto por el trabajo es la monotonía. La rutina se vuelve insoportable, lo cual afecta notablemente la productividad, perdemos el interés por lo que estamos haciendo, etc. Trabajando como freelance, el 90% de los proyectos no duran más de 3 meses, y por ende siempre se están haciendo y aprendiendo cosas nuevas.
  4. Trabajar en casa: ¿Tiene que cumplir un horario? ¿Tiene que madrugar? ¿Odia el transporte público? ¿No le gusta bañarse? Pues bien, por esas razones me encanta mi nuevo estilo de vida. Antes dormía cuatro horas diarias, ahora duermo siete o más. Mi oficina queda a un metro de la cama. Cuando estoy aburrido juego con mi perro; cuando estoy cansado duermo en mi cama; y lo más importante: cuando hago mis necesidades fisiológicas voy a mi baño (todo sin despeinarme, vea usted!).
  5. Cambio constante de jefes: ¿odia a su jefe? ¿que tal si pudiera cambiar de jefe cada dos meses? la verdad no tengo queja alguna del 80% de los jefes que he tenido, pero no está mal saber que se puede cambiar de jefe cada contrato.
  6. La poligamia es legal! Es decir, puede tener tantos proyectos activos como su cuerpo resista. Incluso, si trabaja de manera normal, puede hacer trabajos extras como freelance. Esto va de la mano con la monotonía. Cuando me aburro de un proyecto, simplemente me pongo a trabajar en otro, etc.
  7. Las hojas de vida pierden importancia: los Currículum Vitae son sin duda un requisito para cualquier entrevista de trabajo. Es tal su importancia que incluso mientras estamos en la escuela (colegio, para los más afortunados) nos enseñan cómo preparar hojas de vida. La tendencia es a inflar la hoja de vida: entre más estudios tengamos, entre más experiencia laboral, entre más posgrados, etc., mucho mejor. Pues bien, para las personas con poca experiencia, pocos estudios, etc., trabajar como freelance es una gran ventaja ya que el CV pierde bastante peso, y lo que importa es lo que realmente sabes (que es demostrable como hablaré en otro post).

Contras

  1. Posible inestabilidad: cuando se trabaja con un contrato normal, se tiene un puesto seguro (o casi). Incluso si no hay mucho (o nada) por hacer, uno sigue recibiendo un sueldo fijo. Por otro lado, trabajar como freelance implica estar constantemente buscando un nuevo proyecto… y en ocasiones pueda que hayan espacios prolongados de tiempo en los cuales no se tenga ningún proyecto activo. Personalmente, lo que más he durado como ‘desempleado’ siendo freelance ha sido 6 días. Nada grave, pero no está demás tenerlo en cuenta.
  2. Interacción con otras personas: lo más probable es que tenga que trabajar solo. ¿A quien jugará bromas o le contará esos chistes malos que se sabe? ¿Con quien va a hablar del partido de fútbol del domingo? Interactuar con la gente es algo que, definitivamente hace falta, y es un espacio que la mayoría de los perros no pueden llenar.
  3. Trabajar en casa: sí, también tiene sus contras. Es posible distraerse fácilmente: el hijo pidiendo ayuda para una tarea, el perro mordiéndonos los zapatos, la TV, una olla quemándose en la cocina, etc. Lo recomendable en este caso es tener un estudio, con un ambiente propicio para el trabajo y lejos de la mayor cantidad de distracciones posible.
  4. Es necesario saber inglés: o al menos en el 98% de los casos. Si no habla y/o escribe inglés de una manera decente, es difícil que consiga nuevos contratos. Tenga en cuenta que la mayoría de los clientes son estadounidenses, ingleses o árabes (que hablan inglés, claro).

Hay aún muchos temas por tratar al respecto, sin embargo no quiero sobrecargar este artículo. Dependiendo de la respuesta que tenga podría publicar en detalle cómo funciona oDesk, además de dar algunos consejos para sacarle el mejor provecho y aclarar más dudas.

105 Comentarios | deja el tuyo

dic, 08 2009 - 1:58 am

Recuperar archivos eliminados usando Foremost [configuración manual]

¡Hola a todos! Hace un par de días perdí la partición donde tenía mi /home. Afortunadamente pude recuperar el 98% de los archivos que necesitaba. Es decir, en realidad no me interesaba recuperar imágenes, música, etc… lo único importante era recuperar los archivos PHP con los que había estado trabajando.

Aclaro esto puesto que esta entrada se va a enfocar en la configuración manual de Foremost, un programa para hacer carving, de tal manera que rescatemos solamente aquello que realmente nos interesa. Existen otros programas, pero este fue el que realmente me ayudó en esos momentos de pánico.

¿Cómo funciona? Foremost trabaja con imágenes generadas con dd o particiones directamente, y se basa en el análisis de encabezados y footers de los archivos para ‘extraer’ lo que se pueda salvar.

Importante: si has eliminado accidentalmente algún archivo lo primero, después de blasfemar un rato, es evitar hacer cualquier tipo de escritura de datos sobre la misma. Esto es porque tus datos en realidad aún están allí, y el único riesgo que tienen de ser eliminados es que se sobrescriban datos en el mismo sector en donde se encuentran.

Leer el resto de la entrada…

8 Comentarios | deja el tuyo

dic, 03 2009 - 10:40 pm

Usando b43 para tarjetas inalámbricas BCM43xx en Linux

Hola a todos!

Otra vez Cortex, que llevaba un buen rato sin pasarse por aquí.

Para los que aún no se han enterado, el día de hoy se hizo estable la versión 2.6.32 del kernel Linux. Como siempre, incluyendo múltiples mejoras, varios añadidos y correcciones. Por mencionar algunas de las cosas nuevas, encontraremos soporte 3D para los chips gráficos Radeon más nuevos (algo que sé que muchos estaban esperando) así como soporte para KMS, Devtmpfs con lo cual se pretende tener un Linux independiente de Udev, mejoras en el sistema de archivos Btrfs, mejor manejo de memoria y mucho más.

Algo que todos los usuarios de tarjetas inalámbricas BCM43xx estabamos esperando, era el soporte de éste chipset por el driver b43. ¿Motivos? Muchos. Por ejemplo, no podíamos poner nuestra tarjeta en modo monitor y eso ya es mucho que decir.

En ésta nueva versión del kernel, ya hay soporte para éste tipo de chipsets y lo más recomendable es hacer la migración inmediata. No hay comparación alguna con el driver broadcom-sta, se nota un mejor funcionamiento, algo que los usuarios Windows podían disfrutar desde hace un buen rato ya.

Veamos como podemos disfrutar de éste driver.

Lo primero, es decir, que se necesita hacer uso de la versión 2.6.32 de Linux; ninguna versión anterior servirá. Si aún no te animas a compilar tus kernel personalizados (algo de lo que habíamos hablado I II III), la opción que te queda es esperar a que los desarrolladores de tu distribución incluyan el paquete precompilado con ésta versión. Si usas la ramas estables, probablemente pasará un buen tiempo antes de que ésto ocurra.

Éste driver sólo soporta los nuevos dispositivos BCM43xx IEEE 802.11G, pero no los viejos IEEE 802.11B. Éstos son soportados por el driver b43legacy. Para saber si tu tarjeta broadcom ya es soportada por éste driver, revisa aquí.

El proceso lo llevaré acabo desde mi Gentoo.

1. Instalamos gentoo-sources-2.6.32

emerge –sync
ACCEPT_KEYWORDS=”~arch” emerge -av gentoo-sources

2. Configuramos el kernel normalmente y agregamos el soporte

 Device Drivers -->
   Network device support -->
     Wireless LAN
       [*] Wireless LAN (IEEE 802.11)
       <*>   Broadcom 43xx wireless support (mac80211 stack)
       [ ]     Broadcom 43xx PCMCIA device support
       [*]     Broadcom 43xx debugging

3. Compilamos, copiamos kernel a /boot y modificamos GRUB

make && make modules_install
mount /boot
cp arch/x86_64/bzImage /boot/gentoo-2.6.32
vim /boot/grub/grub.conf

4. Una vez instalado el kernel, procedemos a instalar b43-fwcutter y el firmware. La versión que incluye hoy, tu distribución, no te servirá. Descarguemos la versión en desarrollo

git clone http://git.bu3sch.de/git/b43-tools.git
cd b43-tools/fwcutter
make
cd ..
Nota: En caso de que recibas un error, debido a la falta de la librería cURL, recompila dev-util/git con el USE flag curl.

5. Descarguemos e instalemos el firmware

export FIRMWARE_INSTALL_DIR=”/lib/firmware”
wget http://downloads.openwrt.org/sources/broadcom-wl-4.178.10.4.tar.bz2
tar xjf broadcom-wl-4.178.10.4.tar.bz2
cd broadcom-wl-4.178.10.4/linux
sudo ../../fwcutter/b43-fwcutter -w “$FIRMWARE_INSTALL_DIR” wl_apsta.o

6. Reiniciamos

Una vez hayamos terminado de reiniciar, como root comprobamos que la interfaz esté funcionando:

iwconfig
ifconfig wlan1 up
iwlist wlan1 scan

¡Eso es todo! ¡A disfrutar sanamente del modo monitor!

41 Comentarios | deja el tuyo

« Entradas anteriores