A Turing Complete Puzzle Game

The code behind the Google doodle celebrating Alan Turing’s 100th birthday is now up on Google code. This animated logic puzzle game appeared on the Google homepage on June 23, 2012. If you missed it, you can still play it in the doodle archives. Our doodle for Turing’s 100th birthday showed a live action Turing Machine with twelve interactive programming puzzles. Turing Machines are theoretical objects in formal logic, not physical things, so we walked a fine line between technical accuracy and accessibility. We focused on finding a good representation for programs and choosing puzzles of appropriate complexity. We did considerable user testing and iteration, more than for any past doodle. ...

17 de julio de 2012 · 1 min · 117 palabras · Nacho Cano

Un largo segundo en el cerebro

Millones de impulsos llegan al cerebro desde distintos sentidos. Millones llegan incluso desde un sentido como la vista. El cerebro tiene múltiples áreas de procesamiento. En la vista por ejemplo se procesa en centros distintos el color, la forma o el movimiento. Cada impulso recorre un camino diferente al resto. Algunos son más largos y otros son más cortos. Por lo tanto, tardan distinto tiempo en llegar al cerebro. ¿Cómo sabe el cerebro que dos impulsos que sucedieron a la vez pero llegan en distinto momento son en realidad simultáneos? El cerebro no es una cámara fotográfica. El cerebro construye el mundo, no toma una imagen fija. El ejemplo de la vista es claro. Vemos un auto rojo moverse. No vemos una sucesión de manchas rojas y una sucesión de formas de auto en distintas posiciones. Es lo que se llama la unión de características. El cerebro lo integra todo y vemos un auto rojo moverse. ...

16 de julio de 2012 · 1 min · 161 palabras · Nacho Cano

MySQL, MSSQL and Oracle SQL Injection Compilation

This Knowledge Base was put together and is maintained by Roberto Salgado, Co-Founder of Websec. It is a compilation of books, papers, cheatsheets and testing done by Roberto over the years. » Roberto Salgado | websec.ca

15 de julio de 2012 · 1 min · 36 palabras · Nacho Cano

A Visual Git Reference

This page gives brief, visual reference for the most common commands in git. Once you know a bit about how git works, this site may solidify your understanding. » Mark Lodato | marklodato.github.com

15 de julio de 2012 · 1 min · 33 palabras · Nacho Cano

Levels of aspiration

Debates over technology, technique, and process often go nowhere because the participants are arguing from different levels of aspiration. You’re unlikely to convince someone they should switch to programming Ruby for its beauty, if they’re merely looking to make a living as a single consultant serving local businesses in Schaumburg, Illinois. Questions such as ”does this run on my existing web host?” or ”will my clients want something their nephew web designer hasn’t even heard of?” matter far more. Their aspirations are local, finding something that (sorta) works, and getting paid. ...

15 de julio de 2012 · 1 min · 95 palabras · Nacho Cano

¿Existen los colores en la naturaleza?

Aparentemente esta pregunta parece absurda, ¿Como no van a existir los bellos colores de los paisajes que podemos observar a diario? El azul del cielo, el verde de las hojas de los árboles… parece evidente que los colores existen y son uno de los atributos más fundamentales de todos los objetos que observamos. Sin embargo, como veremos a continuación la respuesta a esta pregunta es asombrosa e inesperada. Lo primero que tenemos que hacer para tratar de responderla es analizar brevemente como y por que vemos los objetos que nos rodean. ...

15 de julio de 2012 · 1 min · 93 palabras · Nacho Cano

Statistical functions in MySQL

Even in times of a growing market of specialized NoSQL databases, the relevance of traditional RDBMS doesn’t decline. Especially when it comes to the calculation of aggregates based on complex data sets that can not be processed as a batch like Map&Reduce. MySQL is already bringing in a handful of aggregate functions that can be useful for a statistical analysis. The best known of this type are certainly: COUNT(x), SUM(x), AVG(x), MIN(x), MAX(x), STD(x) In addition, there are a number of statistical evaluations which are also worthwhile - if not even more interesting and meaningful, but with MySQL only producible with greater efforts. What about the different averages? The harmonic average, a weighted average or the geomean? What is in the course of this with the aggregate product? How do we determine the mode, the median? The covariance? In the following article I want to go to the bottom of these questions and develop a list of standard formulas for a statistical evaluation. Presumably the article is meant more for beginners. In addition, a few new features have been poured into my infusion UDF, which simplifies some of the calculations. You can check out the source of the UDF on Github: ...

