¡Feliz 2008!

Pues eso. Esta entrada no tiene otro motivo que no sea desearos un próspero y feliz 2008 para todos los que me leéis.

Gracias por estar ahí. Vuestra participación es la que anima a seguir este proyecto, ;)

Gracias y saludos para todos.

50 años con Fortran

Este es un pequeño homenaje que he decidido a hacer al primer lenguaje de programación de alto nivel que luego fue padre de otros muchos como Algol y todos los que vinieron detrás de este: Basic, Pascal, Simula, etc etc.

En una época, donde programar las máquinas para hacer cálculo científicos eran un auténtico latazo ya que se tenían que cargar las instrucciones en las computadoras mediante un código-máquina lenguaje que describe cada operación aritmética en un orden preciso, surgió la idea de crear un lenguaje que fuera más sencillo de comprender que aquellas arcaicas operaciones máquina. De este modo, nació lo que hoy conocemos como Fortran.

En 1954 un equipo de investigadores de IBM al frende de John Backus se lanzó a la creación de Fortran y años más tarde consiguieron acabar el lenguaje creadon el primer compilador comercial.

Fortran fue un lenguaje diseñado para ser utilizado principalmente en aplicaciones científicas y de análisis numérico y por ello el nombre de Fortran("Formula Translator").

Según se puede leer en la wikipedia, las últimas versiones de Fortran han dado soporte a la POO.

Yo soy demasiado joven para haber podido usar Fortran ni he centrado mis esfuerzos en el análisis numérico, pero esta claro que este lenguaje supuso un antes y un después en la computación, por ello me gustaría recordar este lenguaje con un simple programa escrito en Fortran 90.

He aquí un ejemplo que he encontrado por la web. Este simple programa permite calcular el volumen, y área de una esfera dado su radio.

PROGRAM sphere

IMPLICIT NONE

! This program will find the surface area and volume of a sphere, given
! its radius.

! Variable declarations
REAL :: rad, area, volume, pi

! Assign a value to the variable pi.
pi = 3.141593

! Input the value of the radius and echo the inputted value.
PRINT *, "Enter the radius of the sphere."
READ *, rad
PRINT *, rad, " is the value of the radius"

! Compute the surface area and volume of the sphere.
area = 4.0 * pi * rad**2
volume = (4.0/3.0) * pi * rad**3

! Print the values of the radius (given in cm), surface area (sq cm),
! and volume (cubic cm).
PRINT *,"In a sphere of radius",rad
PRINT *,"the surface area is", area," and the volume is", volume

STOP

END PROGRAM sphere

Como veis, es un lenguaje que satisfacía plenamente su propósito. Así que lo único que me queda decir es que espero que siga mejorándose y siga facilitando el trabajo a los investigadores que lo usan para sus cálculos matemáticos.

Google compra Wikimedia y lo integra Knol

Leyendo hoy a través de la wikipedia (es lo que tiene tiene estudiar, no se puede desconectar del todo, :S) me entero de esta triste noticia.

Como se puede leer en el comunicado oficial, han de dejar el proyecto:

Hoy, la Fundación Wikimedia se ha declarado en bancarrota, debido a la pésima campaña de recolección de fondos (sólo lleva 1,35 millones de dólares de 4 millones esperados), por lo cual se ha determinado que será vendido en marzo de 2008 a Google, para ser integrado como base de Knol, el nuevo servicio de contenidos de Google.

En un escueto comunicado, se ha determinado que todos los editores de los proyectos de Wikimedia serán remunerados por cada artículo escrito con 1 dólar y una chupetina, para pasar el mal sabor de boca al ser vendidos.

Los Directores de la Fundación serán los nuevos subgerentes de esclavitud de los wiki-reporteros, donde darán latigazos a quienes no escriban un artículo diario y le dará sus buenos bits a los robots que hacen pavadas, como BOT-Superzerocool.

Nos despedimos para siempre desde el mundo libre y ahora nos veremos en un mundo remunerado...
Inocentes! Gracias a Dios es una broma, jeje. Saludos a todos y felíz día de los Inocentes!

¡Feliz Navidad!

Os deseo a todos una próspera y felíz Navidad. Disfruten de estos días con la familia y repongan las "pilas" para la vuelta.

Saludos a todos

Xorg.conf Ati Mobility Radeon óptimo

Hola a todos.

Tras varios días probando y probando configuraciones idóneas para mi gráfica en Linux he acabado por encontrar una que da un rendimiento realmente bueno con muchos pros y muy pocos contras.

He estado probando el nuevo driver de AMD/Ati, el 7.12. Francamente es mejor que el 7.11 pero no demasiado. Es más, con respecto al rendimiento no hay ninguna novedad. Solo desde el punto de la estabilidad, y tampoco demasiada (al menos para mi gráfica, una Mobility Radeon 9700) porque a veces cuando reinicias el servidor gráfico o cuando haces un logout se queda congelado. Así que no me conformaba con eso. El driver fglrx 8.40 daba muy buen rendimiento pero sí que se me congelaban las X's. Así que tenía que buscar otra opción, y tras probar y probar diferentes configuraciones de mi xorg.conf creo que la he encontrado. Y lo mejor de todo es que es usando el driver libre, con lo cual tenemos asegurado que no tendremos problemas de ningún tipo (algo de lo que os puedo asegurar).

La mejora de rendimiento es MUY significativa con respecto a la configuración "serie" que trae el driver en cualquier distribución. Aquí os lo dejo. Espero que os sirva. Por cierto, lo que ponga SAX bla bla bla ya sabéis que es de openSUSE. Quedaros con el resto de mi configuración, seguro que os resulta muy útil.


# /.../
# SaX generated X11 config file
# Created on: 2007-10-30T21:10:27+0100.
#
# Version: 8.1
# Contact: Marcus Schaefer , 2005
# Contact: SaX-User list
#
# Automatically generated by [ISaX] (8.1)
# PLEASE DO NOT EDIT THIS FILE!
#

Section "Files"
FontPath "/usr/share/fonts/misc:unscaled"
FontPath "/usr/share/fonts/local"
FontPath "/usr/share/fonts/75dpi:unscaled"
FontPath "/usr/share/fonts/100dpi:unscaled"
FontPath "/usr/share/fonts/Type1"
FontPath "/usr/share/fonts/URW"
FontPath "/usr/share/fonts/Speedo"
FontPath "/usr/share/fonts/PEX"
FontPath "/usr/share/fonts/cyrillic"
FontPath "/usr/share/fonts/latin2/misc:unscaled"
FontPath "/usr/share/fonts/latin2/75dpi:unscaled"
FontPath "/usr/share/fonts/latin2/100dpi:unscaled"
FontPath "/usr/share/fonts/latin2/Type1"
FontPath "/usr/share/fonts/latin7/75dpi:unscaled"
FontPath "/usr/share/fonts/baekmuk:unscaled"
FontPath "/usr/share/fonts/japanese:unscaled"
FontPath "/usr/share/fonts/kwintv"
FontPath "/usr/share/fonts/truetype"
FontPath "/usr/share/fonts/uni:unscaled"
FontPath "/usr/share/fonts/CID"
FontPath "/usr/share/fonts/ucs/misc:unscaled"
FontPath "/usr/share/fonts/ucs/75dpi:unscaled"
FontPath "/usr/share/fonts/ucs/100dpi:unscaled"
FontPath "/usr/share/fonts/hellas/misc:unscaled"
FontPath "/usr/share/fonts/hellas/75dpi:unscaled"
FontPath "/usr/share/fonts/hellas/100dpi:unscaled"
FontPath "/usr/share/fonts/hellas/Type1"
FontPath "/usr/share/fonts/misc/sgi:unscaled"
FontPath "/usr/share/fonts/xtest"
FontPath "/opt/kde3/share/fonts"
InputDevices "/dev/gpmdata"
InputDevices "/dev/input/mice"
EndSection

Section "ServerFlags"
Option "AllowMouseOpenFail" "on"
Option "AIGLX" "True"
EndSection

Section "Module"
Load "dbe"
Load "type1"
Load "freetype"
Load "extmod"
Load "glx"
Load "dri"
EndSection

Section "InputDevice"
Driver "kbd"
Identifier "Keyboard[0]"
Option "Protocol" "Standard"
Option "XkbLayout" "es"
Option "XkbModel" "pc102"
Option "XkbRules" "xfree86"
EndSection


Section "InputDevice"
Driver "mouse"
Identifier "Mouse[1]"
Option "Buttons" "5"
Option "Device" "/dev/input/mice"
Option "Name" "Logitech M-UV69a Optical Wheel Mouse"
Option "Protocol" "explorerps/2"
Option "Vendor" "Sysp"
Option "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
Driver "synaptics"
Identifier "Mouse[3]"
Option "Buttons" "5"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "on"
Option "InputFashion" "Mouse"
Option "Name" "Synaptics;Touchpad"
Option "Protocol" "explorerps/2"
Option "SHMConfig" "on"
Option "Vendor" "Sysp"
Option "ZAxisMapping" "4 5"
EndSection


Section "Monitor"
HorizSync 29-60
Identifier "Monitor[0]"
ModelName "1024X768@60HZ"
Option "DPMS"
VendorName "--> LCD"
VertRefresh 30-60
UseModes "Modes[0]"
EndSection


Section "Modes"
Identifier "Modes[0]"
Modeline "1280x800" 83.46 1280 1344 1480 1680 800 801 804 828
Modeline "1280x800" 69.75 1280 1328 1360 1440 800 803 809 823 +HSync -Vsync
Modeline "1280x768" 80.14 1280 1344 1480 1680 768 769 772 795
Modeline "1280x768" 67.00 1280 1328 1360 1440 768 771 778 790 +HSync -Vsync
Modeline "1024x768" 64.11 1024 1080 1184 1344 768 769 772 795
Modeline "1024x768" 55.00 1024 1072 1104 1184 768 771 775 790 +HSync -Vsync
Modeline "1280x600" 61.50 1280 1336 1464 1648 600 601 604 622
Modeline "1280x600" 52.50 1280 1328 1360 1440 600 603 613 619 +HSync -Vsync
Modeline "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622
Modeline "1024x600" 43.00 1024 1072 1104 1184 600 603 613 619 +HSync -Vsync
Modeline "800x600" 38.22 800 832 912 1024 600 601 604 622
Modeline "800x600" 34.75 800 848 880 960 600 603 607 617 +HSync -Vsync
Modeline "768x576" 34.96 768 792 872 976 576 577 580 597
Modeline "768x576" 32.25 768 816 848 928 576 579 583 593 +HSync -Vsync
Modeline "640x480" 23.86 640 656 720 800 480 481 484 497
Modeline "640x480" 23.25 640 688 720 800 480 483 487 494 +HSync -Vsync
Modeline "1024x768" 65.0 1024 1048 1184 1344 768 771 777 806 -hsync -vsync
EndSection


Section "Screen"
DefaultDepth 24
SubSection "Display"
Depth 15
Modes "1280x800" "1280x768" "1024x768" "1280x600" "1024x600" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 16
Modes "1280x800" "1280x768" "1024x768" "1280x600" "1024x600" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 24
Modes "1280x800" "1280x768" "1024x768" "1280x600" "1024x600" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 32
Modes "1280x800" "1280x768" "1024x768" "1280x600" "1024x600" "800x600" "768x576" "640x480"
EndSubSection
SubSection "Display"
Depth 8
Modes "1280x800" "1280x768" "1024x768" "1280x600" "1024x600" "800x600" "768x576" "640x480"
EndSubSection
Device "Device[0]"
Identifier "Screen[0]"
Monitor "Monitor[0]"
EndSection


Section "Device"
BoardName "RV350 NP"
BusID "1:0:0"
Driver "radeon"
Identifier "Device[0]"
#Nuevas opciones
Option "backingstore" "true"
Option "EnablePageFlip" "true"
Option "SubPixelOrder" "none"
Option "AccelMethod" "XAA"
Option "RenderAccel" "true"
Option "AGPMode" "4"
Option "ColorTiling" "on"
Option "DynamicClocks" "on"
Option "mtrr" "on"

Option "XAANoOffscreenPixmaps" "true"
Option "AllowGLXWithComposite" "true"
Option "no_accel" "no"
Option "no_dri" "no"
Option "DynamicClocks" "on"
Option "mtrr" "on"
Option "DesktopSetup" "Single"
Option "ScreenOverlap" "0"
Option "Capabilities" "0x00000000"
Option "CapabilitiesEx" "0x00000000"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
Option "CenterMode" "off"
Option "PseudoColorVisuals" "off"
Option "Stereo" "off"
Option "StereoSyncEnable" "1"
Option "FSAAEnable" "no"
Option "FSAAScale" "1"
Option "FSAADisableGamma" "no"
Option "FSAACustomizeMSPos" "no"
Option "FSAAMSPosX0" "0.000000"
Option "FSAAMSPosY0" "0.000000"
Option "FSAAMSPosX1" "0.000000"
Option "FSAAMSPosY1" "0.000000"
Option "FSAAMSPosX2" "0.000000"
Option "FSAAMSPosY2" "0.000000"
Option "FSAAMSPosX3" "0.000000"
Option "FSAAMSPosY3" "0.000000"
Option "FSAAMSPosX4" "0.000000"
Option "FSAAMSPosY4" "0.000000"
Option "FSAAMSPosX5" "0.000000"
Option "FSAAMSPosY5" "0.000000"
Option "UseFastTLS" "0"
Option "BlockSignalsOnLock" "on"
Option "UseInternalAGPGART" "no"
Option "ForceGenericCPU" "no"
Option "KernelModuleParm" "agplock=0"
Option "PowerState" "1"
#esta siguientes son se supone p

#Fin Nuevas opciones

Option "GARTSize" "32"
Option "CRT2HSync" "31-48"
Option "SaXDualMonitorModel" "1024X768@60HZ"
Option "SaXDualMonitorVendor" "--> VESA"
Option "SaXDualOrientation" "LeftOf"
Option "SaXDualResolution" "1024x768"
Option "SaXDualVSync" "50-60"
Option "MetaModes" "1280x800,1024x768;1024x768,1024x768"
Option "CRT2Position" "Clone"
Option "CRT2VRefresh" "50-60"
Option "IgnoreEDID" "yes"
Option "MergedFB" "yes"
Option "SaXDualHSync" "31-48"
Option "MonitorLayout" "AUTOCRT,CRT"
Option "SaXDualHead" ""
Option "SaXDualMode" "Clone"
VendorName "ATI"
EndSection



Section "ServerLayout"
Identifier "Layout[all]"
InputDevice "Keyboard[0]" "CoreKeyboard"
InputDevice "Mouse[1]" "CorePointer"
InputDevice "Mouse[3]" "SendCoreEvents"
Option "Clone" "off"
Option "Xinerama" "off"
Screen "Screen[0]"
EndSection


Section "DRI"
Group "video"
Mode 0660
EndSection

Section "Extensions"
Option "Composite" "Enable"
Option "DAMAGE" "Enable"
Option "RENDER" "True"
EndSection


PD: Haced una copia de seguridad, ¿eh? Y recordad, esto es para el DRIVER LIBRE. Aunque os aseguro que el rendimiento es mejor (al menos en mi equipo) que usando el 7.12 con AIGLX.

LISI: "Ley de la Criminalización de la Sociedad de la Información"

Lo que me faltaba por leer (véase en elmundo, en elpais o en theinquirer). Gracias a esta "fantástica" ley que el Congreso acaba de aprobar, la Ley de Impulso de la Sociedad de la Información. Me gustaría saber qué entienden estos señores por impulsar la SI...

