Blog

  • What’s in an SPA?

    Initially nothing. You can start from zero. Or have a landing page with a login, like in this case:

    <body>
    <div data-role="page" id="login">
    <div class="login">
            <label for="user">User</label><input id="user"/>      
            <label for="pwd">Password</label><input id="pwd" type="password" />
       <button>Login</button>
        </div>
    </div>
    </body>

    (more…)

  • What do I do?

    I code, I teach, I design, I sometimes take pictures. I’ve been coding for a very long time. Very long. By the time the people who was my coworkers at Apple in the early nineties were phasing out into management I was still coding. I’m still coding now, twenty years later. Sure, I’ve graduated into sometimes managing and mentoring other coders. But I don’t use this as an excuse to stop coding.

    Yeah, right. Very touching. What do I really do? (more…)

  • El Diógenes digital

    Cientos de archivos temporales, otros tantos en directorios de entrada de un proceso, versiones antiguas punto zip (con una fecha para saber cuándo se olvidó eso ahí), archivos de código que ya no forman parte del proyecto…

    Bienvenidos al apasionante mundo del Síndrome de Diógenes digital. Una tara que es síntoma de ineptitud digital. Porque no tienes un sistema de versiones operativo (o lo tienes pero no lo usas “porque no me fío”). Porque no has montado en tu servidor una tarea que periódicamente limpia los archivos temporales que tu programa ha ido generando, por ejemplo, al subir los documentos de tus usuarios. Ineptitud digital. Especialmente grave si lo descrito en el primer párrafo lo encuentras en un servidor de producción.

    Por favor, que alguien le pase un pañito al server. Y, después, al proceso en general.

  • Apps simples

    Los tres gatos que me conocen me han oído repetir más de una vez un mini-mantra: una app hace una única cosa y la hace bien. Y cada vez hay menos excusas. La versión 8 de iOS incluye mecanismos de comunicación entre aplicaciones que superan la funcionalidad de los Intents en Android. Ya tiene las dos plataformas mayoritarias la capacidad de crear aplicaciones que ofrecen servicios a otras aplicaciones.

    Así que se acabó el hacer apps llenas de poyaques y de “por si alguien la necesita”. De hacer apps monolíticas con distintas “secciones” que intentan cubrir todo lo que un usuario pueda necesitar de un tema concreto. Si tu idea de producto cubre distintos aspectos crea una app por cada uno de ellos. Y, si esos aspectos/secciones/negociados necesitan intecomunicarse hazlo, pero usando el sistema. No creando una única mega app.

    El usuario que no necesita cargar con todo no se perderá o no dirá “buff, yo busco algo más simple”. El soporte y actualización de cada app será más simple. Sobre todo la actualización en cierta App Store que no se caracteriza por sus tiempos de reacción.

    Apps simples, que hagan una única cosa y la hagan bien. No mareeis a los usuarios.

  • Monday Rant: de los programadores

    No me digas que el programa está haciendo algo raro. Es tu programa. No se ha escrito solo. Únicamente hace lo que le has pedido que haga. Que no siempre es lo que pretendes que haga. Tampoco me digas que no sabes lo que está pasando en un momento dado. Es tu obligación saber depurar tu propio código. De hecho, deberías ejecutarlo con el depurador al menos una vez. Es tu código. No es dificil de leer. Si sabes programar. (more…)