14 de julio de 2012 · 1 min · 206 palabras · Nacho Cano

Ready-to-use virtual machines sporting open-source operating systems

We provide pre-built images for several open-source operating systems. Please note that: Every image contains the latest software as of the day the image was built. Performing updates is on your own, and may require looking for documentation to read using your favourite search engine. Default usernames and passwords, where required, can be found next to the download link of each image. You are warmly invited to create your own user, or at least to change passwords, if you intend to use the images in a public environment. ...

14 de julio de 2012 · 1 min · 90 palabras · Nacho Cano

Cómo medir la eficiencia energética de tu propio coche

Pere Roura (Universitat de Girona) y Daniel Oliu nos cuentan en ”How energy efficient is your car?,” AJP 80: 588-593, July 2012, cómo medir de forma práctica la eficiencia energética de tu propio coche. Como ejemplo utilizan su Volkswagen Lupo 3L, un coche diseñado para ser muy eficiente con un motor diésel de tres cilindros, un peso de 830 kg y un consumo récord de solo 3 litros a los 100 km. Según su estudio solo el 28% de la energía del combustible se transfiere a las ruedas, lo que sin lugar a dudas es todo un récord en eficiencia para un vehículo comercial. Sin embargo, también nos recuerda que el 72% de la energía del combustible se pierde por aerodinámica, fricción, pérdidas mecánicas y térmicas. En los vehículos de gasolina, la eficiencia suele ser mucho menor. Para un vehículo típico se estima que solo el 12-13% de la energía del combustible se transmite a las ruedas, según el estudio de Joseph A. Carpenter, Jr. (Department of Energy, USA) et al., ”Road Transportation Vehicles,” MRS Bull. 33: 439–444, 2008 [copia gratis], del que he extraído la figura de abajo. Roura y Oliu nos proponen experimentos sencillos que los estudiantes de grado en ingeniería industrial, mecánica y otras titulaciones similares pueden ejecutar solo con conocimiento básicos de mecánica (resistencia del aire y a la rodadura) y termodinámica (ciclos térmicos). No traduciré todo su artículo, solo presentaré un breve resumen con las figuras clave, para que veáis cómo se realizan los experimentos y cómo se obtienen los resultados. Animo a los interesados en más detalles que consulten el artículo en la revista (American Journal of Physics), si tienen acceso, o que le pidan por correo electrónico una copia a Pepe Roura (que seguro que estará encantado por el interés despertado por su artículo). ...

14 de julio de 2012 · 2 min · 303 palabras · Nacho Cano

Preliminary discussion of the logical design of an electronic computing instrument

Arthur W. Burks / Herman H. Goldstine / John von Neumann PART I ​1. Principal components of the machine 1.1. Inasmuch as the completed device will be a general-purpose computing machine it should contain certain main organs relating to arithmetic, memory-storage, control and connection with the human operator. It is intended that the machine be fully automatic in character, i.e. independent of the human operator after the computation starts. A fuller discussion of the implications of this remark will be given in Sec. 3 below. 1.2. It is evident that the machine must be capable of storing in some manner not only the digital information needed in a given computation such as boundary values, tables of functions (such as the equation of state of a fluid) and also the intermediate results of the computation (which may be wanted for varying lengths of time), but also the instructions which govern the actual routine to be performed on the numerical data. In a special-purpose machine these instructions are an integral part of the device and constitute a part of its design structure. For an all-purpose machine it must be possible to instruct the device to carry out any computation that can be formulated in numerical terms. Hence there must be some organ capable of storing these program orders. There must, moreover, be a unit which can understand these instructions and order their execution. ...

13 de julio de 2012 · 2 min · 233 palabras · Nacho Cano