Cómo perder peso (en el navegador)

¿Y si nos juntáramos un grupo de expertos que trabajan en grandes sitios para crear una guía para el rendimiento front-end definitiva? Y no sólo una de esas aburridas guías hechas para robots, ¿y si hiciéramos algo divertido? ¿Qué tal reunirse Briza Bueno (Americanas.com), Davidson Fellipe (Globo.com), Giovanni Keppelen (ex-Peixe Urbano), Jaydson Gomes (Terra), Marcel Duran (Twitter), Mike Taylor (Opera), Renato Mangini (Google) y Sérgio Lopes (Caelum) para crear la mejor referencia posible? ...

April 2, 2013 · 1 min · 98 palabras · Nacho Cano

Internet Census 2012: Port scanning /0 using insecure embedded devices

While playing around with the Nmap Scripting Engine (NSE) we discovered an amazing number of open embedded devices on the Internet. Many of them are based on Linux and allow login to standard BusyBox with empty or default credentials. We used these devices to build a distributed port scanner to scan all IPv4 addresses. These scans include service probes for the most common ports, ICMP ping, reverse DNS and SYN scans. We analyzed some of the data to get an estimation of the IP address usage. ...

April 1, 2013 · 1 min · 91 palabras · Nacho Cano

The 8085’s register file reverse engineered

On the surface, a microprocessor’s registers seem like simple storage, but not in the 8085 microprocessor. Reverse-engineering the 8085 reveals many interesting tricks that make the registers fast and compact. The picture below shows that the registers and associated control circuitry occupy a large fraction of the chip, so efficiency is important. Each bit is implemented with a surprisingly compact circuit. The instruction set is designed to make register accesses efficient. An indirection trick allows quick register exchanges. Many register operations use the unexpected but efficient data path of going through the ALU. ...

March 31, 2013 · 1 min · 98 palabras · Nacho Cano

Las primeras programadoras

Cuando se habla del nacimiento de los primeros computadores, normalmente, se suelen asociar a hombres que trabajaban en el equipo de descifradores de códigos Bletchley Park durante la Segunda Guerra Mundial (como Alan Turing), John William Mauchly y John Presper Eckert en el ENIAC o Howard H. Aiken como responsable de la construcción de la Harvard Mark I; sin embargo, en los equipos de trabajo de estos pioneros de la computación se encontraban mujeres que ejercieron de programadoras y diseñadoras de los precursores de los ordenadores y servidores que sustentan nuestro trabajo diario. ...

March 31, 2013 · 1 min · 98 palabras · Nacho Cano

DRM en HTML: la guerra por poseer la Web

Tim Berners-Lee habló hace unos días en las conferencias SXSW acerca del futuro de HTML, el lenguaje que inventó para construir la Web. Entre sus dichos habituales sobre la posición de la Web como la plataforma universal definitiva para acceder al conocimiento, Berners-Lee dijo algo que desató las protestas del mundo libre (tecnológicamente hablando): ”si no ponemos las ayudas necesarias para usar DRM [en la Web], la gente simplemente regresará a usar Flash”. ...

March 30, 2013 · 1 min · 78 palabras · Nacho Cano

SSLyze

SSLyze es una herramienta para analizar la configuración SSL de un servidor, diseñada para ser rápida y exhaustiva. Un ejemplo de uso: $ python sslyze --regular localhost:443 REGISTERING AVAILABLE PLUGINS ----------------------------- PluginCertInfo PluginSessionRenegotiation PluginCompression PluginSessionResumption PluginOpenSSLCipherSuites CHECKING HOST(S) AVAILABILITY ----------------------------- localhost:443 => 127.0.0.1:443 SCAN RESULTS FOR LOCALHOST:443 - 127.0.0.1:443 ----------------------------------------------------------------- * Compression : Compression Support: Disabled * Session Renegotiation : Client-initiated Renegotiations: Rejected Secure Renegotiation: Supported * Certificate : Validation w/ Mozilla's CA Store: Certificate is NOT Trusted: self signed certificate in certificate chain Hostname Validation: OK - Common Name Matches SHA1 Fingerprint: 12C4EC1C16807D8654269FBE5E0A8DBFBF1244CC Common Name: localhost Issuer: /C=ES/ST=IB/O=Localhost CA/CN=localhost/emailAddress=postmaster@localhost Serial Number: F525610B96987DAE Not Before: Mar 20 10:31:07 2013 GMT Not After: Mar 20 10:31:07 2014 GMT Signature Algorithm: sha1WithRSAEncryption Key Size: 2048 Unhandled exception when processing --sslv2: utils.ctSSL.errors.ctSSLFeatureNotAvailable - SSLv2 disabled. * Session Resumption : With Session IDs: Supported (5 successful, 0 failed, 0 errors, 5 total attempts). With TLS Session Tickets: Supported * TLSV1_1 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: RC4-SHA 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None * TLSV1_2 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: AES128-GCM-SHA256 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA256 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / AES256-GCM-SHA384 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA256 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / AES128-GCM-SHA256 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None * SSLV3 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: RC4-SHA 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None * TLSV1 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: RC4-SHA 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None SCAN COMPLETED IN 16.95 S -------------------------

March 29, 2013 · 3 min · 504 palabras · Nacho Cano

Una disputa en torno al spam genera el mayor ataque DDOS registrado en Internet

Varios medios se han hecho eco del que puede ser, probablemente, el mayor ataque de denegación de servicio (DDOS) registrado en la historia de Internet. Todo parece indicar que tras el ataque está una disputa en torno al SPAM. Una de las víctimas, CloudFlare, sitio especializado en la distribución de contenidos, ha confirmado el hecho. El ataque ha tenido lugar entre el 18 y 19 de este mes, afectando a muchos usuarios de la Red y servicios como Netflix. Para entender hasta qué punto el ataque ha sido importante, pensad que un ataque DDOS normal puede suponer un tráfico de 10 Gbps, y éste ha llegado a picos de 300 Gbps, el más importante que se conoce públicamente. ...

March 29, 2013 · 1 min · 122 palabras · Nacho Cano

La obra de M. C. Escher en la cultura popular

La obra de Maurits Cornelis Escher está plagada de composiciones sorprendentes en las que todos los elementos se fusionan y de perspectivas imposibles (aunque también produjo otro tipo de litografías). Su influencia fue enorme y ha repercutido en cientos de artistas. Pero también se pueden encontrar muchísimos homenajes a Escher en la cultura popular. Desde el celebérrimo gag del sillón de Los Simpson a los créditos de Donnie Darko, pasando por uno de los puzles más conocidos de God of War, estos son algunos ejemplos de la aparición de los diseños del artista holandés (o inspirados en ellos) en diversos campos. ...

March 28, 2013 · 1 min · 107 palabras · Nacho Cano

Introducing the HTML5 Hard Disk Filler„¢ API

The HTML5 Web Storage standard was developed to allow sites to store larger amounts of data (like 5-10 MB) than was previously allowed by cookies (like 4KB). localStorage is awesome because it’s supported in all modern browsers (Chrome, Firefox 3.5+, Safari 4+, IE 8+, etc.). The standard anticipated that sites might abuse this feature and advised that browsers limit the total amount of storage space that each origin could use. ...

March 27, 2013 · 1 min · 75 palabras · Nacho Cano

Run time profiling with cProfile

Python is distributed with profiling modules. They describe the run time operation of a pure python program, providing a variety of statistics. The cProfile module is the recommended module. To execute your program under the control of the cProfile module, a simple form is: $ python -m cProfile -s cumulative mypythonscript.py » Alain Leufroy | logilab.org

March 27, 2013 · 1 min · 56 palabras · Nacho Cano