PP e ICV (promotor de la enmienda de eliminación del canon) votaron a favor de la enmienda. IU y CIU han votado hoy en contra (justo cuando hace una semana en el Sendado votaron que SÍ a esta enmienda). Como se nota a quienes votan los "artistas"...

El PSOE, artífice de esta "maravilla" de ley ha cumplido con los deberes. Y ahora, todos a tragar no solo un impuesto abusivo, innecesario y que nos criminaliza a todos. Por cierto, resulta curioso que el 94% de los lectores de ElPais.com rechazan el canon digital (periódico leído por muchos simpatizantes del PSOE).

He recopilado un par de frases que francamente me han provocado que me parta de risa (por no llorar, claro está).
"Viene a culminar la legislatura de los derechos", afirmaba, antes de entrar en materia, Diego López Garrido.
¡Ole, di que sí!...Te habrás quedado agusto, ¿eh? Oiga, es que yo no sabía que culparme por la potencialidad que de que infrinja los "derechos de autor" y violar mi presunción de inocencia es un derecho....¿Es que acaso la cantidad de empresas y particulares que NECESITAN hacer copias de seguridad o simplemente guardar sus datos en soportes digitales como CDs/DVDs/Pendrives van a tener que darle de comer a los señoritos "artistas"?Pues sí, así de injusta es esta ley.

Otra cosa importante que se me olvidaba. ¿Sabían ustedes que con esta "magnífica" ley hemos vuelto a los tiempos de Franco? Sí, porque ahora no hace falta ser el poder judicial para secuestrar y censurar las webs.
Todo un gesto que "agradeceremos" al tener que soportar cómo los políticos manipulan la Red...
La ley aprobada tiene otros puntos de interés, como la posibilidad de bloqueo administrativo de contenidos. El abogado y experto Carlos Sánchez Almeida recordó que esta posibilidad existe en la actual LSSI, y que con esta reforma "se ha vuelto a perder la oportunidad de 'blindar' Internet como un espacio de libertad frente a posibles censuras administrativas".

El nuevo contenido del artículo 11 de la LSSI posibilita a entidades administrativas el bloqueo de contenidos en la Red, siempre que no vulneren la libertad de expresión. No obstante, lo que no queda claro es quién decide esto último, ya que en ningún momento se especifica que sea un juez quien decide esto.

Según este artículo, "la autorización del secuestro de páginas de Internet o de su restricción cuando ésta afecte a los derechos y libertades de expresión e información y demás amparados en los términos establecidos en el artículo 20 de la Constitución sólo podrá ser decidida por los órganos jurisdiccionales competentes". La pregunta es: ¿quién decide que cuándo la restricción afecta a la libertad de expresión?

(Extraído de El Mundo)

Hoy es un día muy triste para la sociedad española. Una panda de ..... con la mano de sus "amiguitos" han conseguido estafarnos, robarnos y quitarnos nuestro dinero y derechos. Realmente muy triste.

Nuevo cánon, nueva vuelta de tuerca... (II)

Para no alargar más la entrada anterior, he preferido abrir otra. Y es que habían cosas que se me habían olvidado. Cosas tan curiosas como la siguiente.

El Gobierno ha creado una página web para que los jóvenes se eduquen en valorar los derechos de autor, esdelibro.es que tiene el siguiente objetivo:

esdelibro es un programa educativo promovido por CEDRO y dirigido al conjunto de la comunidad educativa, para fomentar la lectura, la creación textual y el respeto a los derechos de autor.
Dejando aparte mi opinión política sobre el tema, porque importa bien poco, os dejo una captura de pantalla que os dejará atónitos(recordad que es una página alojada por el Gobierno...)
Como verán algunos individuos no han desaprovechado la oportunidad de "manifestarse" a su manera...resulta cuanto menos muy gracioso.

Podéis jugar al juego y ver cómo se nos pretende "educar". Muy triste, pero qué le vamos a hacer...