Buscar en Mind w/o Soul

lunes, marzo 31, 2008

La mejor forma de pagar a traves de PayPal

Con tarjeta de *credito*, para que te cubra tu banco.

Proporcione información adicional - PayPal
De como paypal me dejó tirado y me quedé sin compra y sin dinero (con las pruebas)


Paypal está realizando una intensa campaña para que la
gente pase a usar e-transfers en vez de tarjetas de crédito (yo
estoy con BBVA y cada comnpra que hago en vez de salirme por defecto mi
Blue Joven, me sale el numero de libreta!!), por dos motivos, el
primero que a ellos les sale gratis hacer ingresos y descuentos
directamente a cuentas bancarias sin tarjetas de por medio (de
ahí tanto ahinco), y segundo, en caso de problemas, tu seguro de
la tarjeta no te cubre nada ya que paypal te ha sacado los cuartos
directamente de tu libreta, gratis y por supuesto cobrando al vendedor
la misma comisión que si hubieras pagado con tarjeta.





Que nadie pique en su nueva política de pagos.




Al que abrió el post solo decirle que si pagó con
tarjeta vaya a su banco y denuncie a PAYPAL por estafa para que le
devuelvan el dinero, yo es lo que hago y Visa o MasterCard son
muchisimo mas serios que paypal y se ponen de tu lado con las pruebas
de la estafa, SIEMPRE. Y paypal sale jodido, haced eso siempre, a mi
hasta ahora en 3 estafas que he sufrido y paypal se ha lavado las
manos, siempre me ha funcionado.

Buscador gráfico de música

Buscador de música agrupada por géneros / estilos y autores.

Custom Streaming Web Radio Plays Only The Music You Like: Musicovery Finally Here - Robin Good's Latest News
After six months in stealth mode, Frederic Vavrille (the guy behind the premiere music search engine MusicPlasma (today LivePlasma)
Liveplasma) and Vincent Castaignet, have done it again, by launching an
innovative music search engine that doubles up as a truly unique
web-based custom streaming music radio, capable of satisfying the music
taste and mood of just about anyone.Musicovery_main_interface_panel2.jpgMusicovery_music_trail_4.gif

Remedio definitivo contra el hipo (?)



» Cómo curar el hipo en 12 segundos | Maikelnai’s blog
Durante un mal ataque, hace varias semanas, empecé a aguantar la respiración, un poco por aburrimiento, y comencé a dar vueltas por la sala de estar. Decidí hacer unos estiramientos mientras aguantaba la respiración, de modo que coloqué las manos en la parte superior del marco de la puerta y me incliné hacia delante, y ¿qué os parece? el hipo se detuvo en cuestión de segundos. Debéis sentir como se arquea la espalda y se estira el abdomen. Continuad presionando las manos hacia arriba y dejad que el peso de vuestro cuerpo os haga atravesar el marco de la puerta. Mantened esta posición de estiramiento durante 30 o 60 segundos mientras retenéis una buena cantidad de aire en los pulmones. Yo hago una larga inspiración, y luego realizo el ejercicio de estiramiento mientras retengo el aire. He incluido una imagen en este post de la postura del remedio. ¡Eso es todo! Feliz cura

Humor matemático

viernes, marzo 28, 2008

La función secreta de Google: MapReduce

La función / combinator desarrollada específicamente por Google para programación concurrente masiva de datos. Este artículo es un proyecto que la implementa como software libre.

tecnología, programación funcional, programación, inteligencia artificial

What Does Hadoop Mean to You? | OStatic
MapReduce is Google's secret weapon: A way of breaking complicated problems apart, and spreading them across many computers. Hadoop is an open source implementation of MapReduce that you can use on your own computers, in the same way. How does Hadoop work, and how might you best use it?

Actualizar el sistema operativo de Nokia N800

miércoles, marzo 26, 2008

Hechos y falacias de la ingeniería del software



Coding Horror: Revisiting The Facts and Fallacies of Software Engineering
Simply reciting the various facts and fallacies feels like a zen koan to software engineering. Even without any of the background discussion and explanation in the book, it's therapeutic to ponder the brief one sentence summaries presented in the table of contents. As you read these, what comes to mind, based on your experience?Facts and Fallacies of Software Engineering

Tecnologías y enfoques de la Web Semántica

Distintas aproximaciones existentes a la web semántica, y cómo afectan a distintos agentes.


Semantic Web Patterns: A Guide to Semantic Technologies - ReadWriteWeb
In this article, we'll analyze the trends and technologies that power the Semantic Web. We'll identify patterns that are beginning to emerge, classify the different trends, and peak into what the future holds.

martes, marzo 25, 2008

HUMPTY DUMPTY Software

Sobre la "barrera mental" en la distinción entre software y hardware

