Descubrimientos de una inteligencia artificial que supera el test de Turing
On the Internet, everybody knows you're a chatbot.
Buscar en Mind w/o Soul
jueves, junio 18, 2009
domingo, junio 14, 2009
Principios de diseño
Complexity tutorial
We’ve been through balance, contrast, direction, economy, emphasis, rhythm and how to apply them in your designs.
sábado, febrero 07, 2009
Docbook Windows Howto
http://mawi.org/articles/DocBook_On_Windows_Bliss.html "One page install in windows"
http://www.codeproject.com/KB/winhelp/docbook_howto.aspx
http://tldp.org/HOWTO/DocBook-Demystification-HOWTO/
viernes, noviembre 07, 2008
Monad transformers en Haskell
A Neighborhood of Infinity: Grok Haskell Monad Transformers
I've tried a few times to read various documents on the web about
Monad Transformers in Haskell. I think that in almost every case the
authors are trying to show how clever they are rather than explaining
their use. If I had just seen the simplest possible examples of Monad
Transformers at work I would have been able to figure out what was going
on and that would have given me enough information to bootstrap myself
into Monad Transforming enlightenment.
So to save other people the trouble I went through I'm providing you
with examples of Monad Transformers at work. I'm not even going to
explain in detail how they work, they're close to self-evident once the
main features are pointed out.
También: plan de estudio para Haskell http://metacircular.wordpress.com/2007/03/05/a-haskell-study-plan/
jueves, julio 31, 2008
20+ Video Tutorials for Open Source Applications
There are tons of open source applications out there, from operating systems to word processors to graphics programs and more. But, it’s often hard to find manuals or other documentation beyond what the developers have written (which, while technically correct, doesn’t always cover the nuances of actually using the program). Here are more than 20 video tutorials to get you going with four of the most popular open source programs out there: Gimp, Linux, Open Office, and Nvu.
Which tutorials are most helpful for you?
jueves, junio 19, 2008
Programación Orientada a Lenguajes
Chris Smith's completely unique view
I will define what LOP is: Language Oriented Programming is a style of programming that tries to produce code that looks like it came from a Domain Specific Language but is still valid in a general purpose programming language.
The rest of this essay will provide examples of LOP in F# and how using LOP results in simpler code that better expresses the problem at hand. I’ll my examples along three major themes:
* Abstract Representation. Features in F# that allow you to represent domain-specific concepts in your F# code without needing to introduce a new layer of abstraction.
* Concrete Representation. Features in F# that allow you to describe your problem in another language and load that into F#.
* Computational Representation. Finally I’ll go into features in F# that enable you to write code to process concepts in some other language without resorting to a third, more specialized language.
martes, junio 17, 2008
El zoo de los minilenguajes
The Programming Language Zoo
The Programming Language Zoo
On this page you will find on display a number of mini languages which demonstrate various techniques in design and implementation of programming languages. The languages are implemented in Objective Caml.
I teach Theory of Programming Languages (page in Slovene) at the Faculty of Mathematics and Physics of University of Ljubljana. For the course I implemented languages which demonstrate basic concepts such as parsing, type checking, type inference, dynamic types, evaluation strategies, and compilation. My teaching assistant Iztok Kavkler contributed to the source code as well.
The languages are not meant to compete in speed or complexity with their bigger cousins from the real world. On the contrary, they are deliberately very simple, as each language introduces only one or two new basic ideas. You should find the source code useful if you want to learn how things are done.
lunes, junio 16, 2008
Tutorial Maemo - manual de programación
Nokia releases Internet Tablet development manual
By Ryan Paul | Published: December 12, 2007 - 08:37PM CT
Nokia has officially released the Maemo 4 training manual, extensive documentation for third-party Maemo application developers. The manual, which consists of three distinct guides, is intended to serve as a starting
lunes, junio 02, 2008
Tutorial: Prototipos en Flash
I was excited to find that Flash not only felt more streamlined and intuitive when creating basic click-throughs, but it also offered almost limitless potential for prototyping rich interactions. With some basic ActionScript (a scripting language used in Flash to define interactions) knowledge and a bit of resourcefulness, I was able to create functional combo box navigations, type-ahead mechanisms, and eventually a complex, drag-and-drop scheduling application similar to Google Calendar. And whenever the screen designs changed, all I had to do was import the new background images, while the interactivity layers stayed happily in place, requiring only minimal tweaking.
lunes, mayo 12, 2008
Tutorial 1080p: por qué merece la pena
Secrets of Home Theater and High Fidelity - High Definition 1080p TV: Why You Should Be Concerned
The downside on an interlaced format is that the alternating fields only truly compliment each other if the subject is stationary. If it is, then the alternating fields "sum" to form a complete and continuous 1920 x 1080 picture (everything lines up perfectly between the two fields). If the subject moves though, it will be in one position for one field and another position for the next. The interlaced fields no longer compliment one another and artifacts such as jaggies, line twitter, and other visual aberrations are a normal side effect of the interlaced format.1080i: se pierde resolución en toda la escena
1080p: sólo pierde resolución el objeto en movimiento
miércoles, mayo 07, 2008
Design Eye for the Web Guy
DesignEye.org
* Design Eye for South By SXSW 2008
* Design Eye for the List Guy SXSW 2006
* Design Eye for the Idea Guy SXSW 2005
* Design Eye for the Usability Guy 2004 (as seen in Communication Arts)
What the heckfire is this?
Design Eye is an experiment in bringing fresh vision to existing web design. And like all experiments, Design Eye features a few random theories and a group of mad scientists who put them to the test. The Design Eye team uses its individual expertise and collective talent to tackle each project as a soup-to-nuts strategic redesign. From content to usability to aesthetics, a freshly scrubbed and newly enlightened project emerges from every fashion-forward, fun-packed makeover.
lunes, mayo 05, 2008
Tutorial Haskell: programar un compilador de Scheme
Write Yourself a Scheme in 48 hours
Most Haskell tutorials on the web seem to take a language-reference-manual approach to teaching. They show you the syntax of the language, a few language constructs, and then have you construct a few simple functions at the interactive prompt. The "hard stuff" of how to write a functioning, useful program is left to the end, or sometimes omitted entirely.
This tutorial takes a different tack. You'll start off with command-line arguments and parsing, and progress to writing a fully-functional Scheme interpreter that implements a good-sized subset of R5RS Scheme. Along the way, you'll learn Haskell's I/O, mutable state, dynamic typing, error handling, and parsing features. By the time you finish, you should be fairly fluent in both Haskell and Scheme.
miércoles, abril 30, 2008
Python PyQt4 Tutorial
Europython 2006 (03-05 July 2006)
PyQt4 is a set of bindings for Qt 4, a cross-platform C++ framework used to make graphical user interface (GUI) applications. With the release of PyQt4, Python developers are now able to develop powerful cross-platform applications and deploy them under the GNU General Public License (GPL) or the Qt Commercial License on all platforms that support Qt and Python. We will first briefly discuss PyQt (for Qt 3) and PyKDE (bindings for the K Desktop Environment), and take a look at what has changed in PyQt4. The main part of the presentation will cover the new possibilities that PyQt4 offers developers, including access to Qt's rich text handling features, sophisticated data handling controls, internationalization support, and integration with the Qt Designer GUI design tool.
Introduction to PyQT4Creating an application in PyQT4 may be done in a few ways. The most common one is to use QTDesigner, which we get with QT. QTDesigner let us draw the GUI which is very handy for complicated interfaces. We can place widgets on the window, add names etc. To create an application in PyQT4 you have to:
* Create the GUI in QTDesigner
* Set names in the Property Editor to ease coding of the application (QTDesigner)
* Using pyuic4 create the python GUI class
* Call the application using that GUI class
* Extend it with our own slots
* When you use a widget you go to PyQt's Classes and check methods of each used widgets. The method names as "setText" are very easy to understand :nice:
lunes, abril 21, 2008
Howto: defender tu nombre de dominio de un robo por una gran empresa
[Derechos] ¿Cómo defender (sin abogado) un nombre de dominio ante una gran empresa? « A la sombra del árbol rojo
1. Tenga presente que el primer solicitante (o sea, nuestro
“héroe”) tiene un derecho preferente por haber
inscrito el dominio primero y que, en cualquier caso, NO PAGA los
costos del juicio arbitral correspondiente y que, además, puede
actuar personalmente en el mismo, esto es, sin necesidad de abogado.2. Nuestro “héroe” NUNCA debe intentar vender el
nombre de dominio, salvo que previamente y por escrito le hagan un
ofrecimiento (una trampa usual a la que pueden arrastrarlo será
el simular interés en comprar, pedirle telefónicamente al
primer solicitante que haga una oferta y luego llevarle la oferta al
juez árbitro para acusarle de especulación y mala fe).3. NUNCA deje sin construir el sitio que está
“peleando”, pues el juez-árbitro examina si
efectivamente ud. usa el dominio.Si el juicio efectivamente llega a producirse ¿Sabe que argumentará la empresa?.
Que nuestro “héroe” es vil y malvado y que
pretende aprovecharse del bueno nombre, el prestigio y fama que tanto
le ha costado formarse y que, además, tiene registros marcarios
que la protegen, la amparan y le dan privilegios por sobre toda la
humanidad. Usualmente terminan diciendo que todo el mundo, que digo, el
universo entero, conoce a dicha empresa o la asocia con la
expresión, por ejemplo, “lindocristal”.¿Y qué debe alegar nuestro “héroe”?.
Que llegó primero y explicará que el uso que hace del sitio es legítimo.
Si además está muy picado, averigüe si
su contrincante tiene otros nombres de dominio parecidos al que quiere
disputarle y que no utilice, y acúselos entonces de
inscripción abusiva de nombres de dominio, una mala
práctica conocida internacionalmente como reverse domain hijacking. Vamos, pero esto es una exquisitez, pues lo anterior basta.
viernes, abril 18, 2008
Tutoriales de márketing
Managing Customers Tutorial From KnowThis.com
In the What is Marketing? Tutorial we noted that marketers make decisions which result in value to both the marketer and its customers. Throughout the Principles of Marketing Tutorials
we emphasize the importance customers play in helping marketers meet
their business objectives. To drive home this point, in the Managing Customers Tutorial,
we concentrate our discussion on understanding customers and examining
their role in the marketing process. We will see that for most
organizations understanding customers is necessary not only because of
their effect on marketing decisions but because customers’
activities influence the entire organization.


1080i: se pierde resolución en toda la escena
1080p: sólo pierde resolución el objeto en movimiento
