Conway's Game of Life "Conway game" redirects here. For Conway's surreal number game theory, see surreal number. The Game of Life, also known simply as Life, is a cellular automaton devised by the British mathematician John Horton Conway in 1970.[1] The "game" is a zero-player game, meaning that its evolution is determined by its initial state, requiring no further input. Rules[edit] The universe of the Game of Life is an infinite two-dimensional orthogonal grid of square cells, each of which is in one of two possible states, alive or dead. Any live cell with fewer than two live neighbours dies, as if caused by under-population.Any live cell with two or three live neighbours lives on to the next generation.Any live cell with more than three live neighbours dies, as if by overcrowding.Any dead cell with exactly three live neighbours becomes a live cell, as if by reproduction. The initial pattern constitutes the seed of the system. Origins[edit] Examples of patterns[edit] Gosper glider gun Self-replication[edit]
Grafeno y siliceno, los nuevos materiales de la tecnología · ELPAÍS.com Un móvil que se dobla y se convierte en reloj o una tableta tan elástica como la goma. Así serán los aparatos del futuro gracias a los nuevos materiales que se cuecen en laboratorios. Según los investigadores, el grafeno, el siliceno (derivados del grafito y el silicio), los polímeros conductores o determinados óxidos de metales revolucionarán la electrónica de consumo, al permitir construir baterías flexibles, procesadores más rápidos y pantallas transparentes más finas que el papel. El belga Jan Genoe apuesta por ello. Ya se hacen chips 500 veces más pequeños que los de silicio, y más rápidos Tiene una pega: es 1.000 veces más lento que un chip de silicio, el material que hoy alimenta las tripas de casi cualquier aparato. Científicos de la Universidad de Aalto (Finlandia) y Nagoya (Japón) han obtenido procesadores de plástico y a bajo coste. Otro material de moda, el grafeno, podría acabar con el problema. "Es el único material que se puede estirar hasta un 10% de forma reversible.
Script Junkie | Building Cross-Platform Apps Using jQuery Mobile jQuery Mobile introduces a cross-platform and cross-device framework for developing mobile applications. It supports a wide variety of mobile browsers and delivers a unified user interface to the devices. It has simplified working with mobile browsers by abstracting away inconsistences between the vendors. Just as jQuery changed the way we wrote JavaScript , jQuery Mobile will change the way we build mobile web applications. I recently used jQuery Mobile to build an application and was stunned at how smoothly the development process went. As a web developer, jQuery Mobile is instantly rewarding because there isn’t much of a learning curve. Page Structure and Components We are going to build a to-do application. For this application there is only going to be one physical page, index.html. Aside from referencing the latest version of jQuery, we also reference jquery.mobile-1.0a4.1.min.css and jquery.mobile-1.0a4.1.min.js via CDN. Let’s fill out our create page. Conclusion About the Author
Java Tutorial 7 - String Manipulation String manipulation forms the basis of many algorithms and utilities such as text analysis, input validation, and file conversion. This tutorial explores some of the needed basics. Unless otherwise noted, the following classes are contained in the java.lang library. NOTE: For the following parameters the prefix g indicates string, i indicates integer and c indicates character types. The String Class String class objects work with complete strings instead of treating them as character arrays as some languages do. Accessor methods: length(), charAt(i), getBytes(), getChars(istart,iend,gtarget[],itargstart), split(string,delim), toCharArray(), valueOf(g,iradix), substring(iStart [,iEndIndex)]) [returns up to but not including iEndIndex] Modifier methods: concat(g), replace(cWhich, cReplacement), toLowerCase(), toUpperCase(), trim().Note: The method format(gSyn,g) uses c-like printf syntax for fixed fields if required in reports. String class objects are immutable (ie. read only). Projects
CoRR - Computing Research Repository Welcome to the Computing Research Repository Welcome to the Computing Research Repository (CoRR). CoRR allows researchers to search, browse and download papers through its online repository. Please feel free to explore the site and features. First time user? View Listings Computing Research Repository (CoRR): new, recent, abs, find By Category: Syrie : Ultrasurf, ou comment le gouvernement Syrien piège ses opposants avec un malware Après l’Égypte ce matin, notre équipe s’est attaquée à la problématique syrienne. Nous avons cherché à comprendre comment le pouvoir de Bachar el Assad s’y prenait pour voler les comptes Facebook, Twitter, ou Gmail de ses opposants, et comment il parvient à les identifier pour les arrêter. Nous avons réussi à mettre en lumière l’un des procédés du gouvernement Syrien afin de piéger ses opposants. C’est l’histoire banale d’un logiciel qui fait le contraire de ce qu’il prétend faire. Ultrasurf est un logiciel proxy qui a été très utilisé par les dissidents syriens. Le fonctionnement attendu, à savoir une dissimulation de l’identité de ses utilisateurs semblait opérante. Mais voilà, la version qui a été largement diffusée en Syrie contenait un petit paquet cadeau. Vous trouverez également le dump pcap de l’activité réseau de ce logiciel ici (à ouvrir avec Wireshark). Cette affaire nous a été remontée par une journaliste ayant exercé en Syrie et en Égypte. Greets halona, fo0 & Julie
How to recognise a good programmer It’s not as easy as it sounds. CV experience is only of limited use here, because great programmers don’t always have the “official” experience to demonstrate that they’re great. In fact, a lot of that CV experience can be misleading. Yet there are a number of subtle cues that you can get, even from the CV, to figure out whether someone’s a great programmer. I consider myself to be a pretty good programmer. In his article The 18 mistakes that kill startups , Paul Graham makes the following point: “… what killed most of the startups in the e-commerce business back in the 90s, it was bad programmers. In practice what happens is that the business guys choose people they think are good programmers (it says here on his resume that he’s a Microsoft Certified Developer) but who aren’t. So how do you pick good programmers if you’re not a programmer? I disagree with Mr Graham on this one. #1 : Passion I believe that good developers are always passionate about programming. #3 : Intelligence
21 Laws of Computer Programming Jun 17 As any experienced computer programmer knows, there are unwritten laws that govern software development. However there are no penalties for breaking these laws; rather, there is often a reward. Top 10 Ways to be Screwed by "C" To get on this list, a bug has to be able to cause at least half a day of futile head scratching, and has to be aggravated by the poor design of the "C" language. In the interests of equal time, and to see how the world has progressed in the 20-odd years since "C" escaped from its spawning ground, see my Top 10 Ways to be Screwed by the Java programming language, and for more general ways to waste a lot of time due to bad software, try my Adventures in Hell page. A better language would allow fallible programmers to be more productive. Infallible programmers, of the type unix' and "C" designers anticipated, need read no further. Non-terminated comment, "accidentally" terminated by some subsequent comment, with the code in between swallowed. a=b; /* this is a bug c=d; /* c=d will never happen */ Accidental assignment/Accidental Booleans if(a=b) c; /* a always equals b, but c will be executed if b! Closely related to this lack of rigor in booleans, consider this construction: Or consider this: