Diseño de sistemas

Cuando alguien me pregunta en que consiste la programación, respondo que consiste, 80% es pensar y el 20% es escribir código. Desde mi punto de vista y experiencia, los errores de programación en comparación con los errores de diseño son ínfimos. Cambiar algunas líneas de código o re-escribir una función es mucho más fácil que un cambio en el diseño. El primer paso a la hora de diseñar un sistema es conocer el dominio del mismo, quién lo va a usar, cuántos usuarios va a tener, qué cantidad de datos vamos a manejar, tiene que ser escalable, qué tipo de persistencia necesitamos, etc.
Leer más

Arquitectura de aplicaciones open source: 500 líneas o menos

500 líneas o menos (500 lines or less) es un nuevo volumen de la serie Architecture of Open Source Applications. En esta serie de libros, constituida actualmente por 3 volúmenes, tratan la sobre la arquitectura, infraestructura, escalabilidad, etc, de ciertas aplicaciones de código abierto bien conocidas. En el último volumen, el cuarto de la serie, 500 líneas o menos se enfoca más al diseño desde el punto de vista del desarrollador.
Leer más

Infraestructura de Streaming detrás del mundial FIFA 2014

El mundial de fútbol es quizás el evento deportivo con más trascendencia del mundo, diría que incluso por encima de las olimpiadas. Y en los tiempos que corren, en el que casi todo se mueve a través de internet y telecomunicaciones, puedes imaginarte el tráfico generado por el servicio de srteaming detrás de un evento como este. En esta entrada de Leandro Moreira, nos explica de forma muy resumida algunos de los problemas con los que tuvieron que lidiar, la tecnología que usaron, etc.
Leer más

Introducción a la arquitectura y programación sobre ARM

Cada vez son más los dispositivos que salen al mercado con procesadores ARM. No sólo teléfonos móviles y tabletas, sino dispositivos embebidos y pequeños como Raspberry Pi, Beaglebone, etc también incorporan dicha arquitectura. Si estás interesado en aprender más sobre ARM, este tutorial está dividido en dos partes: Introduction to ARM y Efficient C for ARM. El índice de la primera parte: Introduction to ARM, es el siguiente: Start Why Learn Assembly Language?
Leer más

Microhistorias: Urs Hölzle, el hombre que hizo realidad el sueño de Sergey y Larry

He de admitir que no tenía ni idea de quién era Urs Hözle hasta ahora que estoy leyendo el fantástico libro "I'm feeling lucky" de Douglas Edwards. Para saber la gran importancia de Urs en la creación del actual Google, volvamos a esa habitación Gates 360 de la Universidad de Standford donde Sergei Brin y Larry Page estaban ya desarrollando sus primeros prototipos basados en su famoso algoritmo de búsqueda.
Leer más

El nuevo arte: robotizado y programado

Esta torre de seis metros está íntegramente construida con robots voladores. El ensamblaje consta de 1500 ladrillos de poliestireno y los robots están programados para interactuar entre ellos, calcular las medidas y averiguar la situación exacta en la que colocarán el siguiente ladrillo (X, Y y Z). Los artífices de la idea han sido los arquitectos suizos Gramazio & Kohler and Raffaello D’Andrea. La exposición se realizará en el FRAC Centre de Orleans, Francia, desde el 2 de Diciembre al 19 de Febrero de 2012.
Leer más

Rascacielos Vertical Strip en la presa Hoover

El diseñador de este singular edificio es el arquitecto Stephan Sobl. Su localización será sobre el río Colorado en Nevada, en el lado derecho de la presa Hoover. La torre esta pensada para albergar un casino (viva Las Vegas) un hotel, un ring de boxeo y una sala de conciertos. Los principales materiales de construcción serán la fibra de carbono, cemento y armazones metálicos para las zonas exteriores. Este proyecto de ingeniería conceptual cuenta con los avances tecnológicos más punteros y para su desarrollo se ha contado con la colaboración de la Universidad de Artes Aplicadas de Viena.
Leer más

Superando el "Cuello de botella de Von Neumann"

Antes de nada, el "Cuello de Botella de Von Neumann" es un problema de toda arquitectura basada en la arquitectura con el mismo nombre que todos conocemos. El ancho de banda entre la CPU y la memoria y bus para los dispositivos de E/S (Ej: discos duros) es muy pequeño en comparación con la interna de la CPU. No es problema fácil de resolver aunque haya muchas teorías, aquí puedes ver varias de ellas y el motivo por el cual no es tan fácil.
Leer más

Repositorio de información técnica sobre x86 y x86-64

Tecnología también conocida como IA-32 (x86 - 32bits) y AA-64 (x86 - 64bits). La web está llena de documentos técnicos sobre dichas arquitecturas. No sólo incluye información técnica sobre microprocesadores Intel o AMD, sino también sobre Cytrix, Centaur, Transeta, etc. También puedes encontrar gran cantidad de documentos técnicos sobre plataformas como IBM, NEC, etc.
Leer más

BrisCAD: un Autocad serio para Linux

Sufro en mis propias carnes los problemas de CAD que puede llegar a tener un estudio de arquitectura en un proyecto de gran envergadura. Cuando se traspasan archivos entre estudios con diferentes versiones de autocad puede organizarse todo un caos en el universo de las importaciones y/o plumillas. Se necesitan programas muy robustos y con niveles de compatibilidad del 100% pero, seamos serios, no existen buenas alternativas para usuarios de CAD dentro del mundo de linux.
Leer más