Quote of the day

In Italy for 30 years under the Borgias they had warfare, terror, murder, and bloodshed, but they produced Michelangelo, Leonardo da Vinci and the Renaissance. In Switzerland they had brotherly love—they had 500 years of democracy and peace, and what did that produce? The cuckoo clock.

Orson Welles

Intelligent Software Agents – A .NET Example

Software Example

In the February 2006 issue of MSDN Magazine (http://msdn.microsoft.com/msdnmag/), Matt Neely describes a .NET implementation of mobile agents:

“The term agent originates in artificial intelligence and describes a logical entity that has some level of autonomy within its environment or host. A mobile agent has the added capability to move between hosts. In a computing context, a mobile agent is a combined unit of data and code that can move between different execution environments.”

(Neely, 2006)

The idea described in the article is that of a small family of .NET classes that literally “jump” from a computer to another, performing tasks in the host computer, through a mechanism called Remoting:

“An example of a traveling agent app could perform operations control. An agent is sent out with a list of machines on the local network it should traverse to inventory hardware and software (…) built-in services that facilitate the componentization and mobility of code, namely object remoting and serialization.(…) Mobile agents have their uses and their pros and cons. The autonomous and mobile nature of mobile agents can lead to reduced network traffic, decentralization, increased robustness and fault-tolerance, and easy deployment.”

(Neely, 2006)

traveling_agent.gif (Source: Neely, 2006) Continue reading

A Case for Compilers – A Fake Paper

This morning I said to myself; I should write something for my blog… but had no subject to write about; so I found a faster way: I went to http://pdos.csail.mit.edu/scigen/ and asked the SCIgen Automatic CS Paper Generator to create a document suitable to post here, to keep you entertained for a while. The results are amazing!

Enjoy! :)

A Case for Compilers

Adrian Kosmaczewski

Download a Postscript or PDF version of this paper.
Download all the files for this paper as a gzipped tar archive.

Abstract

The cryptoanalysis approach to web browsers is defined not only by the development of DNS, but also by the important need for the lookaside buffer [1]. In this paper, we confirm the improvement of digital-to-analog converters, which embodies the confirmed principles of robotics. Here, we use permutable information to validate that write-back caches and kernels can cooperate to realize this intent. Continue reading

COMUNICADO SOBRE LA NACIONALIZACIÓN DE LOS HIDROCARBUROS EN BOLIVIA (Plataforma 2015 y mas)

(Cortesia de Fede)

Bajar documento original

El tratamiento que en diferentes medios españoles están dando a la reciente promulgación por parte del Gobierno boliviano del Decreto de Nacionalización de los Hidrocarburos es, cuanto menos, poco comprensible por dos razones principales:

En primer lugar, parece que se está olvidando que el Presidente Evo Morales Ayma llegó al poder en diciembre de 2005 gracias al voto del 54% de la población (un porcentaje sin precedentes, que jamás ha obtenido en Bolivia ningún otro candidato presidencial) y a dos promesas electorales muy claras, la convocatoria de una Asamblea Constituyente y la nacionalización de los hidrocarburos. Ambas demandas provienen de la Agenda establecida por los movimientos sociales en Octubre de 2003, Mediante Referéndum Vinculante de 18 de julio de 2004, el 70% del pueblo boliviano decidió democráticamente que el Estado recuperara la propiedad de todos los hidrocarburos producidos en el país. No se entiende, entonces, por qué sorprende tanto una decisión que, simplemente, obedece al mandato que el pueblo soberano de Bolivia otorgó a su actual Gobierno. Continue reading

About OOP and other programming paradigms

Does OOP reflect a “natural” way of thinking? Is it a better choice than the procedural programming paradigm?

In computer science, to say that one approach is “better” than another is to miss a great detail: I do not think that there are “better” or “natural” paradigms per se, but just apppropriate answers to certain problems in a given context.

In his 1962 book “The Structure of Nature Revolutions”, Thomas Kuhn introduces the idea of the “paradigm shift”; following this idea, human knowledge does not evolve gradually, but rather in discontinuous jumps, called “paradigm shifts” or “scientific revolutions”:

“A scientific revolution occurs, according to Kuhn, when scientists encounter anomalies which cannot be explained by the universally accepted paradigm within which scientific progress has thereto been made. The paradigm, in Kuhn’s view, is not simply the current theory, but the entire worldview in which it exists, and all of the implications which come with it. There are anomalies for all paradigms, Kuhn maintained, that are brushed away as acceptable levels of error, or simply ignored and not dealt with (a principal argument Kuhn uses to reject Karl Popper’s model of falsifiability as the key force involved in scientific change).”

(Wikipedia, 2006)

In the case of the activity of software engineering, the paradigm shift from procedural to object-orientation is quite evident, both historically and technically speaking. Continue reading

Quick Comparison of C# and Ruby

Introduction

I have been working as a software developer since 1996, and as such I’ve used a variety of different languages, both compiled and interpreted. But the who languages that I know and use most today, are two somewhat different ones, C# and Ruby. I will begin my presentation with a short explanation of both, providing their major similarities and differences, and then providing some code samples of both.

Both languages are ranked #7 and #21 respectively in the TIOBE Programming Community Index, as of February 2006 (http://www.tiobe.com/tpci.htm).

Continue reading

Freaky

(received via e-mail)

Look what happens when a President gets elected in a year with a “0″ at the end. Also notice it goes in increments of 20 years.

  • 1840: William Henry Harrison (died in office)
  • 1860: Abraham Lincoln (assassinated)
  • 1880: James A. Garfield (assassinated)
  • 1900: William McKinley (assassinated)
  • 1920: Warren G. Harding (died in office)
  • 1940: Franklin D. Roosevelt (dies in office)
  • 1960: John F. Kennedy (assassinated)
  • 1980: Ronald Reagan (survived assassination attempt)
  • 2000: George W. Bush ?????

Continue reading

Posted in Uncategorized

Kubuntu 5.10 and the Linksys WPC54GS Wireless-G Network Adapter

OK, so this time I’ve tried to make the same I’ve described before, but for Kubuntu 5.10. I have changed to Kubuntu since I like KDE more than gnome, and also, Kubuntu seems to run faster than Ubuntu. And so I said to myself, OK, these are the same guys who make Ubuntu and Kubuntu, the wireless stuff should work fairly easily. After all it’s the same kernel…

Wrong. Continue reading