The Sociotechnical Boundaries of Hardware and Software: A Humpty Dumpty History -- Jesiek 26 (6): 497 -- Bulletin of Science, Technology & Society
This article traces the historical development of the boundaries around computer software and hardware. On one hand, the author documents ongoing discussions about the technical equivalence of hardware and software. On the other hand, he accounts for the stubborn persistence of these terms as markers for two distinct spheres of technology, knowledge, and practice. By using theoretical concepts such as "boundary work" and "coproduction," the author argues that ongoing efforts to negotiate the boundaries between hardware and software are significantly "sociotechnical" in that they involve both social and technical considerations. The analysis culminates with a discussion of the more recent rise of the "hardware/software codesign" movement. Particular emphasis is placed on the conditions that led to the emergence of codesign and the ongoing challenges faced by its proponents. The article concludes by describing how codesign points toward a more reflexive and socially responsible culture of computer design and use.

La esencia del capitalismo

... en Japón

loquemerevientadejapon.blogspot.com: Japón: Los timos
timos en japon: sandwich increíbletimos en japon: sandwich increíble

HOWTO: Apagar Windows XP rápidamente



Shut down Windows in an instant | Workers' Edge - a productivity blog from Dennis O'Reilly - CNET Blogs
But this was a typical PC shutdown, and it was taking forever.

