Report inadequate content

Web in Harecoded

How to setup a remote development environment over SFTP (working copy)

This article explains how to setup the server and client to work with a remote working copy.

To properly understand this post you should have read the previous post, When to setup a remote development environment over SFTP (working copy).

To have the enviroment up and running you must setup once the server, and then apply the configuration of the client in every developer machine. But the client side is very simple and requires no installation at all.

Here's how:

Read more

When to setup a remote development environment over SFTP (working copy)

When a programmer has a local copy of the code and an environment fully functional where the web can be tested before going live, we usually call it a working copy.

The action of moving/copying/putting this work in the final live server (a.k.a production server/environment) is called the deploy action.

There are many ways of having a working copy up and running. We, the key stroker maniacs, use to work more or less with one of the following working copy configurations:

  • No working copy. The one who enters via SSH and uses the editor vi. Yeah!
  • Edit via FTP/SFTP with an editor installed in the local machine. No working copy, the return.
  • Local web server. Usually a pre-built LAMP solution, such as MAMP or XAMPP. Valid until you need to add 2 or 3 more services like Memcached, Sphinx, Solr, MongoDB, Redis or anything like that, or the Virtual host configuration starts to change over and over.
  • A web server in your LAN. Several users using a machine with all the services configured, having their own running copy. Different DocumentRoot per user.
  • The Virtual machine lover, who runs a VirtualBox or VMWare with a full linux installed and exports and shares the appliance with colleagues if necessary.
  • The Vagrant chef, who has an automated system to deliver pre-configured environments to any number of developers using VirtualBoxes underneath.

In this post, I am proposing something different, it has the smell and aroma of the early 90's development, but still, a good solution when you have a middle team (2-20) where people don't want to be bothered with constant database changes and service tunning. It is the private remote working copy over SFTP. Keep reading...

Read more

Musica online gratis y sin anuncios

Desde hace ya bastantes meses vengo usando Grooveshark. Un servicio de streaming que te permite escuchar la música que quieras de forma gratuita, que a diferencia de Spotify en su versión gratuita no ponen cortes publicitarios, cosa que se agradece enormemente. Grooveshark solo muestra un banner en un lado del reproductor web, por lo que se puede dejar abierto en segundo plano y seguir con otras cosas.

Grooveshark

Hoy he descubierto además PlayListNow, un servicio que ofrece música en función de lo que estés haciendo en ese momento. Completando la frase de lo que estás haciendo en este momento te sugiere varias playlists, eso si, hay que escribirlo en inglés, pero el servicio vale la pena. Los usuarios pueden crear playlists nuevas asociadas a un momento concreto.

Playlistnow

Muy interesante parece también Musicuo, quienes dicen que por subir más de 1000 canciones te dan una cuenta VIP (¿no son muchas?). Extremadamente parecido a iTunes y este sí totalmente en Español.

Musicuo

Además de Spotify, Grooveshark, Playlistnow o Musicuo existen otros muchos servicios para escuchar música online, incluso más experimentados en la red como Deezer o Last.fm. Internet está plagado de ellos.

Deezer

¿Y tu cuál usas? ¿O todavía reproduces la música desde el fichero?

Linux web development. Test web sites in Internet Explorer inside Linux

IE: We hate it, but our customers don't know anything else... So, we must test how Internet Explorer renders our websites. It's a bit unpractical to boot from another partition, or change your machine for testing. There are a couple of useful practices:

  1. Install a Virtual Machine for Linux, such as Virtualbox with a windows XP in it
  2. Install IE5, IE5.5 or IE6 as a linux standalone application with IEs4Linux

I have a Windows XP with 128MB RAM for Internet Explorer 7 testing inside my VirtualBox for linux. So, when i want to see how IE7 treats my valid XHTML and CSS i boot the virtual machine and I test it. But, when older IEs come into play, I directly load an internet explorer thanks to IEs4Linux, as if it were another Linux application. This is not something really new, since it is a shortcut to wine, but it's really fast to install and you get all the versions working with a single command. Give it a chance.

XRAY: Bookmarklet para desarrolladores web

Hoy he descubierto XRAY, un bookmarklet que funciona para Firefox, Safari, Camino o Mozilla y que permite ver las propiedades de un elemento de la pantalla haciendo click sobre él.

No es para nada comparable a FireBug o el Safari WebKit pero puede resultar igualmente interesante. Por su naturaleza de bookmarklet, no es necesaria ninguna instalación, sólo hace falta arrastar el vínculo que ofrecen desde la web a la barra de herramientas del navegador. He ahí una imágen del susodicho en acción.

96349-83178.jpg

Amazon S3: un servicio bueno, bonito y barato pero nada práctico.

Recientemente compré (y luego cancelé) una cuenta de Amazon Simple Storage Service (Amazon S3). Un espacio de almacenamiento virtual, digámosle un disco duro, a un precio muy competitivo.

Con S3, pagas tan sólo lo que usas. En dos conceptos diferentes: por espacio que consumes al mes, y por peticiones que recibe el servidor.

Para hacernos una rápida idea de los precios, si tenemos que almacenar unos 10GB nos costarían 1,5$ al mes. Luego, la transferencia de datos a parte, que cuesta 0,01$ por escribir o listar 1000 objetos (operaciones PUT/LIST) y otro céntimo de dólar por descargar (GET) 10.000 objetos. No se cobra por borrar. Vaya, que pagas más de la comisión del banco por cambio de moneda que lo que vas a gastar haciendo copias de seguridad de tus ficheros

Básicamente este servicio te permite:

  • Escribir, leer y borrar objetos de hasta 5Gb cada uno, sin limitación en el número de objetos que vas a guardar.
  • Recuperar los objetos a través de un ID y clave únicas (no recordables por un ser humano)
  • Sistemas de autenticación para recuperar objetos y poder decidir cuales son privados o públicos
  • A través de REST y SOAP gestionar los objetos
  • Bajarlos a través de HTTP y BitTorrent (de momento)

Amazon S3 tiene realmente un precio muy competente, pero no está todavía preparado para el usuario final (ni creo que lo prentedan por ahora)

Aunque hay gente que se ha espabilado y han salido diversas aplicaciones que te permiten interactuar con el servicio, en mi opinión Amazon debería proporcionar una interfaz WEB bajo la cual se pudieran gestionar los ficheros, cambiar permisos, etc... Sobretodo el tema referente al cambiar permisos, decidir cuales son públicos y cuales no, ya que hay que ser un poco freaky para organizar todo esto :(

Recursos para gestionar S3

La aplicación que más me ha gustado mientras he tenido la cuenta ha sido JungleDisk, que te permite montar Amazon S3 como una unidad de disco utilizando WebDAV: tanto en Mac, Windows como en Linux (este último no lo llegué a probar), ahi van un par de pantallazos de la versión Windows mientras lo usaba:

96347-83181.jpg           96347-83182.jpg

Con JungleDisk puedes arrastrar los ficheros a la unidad y se suben automáticamente, como si fuera otra unidad de red más. Los cambios parecen instantáneos pero lo que realmente sucede es que JungleDisk pone en una cola los ficheros y los va subiendo poco a poco, a velocidad real de red. Si algo tiene muy bueno es que cachea los listados y tu cuenta no sube de precio por hacer LIST innecesariamente y que también tiene una versión USB en 8MB que funciona en linux, win y mac a la vez, muy interesante.

También hay otros scripts interesantes en ruby, python y muchisimas utilidades command-line que encontrarás fácilmente por la red. Asimismo. también existe una API interesante para PHP llamada PHP-AWS que descargué (checkout subversion) y utilizé para programar una sencilla interfaz web (nada que enseñar). También hay APIs disponibles para otros lenguajes.

En cuanto a la generación de código REST y SOAP para utilizar Amazon S3 en su pleno potencial no te queda más remedio que darle a la manija y ponerte las pilas. Una ayudita para generar código la tienes en el AWS Zone

Más recursos en el blog de Jeremy Zawodny

Inconvenientes de S3 y por qué he dejado de usarlo (por ahora)

Bueno, habrás visto que de usuario final nada, que uno tiene que poner mucho de su parte si quiere sacarle partido a la cuenta. A parte de eso:

  • Amazon no dispone de una interfaz web para interactuar con tus objetos. Como mínimo me gustaría poder abrir my bucket y decir, "esta carpeta es pública", pero nada, esto no existe...
  • Los objetos se encriptan por defecto, cosa que está muy bien, pero luego cuando los quieres descargar via HTTP, como decimos por aquí, BUTIFARRA!. Tienes que programarte tu mismo esa interfaz para interactuar con el servicio.
  • Tampoco dispone de una documentación sólida. Si tenemos en cuenta que para cambiar los permisos o hacer opearciones 'de verdad' tienes que interactuar via SOAP, la verdad, uno es freaky, pero a veces se cansa de googlear continuamente.
  • Hacer un Backup de verdad via red, es muy lento. Esto puede servir para guardar tus PDFs, pero no para subir tus fotos de la comunión.

Amazon S3 está muy bien para complementar el almacenamiento de las webs de tus clientes, pero para hacer backups, la red no da tanto de sí. Siempre va a ser mucho más rápido hacerlo en local. En cuanto al usuario i final y guardar mis documentos online, si te conformas con arrastrar y soltar, y depender de JungleDisk por el resto de tus días, quizá tampoco está mal. Eso sí, para guardar Gigas de información.... ármate de paciencia.

Si como yo, lo quieres probar, a mi la broma me ha costado 1.13? :)