"There's gotta be a better way," I thought, and after doing a little research, I found a bunch of Registry tweaks that reset Windows to close shop like it's late for the bus ride home. Keep in mind, any changes to the Registry can be troublesome, so you may want to make these alterations one or two at a time just to make sure they don't futz up the works (it'll also be easier to diagnose any problems that may arise). And for sure back up the Registry by creating a restore point before you begin.The Windows Registry key that sets the delay before killing applications at shutdown

lunes, marzo 24, 2008

Linq - Will Microsoft's Language Integrated Query transform programmatic data access?



Redmond Developer News | Looking to LINQ
During the past year and change since that PDC keynote, LINQ for the most part has remained under the radar, despite a lot of work in the background. But with the new .NET Framework 3.0 and the pending release of the next version of Visual Studio (code-named "Orcas"), LINQ is ready to come out of its shell. And those following it say that if LINQ performs as advertised, it may very well give the .NET environment a major leg up as a platform for developing query-centric programs.

F# en el mundo real

Las nuevas estrategias de Microsoft para procesadores multicore incluyen el uso de F# .Net

Moneyweb - Wall Street Journal - Behind Microsoft`s bid to gain cutting edge
Microsoft's research groups have begun experimenting with software technologies for multicore computers. During his visit to Cambridge, Mr. Mundie learned that researchers had been using a new multicore programming technology called "F-sharp" to help a Microsoft banking client manage a large system of server computers. The technology, Mr. Mundie concluded, was no longer just experimental, but was working in the real world.


Mr. Mundie told the researchers he was frustrated that "old-line Microsoft" skeptics back home had told him the technology was unproven. "This is something that should be stuck in the face of the people who still think this is science fiction," he told them.
When Mr. Mundie returned to headquarters, he hosted meetings with several different groups in an effort to push forward development of multicore technology. In April, the Cambridge researchers met with Mr. Ballmer, who says he told them he had "heard some buzz" about the F-sharp technology. He later sent an email to other top executives endorsing it.

miércoles, marzo 19, 2008

Arrows: combinando mónadas distintas



A Neighborhood of Infinity: Monads, Kleisli Arrows, Comonads and other Rambling Thoughts
Let's work through the details of composing Kleisli arrows: we want to compose f::a→m b and g::b→m c. The obvious thing to do is add a gluing map between them m b→b. But that's uninteresting as it just throws away the fanciness. Instead we use the fact that m is a functor (part of the mathematician's definition of monad) to lift g to a function m b→m (m c). This now composes nicely with f but the catch is that we end up with something twice as fancy. However, part of the definition of monads is that there is a map m (m c)→m c. (Twice as fancy is still just fancy.) And that can now be used to finish off the composition.

Programación superior: domesticando los efectos laterales

Un artículo en el que resume cuáles son los distintos enfoques utilizados para representar los cambios de estado por distintas corrientes de investigación.

A survey and discussion of taming effects | Lambda the Ultimate
I've researched many different approaches to taming effects in the hope of maintaining referential transparency, and I will summarize and link to those works here.

The two predominant techniques are obviously monads as in Haskell, and linear types as in Clean.

White Paper: la visión de Microsoft para programar procesadores multicore



Download details: The Manycore Shift White Paper
The computational power of manycore processors, new programming models and platform, and advanced research in usability promise to change the way people interact with computers. This paper describes how Microsoft and industry partners are working together to enable businesses, software and hardware vendors, and individuals to take advantage of the “manycore shift”.

martes, marzo 18, 2008

Tipos de CSPs con coste



Tutorial on Soft Constraints
A more general way of explaining over-constrained problems
has been proposed by Stefano Bistarelli. He calls this framework as the Semiring-based
Constraint Satisfaction problem.

OTHER SOFT CSP FRAMEWORKS

Bistarelli showed that some of the previous constraint satisfaction approaches can be seen as instances of this theory differing only in the choice of the semiring.


Classical:

Constraints in a classical CSP can be modeled with a semi-ring
containing only 1 and 0 in A. Also constraint combination can be modeled with
logical and the projection over some of the variables with logical or. Thus a
CSP can be seen as a SCSP with the following semiring


S (CSP) = ({0,
1}, ⋁,
⋀, 0, 1)


Fuzzy CSP:
Fuzzy CSP’s allow for associating a preference level with each tuple of values.
This level of preference lies between 0 and 1. The solution of a fuzzy CSP is
defined as a set of tuples of values for all the variables which have a maximal
value. Fuzzy CSP’s can be modeled in the SCSP framework by choosing the
following semiring.


S (FCSP) = ({x/x [0, 1]}, max,
min, 0, 1)


Probablistic CSP:
In Probabilistic CSP’s each constraint c has an associated probability p(c). c
has probability p means that the situation corresponding to c has probability p
of occurring in the real-life problem. The semi-ring corresponding to the
probabilistic CSP is as follows.


S (prob) = ({x/x [0, 1]}, max,
X, 0,1)


Weighted CSP: While Fuzzy CSPs’ come with preferences, Constraints are associated with
costs in weighted CSP’s. The solution to a problem in such models is the one
with minimum cost. The associated semiring for a weighted CSP is


S (WSCP) = (R*, min,
+, , 0)



Programación de restricciones - revista en español



Artículos - Revista AEPIA
El objetivo de esta monografia es presentar una amplia panoramica sobre la modelizacion, resolucion y aplicaciones CSP. Ademas, se ofrece una vision de las actividades en el area que se realizan en diferentes grupos de investigacion.

Economía para informáticos

Curso de la UAM

Economía
El curso es una mezcla de teoría microeconómica clásica y moderna con aplicaciones a la toma de decisiones empresariales. El objetivo que persigue es que los alumnos tengan, en primer lugar, una base teórica sobre aquellos conocimientos más consagrados en el ámbito de la teoría microeconómica y que, a su vez –y este es el segundo objetivo- les sirva para poder tomar decisiones racionales en el ámbito empresarial en el que previsiblemente deberán desenvolverse al terminar sus estudios.

Clases vs Tipos Abstractos

Este artículo de F# describe la diferencia entre la definición de tipos usando clases vs usando TADS: en las clases es fácil añadir nuevos tipos de valores (creando subclases) y difícil añadir nuevas operaciones (métodos); en los TADs, es al contrario.


F# Overview (II.) - Functional Programming | Blog | TomasP.Net
Discriminated unions form a perfect complement to the typical object-oriented inheritance structure. In an OO hierarchy the base class declares all methods that are overridden in derived classes, meaning that it is easy to add new type of value (by adding a new inherited class), but adding a new operation requires adding method to all the classes.

On the other side, a discriminated union defines all types of values in advance, which means that adding a new function to work with the type is easy, but adding a new type of value (new constructor to the discriminated union) requires modification of all existing functions. This suggests that discriminated unions are usually a better way for implementing a Visitor design pattern in F#.

Errores típicos en tipografía

Consejos de maquetación

Zenblog » La maquetación ha muerto
Hay
ciertas normas básicas para la legibilidad de los textos que creía
universales, pero que cada vez se usan menos. Ignoro si el motivo es el
absoluto desconocimiento de los diseñadores y maquetadores que las
hacen, o simplemente que son valores ya superados.

Rios tipográficos
22 consejos de tipografía

lunes, marzo 17, 2008

Undelete para Windows

Gratuito para recuperar ficheros borrados

The Reviews 4 U - Free Recover Tool
Restoration is a File Recovery Freeware by Brian Kato intended to recover any deleted file in Windows 9x, 2000, XP on FATs or NTFS partitions.

Qué debe tener un buen Antispyware



Spyware Exposed: What To Look For In Anti-Spyware Solutions
Your antispyware must not only detect and remove spyware and adware but also be able to prevent spyware from getting into your computer. It must be able to remove the maximum kinds of spyware and adware. Above all, you must find the antispyware easy to use. The language used must not be so complicated that you spend your time just figuring out what they mean. The antispyware scan must be quick and run in the background. Customization should be easy. You should be able to scan specific parts of your computer. You should also be able to choose which items to exclude from scanning. While setting up and installing the antispyware software should be easy and quick to download and install.

Los constructores son dañinos

Sobre la separación de conceptos entre Creación y Uso de objetos.

Room 101: Constructors Considered Harmful
In mainstream object oriented programming languages, objects are created by invoking constructors. This is rather ironic, since you can say a lot about constructors, but you cannot honestly say that they are object oriented.
...
What about using a dependency injection framework (DIF)? Ignoring the imbecilic name, I think that if you’re stuck with a mainstream language, that may be a reasonable work around. It requires a significant degree of preplanning, and makes your application dependent on one more piece of machinery that has nothing to do with the actual problem the application is trying to solve. On the positive side, it helps guarantee employment for software engineers.

OCU: consejos para prevenir fraude con tarjetas



Tarjetas y banca 'on line' (Dinero y Derechos nº 103) - Newsletter OCU Informa Contenido Global
He aquí nuestras recomendaciones.

- Compruebe que el
sistema que su entidad utiliza para enviar la tarjeta al titular es
seguro: lo mejor es recogerla personalmente en la sucursal.

- Sea
precavido al utilizar el cajero automático. No realice ninguna
operación si observa algún dispositivo sospechoso. Si
después de introducir su clave, no sale el dinero y aparecen
mensajes de error o de operación cancelada, puede estar en un
cajero falso. Desconfíe de los desconocidos que se acerquen a
comentarle algo.

- Para abrir la
puerta de los cajeros situados dentro de las oficinas, no utilice una
tarjeta bancaria, ya que es un lugar habitual para colocar dispositivos
grabadores. Pase cualquier otra tarjeta de banda magnética que
no implique riesgo, por ejemplo, la de asistencia sanitaria o la de
cliente de cualquier firma comercial.

- Tenga
cuidado con los resguardos de compra, extractos de cajeros
automáticos o cualquier otro documento donde pueda aparecer su
número de tarjeta.

- Utilice
las medidas de seguridad adicionales que su entidad le ofrezca, como
avisos al teléfono móvil cada vez que se realiza una
compra con la tarjeta.

- No
facilite a nadie sus claves de acceso por teléfono o Internet a
cuentas bancarias. Use claves aleatorias, que no coincidan con fechas
de cumpleaños, matrículas, ni utilice palabras
genéricas, ya que existen delincuentes que tienen programas para
detectar contraseñas de uso común. Una buena idea es
utilizar combinaciones de letras y números. Cambie las claves
periódicamente.

- Si
recibe un e-mail pidiéndole conectarse a su entidad bancaria e
introducir sus claves, no lo haga. Las entidades financieras no suelen
enviar correos masivos, sino que se dirigen a sus clientes por su
nombre y apellidos. Si tiene alguna duda, llame a su banco.

- Si
compra por Internet, antes de introducir los datos de su tarjeta,
asegúrese de que usa una conexión segura. Basta con
comprobar que la dirección del servidor ha cambiado de "http" a
"https" y que aparece un pequeño candado amarillo en la parte
inferior derecha de la pantalla.

- Evite
en la medida de lo posible acceder a su banco desde ordenadores de
lugares públicos, como cibercafés. Si no tiene más
remedio, es muy recomendable que cambie las claves lo antes posible
desde un ordenador seguro.

- Una
vez que ha accedido a su banco, no abandone el ordenador hasta que no
termine sus operaciones. Cuando acabe, cierre la sesión y salga
del navegador. La mayoría de las web de las entidades
financieras tienen la opción de guardar copia de la
operación realizada o imprimirla. Utilícela para tener un
justificante.

- Es
imprescindible tener instalado y mantener actualizado un buen antivirus
y un cortafuegos o firewall que permita aislar nuestro ordenador de
ataques externos. Tampoco debe olvidar que el sistema operativo y el
navegador tengan las últimas actualizaciones de seguridad.

-
En cualquier caso, utilice exclusivamente tarjetas que tengan
cláusulas de limitación de responsabilidad por uso
fraudulento, como la Visa OCU, que tiene la responsabilidad limitada a
150 euros. Algunas tarjetas incluyen cláusulas similares, pero
tienen restricciones que las hacen inservibles.

Cómo hacer películas

Para estrenar esa videocámara nueva :-)

Movie making guide - How to make your own movies | TechiePortal
This guide is meant to give you a general and as a guide if you are new to making movie. Making professional looking videos take a lot of effort and knowledge. This guide should help you make a basic game video or a personal video you copied from a digital cameraFRAPS settings

Selección de programas portables para llave USB



How to: Make Your USB Drive into a Digital Swiss Army Knife | Free Geekery

USB stickAs
any geek can tell you, the smaller and more portable a gadget is, the
better that gadget becomes. You can’t get much more portable than
USB drives, which can be carried in a pocket, around the neck, or even
on a key chain. This, in and of itself, is already a pretty cool and a
relatively inexpensive way to carry around a few extra gigs of whatever
it is you need to carry around. But there are ways to make your USB
drive even more useful, and these processes allow you to take many of
the functions of your desktop with you to any computer you might want
to use.


You can find numerous programs designed to run specifically from a
USB drive. Best of all, almost all these programs are free, so put that
Amex back in your wallet. Simply install them on your USB drive and they’re ready to travel with you anywhere. Here’s a list of 55 of the most useful USB programs around.

Tipos de ayuda en software



A Summary of User Interface Design Principles

In an essay in [LAUR91] it states that are five basic types of

help, corresponding to the five basic questions that users ask:





  • 1. Goal-oriented: "What kinds of things can I

    do with this program?"
  • 2. Descriptive: "What is this? What does this

    do?"
  • 3. Procedural: "How do I do this?"
  • 4. Interpretive: "Why did this happen?"
  • 5. Navigational: "Where am I?"

viernes, marzo 14, 2008

Software de recuperación de datos corruptos

Sin backups!

Data Recovery: How Data Get Lost and means to recover

Data recovery software is designed for any one to use. Using the data recovery software you simply choose what you want to do, and the software does the work, with no technical knowledge required at all.

Consejos para una empresa que comienza



Startup Tips for the Early, Early Days
My favorite stage of a startup is the early, early days. This is when things are the most chaotic, resources are limited and the team is small enough to fit a single car.



I've been thinking about the early days of the startups I've been involved in and put together some quick (and practical) tips on these early days.

Atajos de teclado para Google Reader



» 10 Google Reader Keyboard Shortcuts, get quick now!
  • j next item
  • n item scan down
  • k previous item
  • m mark as read/unread
  • t tag item
  • p item scan up
  • shift-n next subscription
  • v view original
  • o expand/collapse item
  • s star item

Una sentencia en Valencia ratifica la validez del copyleft



David Bravo - Sentencia: validez de las licencias copyleft
Tras declarar que hay que abonar una determinada indemnización por la vulneración de los derechos morales del demandante, agrega : "sin que haya lugar a indemnizar ningún otro concepto distinto de los derechos morales de autor debido a la renuncia a la exclusividad que ha de suponer la licencia copyleft". [...]

Evidentemente, el mero hecho de que el tribunal decida que no ha de abonarse cantidad alguna por el uso de aquellos derechos patrimoniales que son objeto de cesión mediante licencia, significa dar plena validez a la misma.

Pianista acompañante automatizado, de Microsoft Research

Un programa que genera automáticamente una música de acompañamiento para una melodía cantada.

MySong, from Microsoft Research, makes your singing sound a lot better than it really does - istartedsomething Microsoft Research MySong
Cue Scoble tears. This is one hell of a technology from Microsoft Research that I think will have a huge impact on how amateurs and hobbyists write music. The technology and software prototype is called MySong.

In a nutshell, the software records your singing (preferably in tune) through a microphone, and it systematically generates an instrumental accompaniment for your song. The quality is even comparable with a professional accompanist, not to mention the cost and time involved.

If you don’t believe me, have a look at th

Python vs Ruby: los closures incompletos

Los closures de Python no guardan el contexto original, crean una copia, así que no son iguales a los de Lisp. Los de Ruby, sí.

Ivan: Closures in Python (part 2)
Limitation of lambda

In the non-list comprehension examples, the "lambda" keyword for creating a closure in Python can only be used with an expression, not any arbitrary code. This happens to be OK for the examples in Martin's article, but consider something just a tiny bit more complicated:

Let's say you wanted to do:






map(lambda each: if each.isManager: each.salary = 2000, employees)




You can't. "if each.isManager: each.salary = 2000" isn't an expression.

jueves, marzo 13, 2008

Móvil con Linux

Prácticamente un ultraportátil, con touch screen y teclado

Nokia España - Nokia N810 - Specifications
  • Carcasa deslizante con teclado QWERTY integrado
  • Receptor GPS incorporado
  • Altavoces estéreo de gran calidad y micrófono de alta sensibilidad
  • Pantalla panorámica de alta resolución
  • Soporte sobremesa integrado
  • Cámara Web VGA integrada
  • Tecla HW para el bloqueo de teclas y pantalla táctil
  • Sensor de luz ambiental

Portátiles baratos - internacional

miércoles, marzo 12, 2008

Juegos mentales filosóficos



Alimento para la mente | Microsiervos (Juegos y Diversión)
Juegos filosóficos, de tipo test, extraordinariamente bien preparados y comentados, para los que hay que saber algo de inglés. (Cada juego se completa entre 3 y 10 minutos, suele estar indicado.)

Inyección de dependencias en Java: cómo y cuando usarla

Teoría de la Dependency Injection

Inversion of Control Containers and the Dependency Injection pattern
In the Java community there's been a rush of lightweight containers that help to assemble components from different projects into a cohesive application. Underlying these containers is a common pattern to how they perform the wiring, a concept they refer under the very generic name of "Inversion of Control". In this article I dig into how this pattern works, under the more specific name of "Dependency Injection", and contrast it with the Service Locator alternative. The choice between them is less important than the principle of separating configuration from use.

Geometría musical

Basada en la teoría de cuerdas, este científico ha encontrado un modelo geométrico que describe todas las progresiones de acordes posibles en música.


The Geometry of Music - TIME
Borrowing some of the mathematics that string theorists invented to plumb the secrets of the physical universe, he has found a way to represent the universe of all possible musical chords in graphic form. "He's not the first to try," says Yale music theorist Richard Cohn. "But he's the first to come up with a compelling answer."

Conferencia de usabilidad de Google



Google Testing Blog: Testapalooza
The idea for Testapalooza came out of discussions about how to build a vibrant testing community here at Google. Many diverse groups work daily on quality-related activities, but each group uses different tools and has different ideas for testing an application, so it can be difficult to find out what others are doing. So we decided to put on a conference!

Por qué EMACS duele (literalmente)

Los atajos de teclado de EMACS se diseñaron para un teclado que ya no existe.

Why Emacs's Keyboard Shortcuts Are Painful
Emacs's keyboard shortcuts is very inefficient. The primary cause is because, emacs's keyboard shortcuts are designed with a keyboard that practically has the Ctrl and Alt key positions swapped.Space Cadet keyboard
The common keyboard used around emacs era in the 1980s are those keyboards from
Lisp Machines↗.
(see
Space-cadet keyboard↗)
The keyboard on lisp machines have the Control key right besides the
space bar (similar to the position of Alt keys on PC keyboards), and
Meta to the left of Control. So, the Control key is the primary
modifier, and the Meta is secondary to Control. This is why, the
shortcuts for the most used commands in emacs involve the Control key
instead of the Meta key.

martes, marzo 11, 2008

Sistema electoral mixto, con 51ª circunscripción proporcional

Propuestas de reforma del sistema de recuento de votos para reflejar la proporcionalidad


Las circunscripciones electorales en el sistema electoral español


Google Docs - SISTEMA ELECTORAL
SISTEMA ELECTORAL: Hoja 1


Propongo un cambio en el sistema electoral. Se trata de elegir una parte de los escaños de forma proporcional a los votos obtenidos en todo el país, y el resto de los escaños, por el método tradicional. Según el ejemplo, se eligen un 30 % de los escaños de forma proporcional, lo cual supone un alivio para los partidos pequeños que son votados en todo el país, es decir, IU y UPyD. El 70% restante se obtiene de la forma tradicional. Esto es sólo un esbozo, pero creo que podría ser un buen principio.

Por qué externalizar la programación a la India no es lo mismo

La diferencia de calidad en los equipos de programación subcontratados a "fábricas de software"

David's Software Development Survival Guide: Modeling development capacity in offshore teams
I'm often challenged by their assumption that x staff-weeks of effort here (in the San Francisco bay area) is equivalent to x-staff weeks of effort for our offshore team (located in India).
- Our overall development team is medium-sized (20-30 developers)
- Our offshore team represents less than half of that size
- Members of the offshore team are generally very solid and competent engineers; but
. They're on average 5 years more junior that the SF folks
. They have 6 to 18 months tenure with us, when the majority of the SF folks have been working with the product for over 5 years

When
talking about differences in productivity, I'm therefore NOT referring
to a potential difference due to one of the team being intrinsically
less competent or talented than the other; but differences related to
experience, background, and distance.

lunes, marzo 10, 2008

Limpiadores de registro de Windows gratuitos



The Most Downloaded Registry Cleaners -2
Lets continue our review of the most downloaded cleaners with registry cleaner software number two and three…Award Winning Registry Cleaner

"Scrapper" de aplicaciones web completas

Permite exportar una aplicación web y convertirla en aplicación de escritorio

Mozilla Labs » Blog Archive » Major Update to Prism, First Prototype of Browser Integration
As previously announced, Prism is part of a series of Mozilla Labs experiments into bridging the divide in the user experience between web and desktop apps and exploring new usability models as the line between those kinds of apps continues to blur.Refracting550

Generador de nombres para Web 2.0



Web 2.0 Name Generator

http://täd.se/play/web2names/
This thing generates "Web 2.0" - names using a secret algorithm ;) All these names are freely available (not registered as .com-domains) and are free to claim for your Web 2.0 services. Reload the page for new names.

Video: Los prototipos iniciales de Office 2007



Office 2007 interface prototypes - istartedsomething
Jensen Harris from the Office 2007 design team gave a very rare presentation at Microsoft’s MIX08 event today about not what the Office 2007 Fluent (Ribbon) interface is about, but instead how it came to be and what other concepts they tried.DSC_0077

HOWTO: Crear prototipos de interacción con PowerPoint 2007

Toolkit para prototipado rápido RAD

PowerPoint Prototyping Toolkit (release 0.2) - istartedsomething PowerPoint Prototyping Toolkit
After hearing about the impact and success it had in Microsoft, I couldn’t wait to get my hands on prototyping in PowerPoint 2007. Amongst a few things Manuel Clement suggested a few weeks ago in his presentation about “wireframe prototyping with Office PowerPoint 2007″, was to create a toolkit of commonly used GUI components to copy and paste when designing the prototype screens. That’s what I set out to build.

Web semántica con API y datos de la wikipedia

Una aplicación que publica la Wikipedia como servicio web semántico

Help Center : Freebase
Freebase is an open database of the world’s information. It is built by the community and for the community—free for anyone to query, contribute to, built applications on top of, or integrate into their websites.

Modelado de datos para información web

Guía para representar colecciones de datos (como la Wikipedia, por ejemplo) publicadas a través de una API

Data Modeling Guide : Help : Freebase
This document is intended for Metaweb users who would like to develop new data models by creating new types and properties.

Although the Freebase application makes it a lot easier to create and maintain types, data modeling is still a difficult and nuanced discipline. By following these guidelines, you will make your data more usable, extensible and understandable to others in the Freebase community. It will also increase your chances of having a private domain approved to become public and usable by everybody.

viernes, marzo 07, 2008

El proyecto Enso, liberado por sus creadores

Enso es una "línea de comandos" integrada con el entorno gráfico. Está basada en las ideas del libro "The Humane Interface".

enso - Google Code
The Enso Project is the open-source release of Enso, an extensible, cross-platform quasimodal linguistic command-line interface written in Python.

Enso's goal is to provide a way of accessing whatever piece of functionality you need -- be it calculating an expression, calling up a map, or performing a Google search -- with a few, semantically meaningful keystrokes.

jueves, marzo 06, 2008

Religiones comparadas

La línea de nombres son personajes en los textos sagrados, los textos de debajo son las acciones (verbos) que realizan con más frecuencia, y los arcos conectan a los personajes con más acciones en común.


Infografistas: Las cinco grandes religiones en un gráfico

Similar Diversity es un gráfico que abre una nueva perspectiva sobre la visión de la religión y la fe, visualizando los libros sagrados de las cinco grandes religiones. Los puntos en común y los distintivos de Cristianismo, Islam, Hinduísmo, Budismo y Judaísmo se evidencian en esta visualización.
La base visual es un análisis textual objetivo de las Sagradas Escrituras y otras obras sin interpretaciones del creador. A pesar, o incluso debido a esta abstracción, no se muestra la obra sólo de un modo informal si no también incluso desde una perspectiva emocional. Los que la vean pueden sentirse inspirados a pensar sobre sus propios prejuicios y los conflictos religiosos de la actualidad.

Arquitectura y diseño de portales de información

Cómo construir un panel corporativo de información modular a partir de bloques de información reusables

Enhancing Dashboard Value and User Experience - Boxes and Arrows: The design behind the design

This article is the fifth in a series sharing a design framework for dashboards and portals.us_products_example_callouts-1_thumb.jpg

Part 1 of this series, The Challenge of Dashboards and Portals,
discussed the difficulties of creating effective information
architectures for portals, dashboards and tile-based information
environments using only flat portlets, and introduced the idea of a
system of standardized building blocks that can effectively support
growth in content, functionality, and users over time. In enterprise
and other large scale social settings, using such standardized
components allows for the creation of a library of tiles that can be
shared across communities of users.

Part 2 of the series, Introduction to the Building Blocks,
outlined the design principles underlying the building block system and
the simple guidelines for combining blocks together to create any type
of tile-based environment.

Part 3 of the series, Building Block Definitions (Containers), described the Container components of the Building Block system in detail.

Part 4 of the series, Connectors for Dashboards and Portals, described the Connector components of the Building Block system in detail.

In
Part 5, we look at ways to enhance the long-term value and user
experience quality of portals created with the building blocks by
encouraging portability and natural patterns of dialog and interaction
around aggregated content.

miércoles, marzo 05, 2008

Programación funcional avanzada: lenguajes específicos de dominio

Conceptos de Programación funcional avanzada con F#. Patrón Intérprete, active patterns...

F# Overview (IV.) - Language Oriented Programming | Blog | TomasP.Net
F# Overview (IV.) - Language Oriented Programming

Tipos de cable de video: cuidado con las estafas

Los cables digitales caros NO compensan (pero el formato de señal SI).

Report reminds us: don't get burned by overpriced cables - Engadget HD
As we've seen time and time again, "gold plated" and "speed-rated"
cabling essentially produces the same image as sturdily constructed
alternatives that ring up at substantially lower prices, and it's no
surprise to hear that confused HDTV buyers are still being lured into dropping hundreds on wires that offer up little additional value in return.

Toda la información del mundo

O al menos, todas las estadísticas oficiales de las Naciones Unidas, publicadas online y filtrables. Puede ser para la web un avance tan importante como la Wikipedia.

UNdata

Freeware para imágenes

Herramientas gratuitas para screenshots, crop y retoque fotográfico

6 Free Graphics Software Gems | OStatic
MWSnap is a free screen capture program with a rich set of tools.

martes, marzo 04, 2008

HOWTO: Liberar el movil legalmente

Una vez cumplido el periodo de permanencia (un año):

Liberar móvil Movistar - Newsgrupos.com

"El 27 de agosto comenté por aquí que estaba intentando liberar el móvil.
Se trataba de una liberación legal; había pasado más de un año desde su
compra, por lo que movistar esta obligada a facilitar los códigos de
desbloqueo.

Al llamar me indicaron que volviera a hacerlo pasados 15 días, tras los
cuales ya tendrían el código. Sin embargo sucedió un problema "con el
proceso de solicitud" y tuve que esperar otros 15 días. Tras repetirse esta
acuación hasta tres ocasiones, decidí poner una denuncia en el departamento
de consumo del Gobierno de Navarra.

Ha pasado un mes y hoy me han llamado de Movistar, pidiéndome perdón por lo
sucedido y facilitándome el código de liberación del móvil... (y las
instrucciones necesarias paa introducirlo)

Está claro que contra estas compañías no hay otra vía que la denuncia...

Asistente de diseño para blogs

Un wizard para crear el aspecto visual de tu blog, muy personalizable.

TypePad Design Assistant
What does the Design Assistant do?
  • Lets you test drive TypePad’s 100+ professionally designed themes and five classic layouts.
  • Makes it easy to learn about and experiment with Custom CSS styles.
  • Offers live previews of edits you make to your styles.
  • Shows you how to apply your custom style to your blog.

Tutorial COM y .NET

Widgets: no sirven como publicidad

Incluye una mini descripción de los modos de actuación de los usuarios con aplicaciones interactivas:

Why Widgets Don't Work

Receive, Hunt, Do



But marketers are making a big mistake if they think widgets will help
them build deep inroads with this demographic. To understand why,
consider the mindset of the people spending time spiffing up their
profiles and socializing online.


They are doing, not hunting, and you'll have a hard time reaching
them when they're in this mode. There are three modes, or mindsets,
people take on when they use interactive communications: receiving,
hunting, and doing. You receive a phone call. You hunt for a book at
the library. You take an action—say, writing an article such as
this.

Rendimiento de lenguajes de programación

Benchmarks de lenguajes populares y no tan populares, para comprobar su velocidad. Incluye famosos como C++, C#, Java, Python, Ruby pero también "rarezas populares" para los frikis de la programación funcional, como Oz (Mozart), Haskell y OCaml.

The Computer Language Benchmarks Game
Benchmarking programming languages?

How can we benchmark a programming language?
We can't - we benchmark programming language implementations.

How can we benchmark language implementations?
We can't - we measure particular programs.

lunes, marzo 03, 2008

O'Haskell: extensión de Haskell orientada a objetos

Una extensión al lenguaje Haskell, que encapsula programación imperativa


Rationale for O'Haskell


The construction of robust distributed and interactive software is
still a challenging task, despite the recent popularity-increase for
languages that take advanced programming concepts into the
mainstream. Several problematic areas can be identified: most
languages require the reactivity of a system to be manually
upheld by careful avoidance of blocking operations; mathematical
values often need to be encoded in terms of stateful
objects
or vice versa; concurrency is particularly tricky in
conjunction with encapsulated software components; and static type
safety is often compromised because of the lack of simultaneous
support for both subtyping and polymorphism.


This document presents a rationale for a programming language, O'Haskell, that
has been consciously designed with these considerations in mind.
O'Haskell is defined by conservatively extending the purely
functional language Haskell with the following features:


  • A central structuring mechanism based on reactive objects,
    which unify the notions of objects and concurrent processes.
    Reactive objects are asynchronous, state-encapsulating servers whose
    purpose is to react to input messages; they cannot actively block
    execution or selectively filter their sources of input.

  • A monadic layer of object-based computational effects, which clearly
    separates stateful objects from stateless values. Apart from
    higher-order functions and recursive data structures, the latter
    notion also includes first-class commands, object templates, and
    methods.

  • A safe, polymorphic type system with declared record and datatype
    subtyping, supported by a powerful partial type inference algorithm.

It is claimed that these features make O'Haskell especially
well-adapted for the task of modern software construction.


Videos de programación funcional



Barrapunto | Vídeos de un seminario de programación funcional
Programación

«Para el que le interese la programación funcional, están disponibles los vídeos de un seminario de Programación Funcional. El primer vídeo de Simon Peyton-Jones de Microsoft está bastante bien para hacerse una idea de las ventajas de este paradigma, en este caso solo da la parte buena. Podría haberse alargado más en los inconvenientes, pero la conferencia está muy bien.»

el listado de vídeos es:

Simon Peyton-Jones: "Taming Effects - The Next Big Challenge"

Satnam Singh: "Declarative Programming Techniques for Many-Core Architectures"

John Hughes: "Testing with QuickCheck"

Simon Peyton-Jones: "Composing Contracts - An Adventure in Financial Engineering"

John Launchbury: "High-Assurance Software"

el de "Testing with QuickCheck" habla sobre la herramiento quickcheck para hacer testing. esta herramienta tiene versiones para varios lenguajes funciones entre ellos haskell y erlang.

en este caso el vídeo es sobre quickcheck en lenguaje erlang. no es exacto decir que es de "erlang y quickcheck".