viernes, 31 de agosto de 2012

URGENTE: Presidente Zardari: ¡Salve a mi hija! (petición)


Al Presidente Asif Ali Zardari:

Le pedimos que garantice la seguridad y libertad de Rimsha, una niña con discapacidad mental encarcelada en Islamabad acusada de blasfemia, y que podría ser condenada a pena de muerte. Por favor utilice su poder para salvar a esta pequeña niña y tome medidas urgentes para proteger a las minorías en Pakistán.
Firma aquí: http://www.avaaz.org/es/pakistan_save_my_daughter/?cfYMXcb 

domingo, 17 de junio de 2012

domingo, 10 de junio de 2012

Sobra el dinero...por algo es ficticio

Ir a marte(con tripulación) era un proyecto que pareclia inviable para la humanidad por su alto coste (50.000.000.000 euros)...Hasta ayer...Podríamos hacerlo 2 veces.

O ya, sobradamente(con un poquito de cualquier rescate anterior), acabar con el hambre en el mundo, pero en eso ya nadie se fija...

Pero eso son tonterías, seguro que los bancos le sacan mejor partido... :(

sábado, 9 de junio de 2012

Política de coltán en samsung europa

"
•  We do not purchase coltan directly from the DRC nor from any other source in the form of raw material. A limited number of our component vendors do supply us with tantalum-based components.
•  In the cases when Samsung does use tantalum-based components, the company requires suppliers to take appropriate measures in order to avoid using coltan sourced from the DRC region.
•  We request that all vendors refrain from purchasing coltan mined in the DRC and we regularly audit vendors to ensure compliance. Our component vendors inform us that they obtain tantalum powder from the U.S.A, Russia and Thailand, not from the DRC.
•  We are making efforts to use substitutes for tantalum based components where possible."

Entrada original completa.

miércoles, 25 de abril de 2012

Malaria Spot & Crisis sueca

Dos enlaces interesantísimos con los que me encontré hoy:

Minijuego basado en encontrar infecciones de malaria sobre pacientes reales, es decir estás ayudando a que médicos se ahorren tiempo de observación que puede hacer cualquier persona y dediquen sus esfuerzos a lo que no cualquier persona puede, es decir curar.

Y el típico enlace de como otro país lo hizo mejor que España, lo cual desgraciadamente no es muy difícil.


miércoles, 11 de abril de 2012

Recopilación de 3 Cantos

Cuando los políticos se suben el sueldo porque ellos lo valen y porque pueden hacerlo pasan estas cosas:

Capítulo 1 - "Es que fulanito cobra más :( "


Capítulo 2 - "A mi me da igual lo que diga la gente :( "

viernes, 6 de abril de 2012

Goldman Sachs o cómo invertir en el hambre en el mundo


No puedo soportar ni comprender a esta gente...¿Hay algún test de psicópata para entrar en Goldman Sachs?

"En 1991, los cerebros de Goldman Sachs repletos de ideas jugosas para las gentes de la bolsa, crearon un instrumento financiero que permite a cualquier pájaro invertir sus riquezas en productos básicos como el trigo, arroz o café. "

"Tantas apuestas sobre la ruleta de los mercados de los granos básicos son las responsables de la subida de precios de éstos, y por tanto, responsables de que millones de personas no puedan adquirir sus alimentos necesarios."

Los fragmentos son de este artículo.

jueves, 5 de abril de 2012

Herbicida de Monsanto puede provocar cambios morfológicos en animales vertebrados(menéame)

Rick Relyea, profesor de biología en la Universidad de Pittsburgh, aporta una nueva prueba al demostrar que altas concentraciones de uno de los herbicidas más utilizados de Monsanto, el llamado Roundup, en un entorno determinado, pueden alterar la estructura morfológica de animales vertebrados. El investigador llenó varios tanques con agua y componentes naturales propios de un hábitat pantanoso, metiendo en algunos de ellos depredadores enjaulados que secretan químicos capaces de inducir cambios en la morfología de ciertos renacuajos...

http://www.meneame.net/story/herbicida-monsanto-puede-provocar-cambios-morfologicos-animales

Cómo consiguieron los holandeses sus carriles bici

Cómo consiguieron los holandeses sus carriles bici from Vicente Hernández Herrador on Vimeo.

lunes, 26 de marzo de 2012

Nuestras prioridades...

Arcadi Oliveres: “Hemos dado a la banca 4.600.000.000.000 $, suficiente para acabar con el hambre 92 veces”(enlace)

jueves, 22 de marzo de 2012

El conflicto del Sahara en comic :)

Gracias a un gran artista como es Mauro Entrialgo, lo podéis descargar aquí.

Cómo el mismo dice:

"Estos archivos no solo se pueden compartir con quien os apetezca, sino que además os agradecería que los enlazaseis y colgaseis donde creáis oportuno para que el tebeo pueda llegar al máximo número de personas. Si hacéis esto último, eso sí, lo suyo es que junto al enlace de su descarga enlacéis también en algún lado esta licencia creative commons que tiene el tebeo. "


miércoles, 21 de marzo de 2012

La mejor entrada sobre el coltan y foxconn que he visto nunca

La entrada(que se encuentra aquí) la ha hecho un lector de uno de los mejores blogs sobre el mundo android que conozco, el androide libre; esta no solo recopila la obligada explicación de sucesos sino que también aporta nombres de compañías implicadas en coltán:

"se estima que tan solo Samsung, Sony, y LG, tienen políticas de compra de Coltan “limpio de sangre”, aunque dicho compromiso está sujeto a las oscilaciones y necesidades del mercado."

y en FOXCONN:

"lista de fabricantes que subcontratan los serviciosde FOXCONN y a hacer un breve resumen o presentación de la empresa:
-ACER, AMAZON, APPLE, CISCO, DELL, HEWLETT-PACKARD, INTEL, MICROSOFT, MOTOROLA MOBILITY, NINTENDO. NOKIA, SAMSUNG ELECTRONICS, SONY, TOSHIBA, VIZIO."

¿Donaciones por clicks?

Además de la página que he descubierto hace poco en la que donan 10 gramos de arroz por cada respuesta correcta, acabo de descubrir 2 páginas más que me han gustado mucho, básicamente a cambio de un click que te mostrará publicidad sus sponsors donan para remediar un problema determinado:

En the hunger site sus sponsors donarán tazas de comida, asistencia sanitaria para niños, cáncer de mama, autismo..dependiendo de dónde pinches..

En Care2 puedes clickar/donar para diferentes cosas:

         Para niños necesitados.
         Contra el cáncer de mama.
         Contra la violencia hacia la mujer.
         Para salvar la selva.
         Para salvar los océanos.
         Para salvar los bebés foca.
         Para salvar los grandes felinos.
         Para proteger a los lobos amenazados.
         Contra el calentamiento global.
         Para alimentar primates rescatados.
         Para alimentar mascotas necesitadas.

Si entras logeandote con facebook ganas puntos que pueden convertirse en más donaciones, como agua limpia o objetos útiles...

P.D: Por curiosidad he hecho esta búsqueda por google y parece que hay bastantes iniciativas de este tipo, me llama la atención este recopilatorio, no funcionan todos los enlaces pero si muchos de ellos.

viernes, 16 de marzo de 2012

No tenemos una sanidad tan cara como la pintan

La sanidad que tenemos en cuanto a gasto por habitante y en porcentaje del PIB es inferior a bastantes países y por cierto ya que estamos, el copago no disminuye el gasto y evidentemente provoca desigualdades sociales en asuntos demasiado importantes.

jueves, 15 de marzo de 2012

¿Un ayuntamiento español en superávit?

Así de claro, un ayuntamiento gestionado por vecinos acaba 2011 con superávit de 5,4 millones de euros, hay otras formas de gobierno y aquí está la prueba.

miércoles, 14 de marzo de 2012

Actualizaciones

Ahora el post se actualiza por temática para los usuarios que lo vean por primera vez y se mantiene la lista de actualizaciones para los lectores habituales, espero que así sea más cómodo para todos.

Actualización:

12. El famoso video de Kony y su polémica...¿Cuántos señores de la guerra hay por África?¿Y por el mundo?

Consejos a baja escala

Es decir que se podrían aplicar directamente sobre los individuos, voy a ir montando esta sección por categorías:

Alimentación:
1.Patatas fritas: cancer y efectos anticonceptivos(y métodos para evitarlo).

Salud:
1. Cómo un hombre salvó su vida gracias a un portal web social como reddit.

martes, 13 de marzo de 2012

Actualizaciones

Tengo planeado* crear otro post actualizable para cosas importantes que pueden mejorar tu vida desde una perspectiva más personal (sin considerar el efecto mariposa). Con cosas como:

Alimentación:
1.Patatas fritas: cancer y efectos anticonceptivos.

Salud:
1. Cómo un hombre salvó su vida gracias a un portal web social como reddit.

Y al mismo tiempo continuar el post de ¿Quieres cambiar el mundo? con acciones aparentemente más directas:

11.Gracias a gominuke he descubierto esta interesante página que te permite organizar proyectos de donación  relacionados con el agua potable.

*post creado.

viernes, 9 de marzo de 2012

¿Quieres cambiar el mundo? - Actualizaciones

Debido a la popularidad del post simplemente avisar que esté se irá actualizando cuando encuentre algo que pueda ayudar a su propósito (cualquier comentario aportando ideas o debatiendo estaría muy bien también)
Seguramente avise de los añadidos en posts como este pero más escuetos para la gente que me tiene en el reader ;)

Actualización:


4.Guerras: (por ejemplo el coltán utilizado en la fabricación de móviles y casi todos los dispositivos electrónicos actuales(los que usen condensadores u otros componentes de coltán))
-------------------------------->Bonus

8. Dona arroz aprendiendo inglés, anatomía, geografía, literatura...aquí :). 10 gramos por cada respuesta correcta.

9. Así lucha Finlandia contra la corrupción(y no lo hace España).

10. ¿Que pasaría si Grecia saliese del euro? ¿Deberían emitirse eurobonos?

miércoles, 7 de marzo de 2012

Procesado digital - AM DSB-SC

La cuación general de una señal con mensaje m(t) multiplicada por una portadora de frecuencia fc sería:

x(t) = Ac*m(t)*cos(2*pi*fc*t)

Si  recibimos x(t) y queremos recuperar el mensaje m(t) sólo tenemos que demodular la señal multiplicándola por "el mismo" coseno(teniendo en cuenta que la señal ahora puede venir con cierto desfase o cambios de frencuencia) y filtrando paso bajo.

Ejemplo en matlab:

t = (1/1000):(1/1000):0.3;    %vector tiempos
portadora = cos(2*pi*1000*t);
mensaje = 2*sin(2*pi*30*t)+ cos(2*pi*50*t);
senal = portadora.*mensaje;
error = 0;
fase = 0;
decos = cos(2*pi*(1000+error)*t+fase); %cos para demodular
senal_demodulada = senal.*decos;
impulso = firpm(50, [0 0.05 0.2 1], [1 1 0 0]);
mensaje_obtenido = 2*filter(impulso,1,senal_demodulada);

Notas: diseño del filtro FIR mejorable, para usar firpm usar Matlab, aún no he encontrado una función similar en octave.

domingo, 4 de marzo de 2012

Filtros - procesado digital 2

Sintaxis de un filtro FIR:

filtro = firpm(coeficientes, limites, amplitud)

Ejemplo explicado, filtro paso banda 20 coeficientes, filtrando frecuencias inferiores a fs/16 y superiores a fs/5 (fs a partir de ahora sera frecuencia de sampling, es decir de muestreo)

Coeficientes: número de coeficientes menos 1 (20-1=19)
Limites:
Se definen entre 0 y 1 siendo 1 la mitad de la tasa de muestreo, entonces como queremos filtrar desde fs/16(0.0625) a fs/5(0.2) hacemos una regla de 3(es decir dividimos por 0.5) y nos queda de 0.125  a 0.4
Amplitud: la amplitud que queremos que pase en cada límite o salto de frecuencia(con 0 no pasa nada y con 1 pasa todo)

filtro= firpm(19, [0 .125 .2 .3 .4 1], [0 0 1 1 0 0]);

Nota: para firpm usar Matlab, aún no he encontrado una función similar en octave.

sábado, 3 de marzo de 2012

Introducción - procesado digital 1

Para la primera entrada de este nuevo tutorial solo pondré como mostrar una señal sinusoidal muestreada cada intervalo Tm usando matlab u octave:

fsin=500;               % frecuencia de la señal en Hz
tiempo=0.05;         % tiempo total
Tm=1/20000;        % tiempo cada cuanto se toma un valor(muestreo)*
%vector de tiempos, desde la primera muestra : sumando muestras : hasta tiempo total:
vt=(Tm:Tm:tiempo);
fase=pi/8;                %añadimos una fase inicial
x=sin(2*pi*fsin*vt+fase);   %definimos una señal sinusoidal con los parámetros anteriores
plot(vt,x,'.');             %mostramos por pantalla la señal con respecto a los valores del vector tiempo
xlabel('tiempo');       % Nombramos al eje x como eje de "tiempo"
ylabel('amplitud');    % Nombramos al eje y como eje de "Amplitud"

*La frecuencia de muestreo(es decir 1/Tm) tiene que cumplir el teorema del muestro de Nyquist para que la señal original pueda ser recuperada de la señal muestreada, para eso tiene que cumplir la siguiente ecuación:

frecuencia de muestreo > 2*frecuencia máxima de la señal original

Nota: Los '%' indican que empieza un comentario.


viernes, 2 de marzo de 2012

La falacia de ¿Y que le voy a hacer yo?


Recopilación de consejos para el ciudadano corriente encaminados a evitar las frustraciones que se dan día a día en el mundo que nos ha tocado vivir y que apoyamos inconscientemente(se admite debate).
Actualizado a 6 de mayo del 2012 (ver abajo para lista de actualizaciones).

Por temática:

Política:
1. Acaban de realizarse (fecha original post) las elecciones en España, el gobierno se comporta exactamente como estaba previsto, la gente debería estar contenta, tener manifestaciones justo después de la elección de gobierno es absurdo y recuerdo a los no votantes que si puedes hacer algo bueno y no lo haces, estás haciendo algo malo(y esto es aplicable a muchas cosas más).
2. Así lucha Finlandia contra la corrupción(y no lo hace España).
3. Ayuntamiento gestionado por vecinos acaba 2011 con superávit de 5,4 millones de euros, para que luego digan que no tenemos otras opciones.
4. Cuando los políticos se suben el sueldo porque ellos lo valen y porque pueden hacerlo pasan estas cosas.

Economía:
1. Bancos: que si, que "todo el mundo" odia a los bancos, que son malísimos...y todo el mundo les cede todo su dinero sin molestarse en saber que harán con él, da igual que se dediquen a cobrarte comisiones y tratarte mal y que dediquen tus ahorrillos para financiar empresas de armamento, uranio y fines perversos...la gente en vez de cambiar de banco a uno más correcto, solo se queja a sus amigos como si fuera eso a cambiar algo¿Tan difícil es pensar algo antes de hacerlo?
2. Paro y salarios: este mismo mes (febrero) se han cerrado las últimas fábricas que Nokia tenía en europa para llevar la producción a china(oh, menuda novedad...) vamos a ver en detalle la situación:
2.1)El feliz trabajador europeo fabrica móviles por 200 euros, trabaja un número decente de horas y cobra un sueldo digno...si la gente se lo permite(2.3)
2.2)Un chino trabajando en condiciones de esclavitud hace ese mismo móvil por 20 euros
2.3)El ciudadano de a pie tiene que decidir que móvil desea comprar, habitualmente compra el de 20 euros.
2.4)Si la empresa no puede bajar sueldos para competir con el chino, es decir si no puede esclavizar a los europeos, tendrá que despedirlos, así que aquí tenemos el paro.
2.5)Y los gobiernos están tomando las medidas necesarias, que son evidentemente permitir bajar los salarios.
3. ¿Que pasaría si Grecia saliese del euro? ¿Deberían emitirse eurobonos?
4. Suecia - un ejemplo de como superar la crisis.

Hambre y guerras:
1. Relacionado directamente con política, lo que votas o no votas, desde lo más local a lo nacional o supranacional(UE), decide el destino de millones de habitantes de toda la tierra, y mientras la gente no aprenda a elegir bien tienes la opción (por ejemplo) de donar cantidades para ti irrisorias que puedan salvar vidas o evitar comprar productos que utilicen minerales extraídos en países en conflicto armado(por ejemplo el coltán utilizado en la fabricación de móviles y casi todos los dispositivos electrónicos actuales(los que usen condensadores u otros componentes de coltán/tantalio))
2. El famoso video de Kony y su polémica...¿Cuántos señores de la guerra hay por África?¿Y por el mundo?
3. El mejor post sobre el gran problema del coltán y las compañías involucradas en Foxconn con nombres de compañías implicadas.
4. ARCADI OLIVERES: “HEMOS DADO A LA BANCA 4.600.000.000.000 $, SUFICIENTE PARA ACABAR CON EL HAMBRE 92 VECES”(enlace).
5. Goldman Sachs o cómo invertir en el hambre en el mundo.
6. Video-resumen de especulación con la comida y el hambre(breve pero intenso).

Salud :
1. Ha aumentado el número de fumadores  con respecto a las últimas estadísticas, no lo puedo entender,  la gente tiene menos dinero y aún así quieren dar más prioridad a un gasto que empeora su calidad de vida, que alguien me lo explique.
2. Por mi experiencia, la gente no suele saber lo que sale de un tubo de escape, aún con catalizador.
3. La gente no suele saber que desperdicia constantemente cantidades ingentes de procesado de sus ordenadores que podrían ayudar a curar decenas de enfermedades en el mundo(cancer, sida etc), utilizar ese programa como fondo de pantalla es extremadamente fácil y si hay dudas para algo tengo habilitados los comentarios ;).
4.La sanidad que tenemos en cuanto a gasto por habitante y en porcentaje del PIB es inferior a bastantes países y por cierto ya que estamos, el copago no disminuye el gasto y evidentemente provoca desigualdades sociales en asuntos demasiado importantes.
5.Cómo consiguieron los holandases sus carriles bici y sus consecuencias.
6. Herbicida de Monsanto puede provocar cambios morfológicos en animales vertebrados(menéame)
7. Minijuego basado en encontrar infecciones de malaria sobre pacientes reales, es decir estás ayudando a que médicos se ahorren tiempo de observación que puede hacer cualquier persona y dediquen sus esfuerzos a lo que no cualquier persona puede, es decir curar.

Solidaridad :
1. Siempre hay cosas fáciles para hacer que pueden cambiar la vida de alguien o mejorar la vida de todos, desde donar tapones de plástico que te recoge seur gratis para salvar la vida de una chica, hasta ir a tu ayuntamiento y preguntar por actividades de voluntariado, al menos en el mio tienen una oficina oficial y por experiencia son encantadores :).
2. Dona arroz aprendiendo inglés, anatomía, geografía, literatura...aquí :). 10 gramos por cada respuesta correcta.
3 .Gracias a gominuke he descubierto esta interesante página que te permite organizar proyectos de donación  relacionados con el agua potable.
4.Donando con clicks, viendo anuncios de sponsors que pagan comida que salva vidas, salvan bosques....

Información y noticias :
1.Suele pasar que los meneantes creen estar viviendo en otro mundo paralelo(sobretodo en épocas de elecciones) y en cierta manera es así, casi toda la población basa su conocimiento de lo que pasa en el mundo en medios tradicionales que personalmente y generalizando, carecen de objetividad. Así que este apartado es para recomendar a la gente que aumente sus fuentes de información, es más recomiendo ver las tradicionales y contrastar medios de diferentes ideologías pero al mismo tiempo aprovechar lo mejor de internet. Y una de tantas buenas páginas para ello es (para quien aún no la conozca) menéame.

Nota aclaratoria: Lo aquí expuesto son opiniones personales y generalizo lo que considero necesario para hacer el discurso más ameno.

Editado: comentario interesante en menéame aquí.

-------->Actualizaciones con respecto al post original por orden:

8. Dona arroz aprendiendo inglés, anatomía, geografía, literatura...aquí :). 10 gramos por cada respuesta correcta.

9. Así lucha Finlandia contra la corrupción(y no lo hace España).

10. ¿Que pasaría si Grecia saliese del euro? ¿Deberían emitirse eurobonos?

11. Gracias a gominuke he descubierto esta interesante página que te permite organizar proyectos de donación  relacionados con el agua potable.

12. El famoso video de Kony y su polémica...cuantos señores de la guerra hay por África?¿Y por el mundo?

13. Ayuntamiento gestionado por vecinos acaba 2011 con superávit de 5,4 millones de euros, hay otras formas de gobierno y aquí está la prueba.

14. La sanidad que tenemos en cuanto a gasto por habitante y en porcentaje del PIB es inferior a bastantes países y por cierto ya que estamos, el copago no disminuye el gasto y evidentemente provoca desigualdades sociales en asuntos demasiado importantes.

15. Donando con clicks, viendo anuncios de sponsors que pagan comida que salva vidas, salvan bosques....

16. El mejor post sobre el gran problema del coltán y las compañías involucradas en Foxconn con nombres de compañías implicadas.

17. ARCADI OLIVERES: “HEMOS DADO A LA BANCA 4.600.000.000.000 $, SUFICIENTE PARA ACABAR CON EL HAMBRE 92 VECES”(enlace).

18. Cómo consiguieron los holandases sus carriles bici y sus consecuencias.

19. Herbicida de Monsanto puede provocar cambios morfológicos en animales vertebrados(menéame)

20. Goldman Sachs o cómo invertir en el hambre en el mundo.

21. Cuando los políticos se suben el sueldo porque ellos lo valen y porque pueden hacerlo pasan estas cosas.

22.  Minijuego basado en encontrar infecciones de malaria sobre pacientes reales, es decir estás ayudando a que médicos se ahorren tiempo de observación que puede hacer cualquier persona y dediquen sus esfuerzos a lo que no cualquier persona puede, es decir curar.

23. Suecia - un ejemplo de como superar la crisis.

24. Video-resumen de especulación con la comida y el hambre(breve pero intenso).

martes, 28 de febrero de 2012

Cómo crear accesos directos en LXDE

En LXDE se incluye la herramienta lxshortcut pero personalmente no la veo demasiado intuitiva, ejemplo para acceso directo a carpeta:

1- Inicio/accesorios/Terminal(la que usemos).
2- Vamos a la carpeta donde queramos crear el acceso directo.
3- lxshortcut -o new
4- Nombre que quieras, icono que quieras
5-En comando escribimos:

pcmanfm /home/dirección/decarpeta/quequeramos/

Si queremos hacer un acceso directo a un programa solo tendremos que llamarlo por su orden,
"pcmanfm" es el gestor de archivos que viene con LXDE.

domingo, 26 de febrero de 2012

Instalando debian con imagen pequeña

AVISO: Nuevo tutorial para debian 7, más sencillo aquí.

Pasos que he seguido para llegar a un bonito escritorio gráfico LXDE desde virtualbox (virtualizando con 512mb de ram y disco duro de 3 gb):

1) Bajamos la imagen de 180 MB
2) La grabamos en CD o creamos un USB bootable.
3) Seleccionamos instalación gráfica, configuramos los parámetros(en mi caso marqué entorno gráfico, portátil y herramientas del sistema).(si se quiere algo muy rapido y ligero mejor desmarcar todo y luego instalar lo que se use, editado instalando debian 7 )
4) Cuando acabe de instalar reiniciamos y elegimos la primera opción.*
5) Nos cargará en modo terminal, iniciamos sesión(yo lo he hecho con root, si no lo haceis así recordad para el resto del tutorial que hay que dar permisos de superusuario 'su').
6) Añadimos los repositorios:

deb http://ftp.es.debian.org/debian/ stable main contrib non-free
deb-src http://ftp.es.debian.org/debian/ stable main contrib non-free

en '/etc/apt/sources.list'

Para editar el archivo podemos utilizar "nano":

'nano /etc/apt/sources.list'

Añadimos las 2 líneas, "control+o" para guardar, enter para aceptar y "control+x" para salir

7)
apt-get install lxde

8)
apt-get update
apt-get upgrade
apt-get dist-upgrade
apt-get install x-window-system
startx
apt-get install icewm
apt-get install xdm

Y así tengo el debian funcionando(con un tiempo de arranque de 7-8 segundos de grub a escritorio), de momento aún no lo he configurado para que el "startx" sea automático. Actualización: arranca entorno gráfico automáticamente así como hice.

*Fallo de GRUB, a mi, por motivos de espacio supongo, no me ha permitido instalar la grub durante la instalación, así que en medio de la instalación le dije "continuar sin arranque", entonces para continuar he usado el CD de supergrub2 y más tarde desde debian he instalado grub2 con 'aptitude install grub2'.

Video cutrísimo del resultado:


sábado, 25 de febrero de 2012

Un breve comentario sobre Ubuntu

Puede que alguna gente que me conozca se pregunte como puede ser que hable tan poco de Linux, por no decir que no he hecho ningún post centrado en este sistema operativo...Es cierto que ahora no lo uso tanto como antes* y esto se debe principalmente a que me he vuelto ligeramente(ligeramente ja!) gamer... Y no, el wine no me convence completamente (y he llegado a instalar y jugar al C&C3 en wine...)

Bueno a lo que iba: "Ubuntu me ha defraudado"

-No solo yo, sino muchísima gente ha tenido que gastar al menos 15 min de su vida en quitar Unity.
-Cada versión desde la 10.10 es más pesada, tarda más en arrancar y en funcionar. Puedes meterle XFCE o LXDE para aligerarlo, pero pierdes bastantes opciones...(aunque si lo usas básicamente para navegar LXDE es genial).
-Siguen viniendo con firefox de serie, y la próxima parece que también... creo que una opción neutral sería preguntarte que quieres...una ventanita con opciones a "sudo apt-get install 'navegador' ". Si no tienes internet para seleccionar un navegador e instalarlo será que no te corre prisa tener un navegador.

Si no arreglan esos 3 puntos, la próxima vez que instale un Linux será Debian o Arch, los 2 me dejan configurar que paquetes quiero (Debian se puede instalar desde 40 mb) y de momento parece que en cada actualización van mejor(como debería ser).

*Sin contar mi "no-teléfono" android

Pdfs, eficiencia y virus

Opinión personal por supuesto...Acabo de enterarme de que el famoso virus que simula ser la policía entra por un exploit de adobe reader y se me ha ocurrido hacer este post:

1)Suelo ver cada poco tiempo numerosas infecciones por adobe reader, probad a buscar en google "adobe reader virus".
2)El adobe reader, no sé si solo me pasa a mi, o es horriblemente pesado, me tardaba horrores en arrancar(con respecto a otras opciones).
3)Es decir hace tiempo que simplemente no uso adobe reader.
4)Hay montones de programas alternativos especializados en pdf, más rápidos y seguros.
5)Una opción personal en Windows, es abrir todos los pdfs con el Chrome por defecto, que no es lo mismo, porque creo que no deja rellenar formularios o cargar completamente todos los documentos pero a mi me vale.
6)Otra opción es no usar Windows, cuando estoy en Linux suelo usar el primer lector que encuentro.

miércoles, 22 de febrero de 2012

No me grites antivirus!!!

Como ser feliz cada vez que "la base actual de virus ha sido actualizada" en el avast:

1. Entramos en el avast.
2. Opciones(arriba a la derecha)
3. Sonidos -> desmarcar utilizar voz en off

Disfruta de cada actualización.

martes, 21 de febrero de 2012

Conectar PC a LG M2262D por HDMI(ati)

Hago este tutorial simplemente porque me sorprende la dificultad del proceso que no sé si es el oficial pero es el que se me ocurrió a mi para ver ligeramente mejor la pantalla, ya que por defecto se veía borrosa.

En la tele(mando):

1. Menú.
2. Opción
3. Entrada
4. Elegimos el hdmi que utilicemos
5. Le decimos que por ese hdmi entra señal de PC

En el PC(windows 7):

1. Bajamos los drivers de la pantalla.*(ver nota 3, editado: ir al punto 3.1)
2. Los instalamos:
2.1. Descomprimimos el ZIP
2.2. Click derecho sobre el archivo ICC e "instalar el perfil"
2.3. Click derecho en el escritorio, resolución de pantalla, click derecho en el monitor LG,
       propiedades.
2.4. Pestaña monitor, Propiedades, pestaña controlador, actualizar controlador, buscar software
       de controlador en el equipo, elegir en una lista de controladores de dispositivo en el equipo,
       usar disco, examinar, ir a la carpeta donde descomprimimos el zip, elegir el único archivo
       que nos deja(el .inf), aceptar, nos saldrán 2 opciones de monitor, yo elegí digital, doble
       click y ya se instaló.
3. La tele se ve mejor pero la imagen no se extiende por toda la pantalla así que:
3.1. Click derecho escritorio, resolución de pantalla,  click derecho monitor LG, propiedades
       pestaña AMD VISION engine control center, lo abrimos, pestaña de mis paneles planos
       digitales opciones de escalada, elegimos la que se adapte mejor a la pantalla y aplicar.

Notas:
1. Antes de descubrir este proceso me di cuenta de que tenía el monitor configurado a 59 Hz y lo subí a 60 Hz, esto no se si es bueno, es decir no estoy seguro de que el monitor esté preparado para aguantar 60 Hz porque me extraña que por defecto se ponga a 59 Hz "como forzando la cosa". No solo es que no aguante el monitor sino que la frecuencia afecta directamente al espectador, es decir si la frecuencia no es la correcta  pueden aparecer fenómenos de parpadeo por ejemplo y puedes cansar al cerebro, de ahí los típicos mareos que tiene alguna gente con el cine en 3D,  yo no soy ningún experto en el tema así que no me hago responsable de la frecuencia que utilicéis.
2. En "mis paneles planos digitales" hay otra opción debajo de escalada, soporte de HDTV que a lo mejor es más correcto y no hace falta lo anterior, pero no lo he probado desde que he configurado la tele de esta forma.
3. Con los drivers instalados aparentemente no he notado ningún cambio en la imagen, pero me da confianza que aparezca el monitor reconocido por el sistema. El cambio grande lo he notado al poner el modo PC en la tele.

Hago esto por si puedo ayudar alguien que se haya encontrado en mi caso, no me hago responsable de ningún daño que pueda causar este tutorial porque ha sido un proceso de prueba y error y búsqueda por internet en muchos foros incluso en tutoriales de otras marcas de televisión, así que reitero que esto es completamente casero.

Editado: parece ser que el perfil de color oficial no da los colores correctos usando el visualizador de imágenes de windows, aún tengo que probarlo, pero podeis saltar ese paso a ir al punto 3.1

viernes, 10 de febrero de 2012

Comodo Dragon (Chromium) - navegador seguro

Seguramente ya conozcáis el firewall de comodo, pero lo que no es tan conocido (por mi experiencia) es su navegador basado en Chromium que, si ya Chromium/Chrome era el navegador más seguro y más rápido esto le da una vuelta de tuerca más por lo menos al primer apartado. El Comodo Dragon, que es el nombre que le han puesto tiene las siguientes características:

-Privacidad mejorada sobre Chromium
-Identificación con certificados SSL
-Rápido acceso a la web
-Mayor estabilidad y menor consumo de memoria
-El modo incógnito detiene las cookies, mejora la privacidad
-Opción a no permitir a sitios web saber de dónde eres.
-Opción a filtrar malware utilizando las DNS seguras de comodo


Y ya que estamos, ha salido Chrome para android ice cream sandwich, debería salir en el market a quien use esa versión(no es mi caso u__u )

Cómo arrancar Windows más rápido

Opción 1, controlar que programas se ejecutan al iniciar windows:

1)Inicio.
2)Escribimos "msconfig" y pulsamos enter.
3)Vamos a la pestaña "Inicio de Windows" y desmarcamos lo que no queramos.

Opción 2, limpiar el registro:*

1)Bajamos el CCleaner y lo instalamos
2)Pestaña registro, buscar problemas
3)Reparar seleccionados haciendo antes una copia de seguridad


Opción 3, si va lento el equipo en general pasa a fondo el antivirus:

1)Reiniciar el equipo
2)Pulsar F8 antes de que empiece a iniciar windows
3)Elegir modo seguro
4)Pasar desde ahí algún antivirus, ejemplos gratuitos.
5)Cualquier otro problema recomiendo encarecidamente forospyware

*el CCleaner puede destrozar el registro, hacer que programas no vuelvan  a arrancar y problemas varios, úsalo bajo tu responsabilidad.

Tutoriales Windows

Recopilatorio de tutoriales(o consejos, comentarios...) relacionados con windows:

Cómo compartir carpetas entre Windows 7 y windows Vista
Cómo arrancar Windows más rápido
Comodo Dragon (Chromium) - navegador seguro
Conectar PC a M2262D por HDMI(ati)
Quitar los gritos del avast(La base actual...)
Pdfs, eficiencia y virus

Tutorial de Java

Recopilatorio de los capítulos del tutorial:


Tutorial Java 8 - Sockets
Tutorial Java 7 - Recursividad
Tutorial Java 6 - Herencia
Tutorial Java 5 - Collections
Tutorial Java 4 - Lista enlazada
Tutorial Java 3 - Ficheros
Tutorial Java 2 - Objetos
Tutorial Java 1 - Primer programa

jueves, 9 de febrero de 2012

Aviso navegantes(ba dum tss)

Estos días he estado un poco liado pero este proyecto sigue adelante, tengo planeados algunos cambios que harán más rápida la navegación por los contenidos del blog, pero en principio no pienso tocar la parte gráfica de la plantilla, ya se que es muy sosa  pero a mi personalmente me encanta su peso y su facilidad de carga.
Mejor explicado en acerca de este blog.

martes, 7 de febrero de 2012

Actuable - ayudando en pocos clicks


La%20mami%20y%20su%20ni%c3%b1a%201
Han actuado 0 personas
Nos faltan 0 firmas

Actúa ahora

Tu nombre
Tu apellido
Tu correo-e
Cód. Postal

domingo, 29 de enero de 2012

Tutorial Java 8 - Sockets

En este capítulo intentaré mostrar el uso de sockets con un programa muy sencillo pero a la vez muy...cutre, podría escribirlo más bonito pero no más claro:

Clase servidor.java:

import java.io.*;
import java.net.*;

public class servidor {

public static void main(String[] args) throws IOException { /*mejor con try & catch */
ServerSocket puerto = null; //inicializamos
Socket canal = null;
InputStream buffer_in; /* creamos un buffer de datos para el canal de entrada*/
DataInputStream contenedor_flujo; /*creamos un sitio donde guardar el contenedor que nos envian, aviso según el eclipse de esta forma es no necesariamente seguro para acceso multithread*/
puerto = new ServerSocket(11000);  /*por donde recibimos los datos*/
canal = puerto.accept();/*escucha conexiones en ese puerto y las acepta*/
buffer_in = canal.getInputStream();/*trae un flujo de datos desde nuestro socket*/
contenedor_flujo = new DataInputStream(buffer_in); /*guardamos ese flujo de datos en el contenedor*/
String string = new String(contenedor_flujo.readUTF());/*obtiene cadena de la información del contenedor que está codificada en UTF-8 modificado*/
System.out.print(string); /*imprimimos la cadena*/
contenedor_flujo.close();/*cerramos el contenedor*/
buffer_in.close();/*cerramos el buffer*/
canal.close();/*cerramos el canal*/
}
}


Clase cliente.java (como veis es similar en muchos aspectos) :

import java.io.*;
import java.net.*;


public class cliente {

public static void main(String[] args) throws IOException {
Socket canal = null;
OutputStream buffer_out;
DataOutputStream contenedor;
canal = new Socket("127.0.0.1", 11000);/*indicamos a que ip y puerto enviamos,en este caso la ip localhost(nuestro equipo)*/
buffer_out = canal.getOutputStream();
contenedor = new DataOutputStream(buffer_out);
String info_a_enviar = "Enviamos información\n";
contenedor.writeUTF(info_a_enviar);/*escribe la información en UTF-8 modificado*/
contenedor.close();
buffer_out.close();
canal.close();
}
}

miércoles, 25 de enero de 2012

Cómo compartir carpetas entre Windows 7 y windows Vista

Si has buscado esto en google supongo que quieres evitar que desde vista te pida una cuenta y contraseña para entrar en la carpeta alojada en el equipo con windows 7, para eso puedes compartirla siguiendo estos pasos (todo desde el equipo con windows 7):

1. Panel de control
2. Redes e internet
3. Elegir grupo en el hogar y opciones de uso compartido
4. Cambiar configuración de uso compartido avanzado
5. Desactivar el uso compartido con protección por contraseña

Guardamos cambios, luego sobre la carpeta que queremos compartir:

1. Click derecho
2. Propiedades
3. Uso compartido avanzado
4. Compartir esta carpeta
5. Configuramos los permisos

Aceptar guardar y listo.

Nota: Ambos equipos deben formar parte del mismo grupo de trabajo.


martes, 24 de enero de 2012

Tutorial Java 7 - Recursividad

La recursividad consiste en llamar a un método desde el mismo método creando de esta forma estructuras de control útiles, ejemplo:

Calcular la suma de un número más sus naturales anteriores:

import java.util.Scanner; 

public class recursividad {

public static void main(String[] args) {

    Scanner entrada = new Scanner(System.in);
    System.out.print("Introduzca un número: ");
    int num = entrada.nextInt();
    System.out.println("La suma de naturales igual y menores a " + num + " es " + suma(num));
  }

  public static long suma(int num) {
    if (num == 0) 
      return 0;
    else
      return num + suma(num - 1);  /*entramos en la clase pero con el número anterior*/
  }
}

Tutorial Java 6 - Herencia

La herencia en java consiste en crear clases(hijo) que hereden atributos de otra clase(padre), es decir, disponer en la nueva clase de las variables y métodos del padre sin tener que repetirlos, para implementar esto usaremos la clase ordenador de cualquiera de los anteriores tutoriales y crearemos estas clases:

Empezamos por la clase hijo(herencia.java), que es la que tiene las novedades:

public class herencia extends ordenador {
/*extends ordenador indica que hereda los atributos de la clase ordenador.java*/
String Sistema_operativo;
/*Añadimos por ejemplo esta neueva variable, para que esta clase sea más específica*/
public herencia(String proce, String gra, int frec, int me, String SO)
/*Constructor similar al de ordenador pero ampliado*/
{
super(proce, gra, frec, me);
/* super sirve para utilizar las variables de la clase padre, es decir las usamos(llenamos) desde aqui*/
Sistema_operativo = SO;
}
/* Añadimos get y set para la nueva variable */
public String getSistema_operativo() {
return Sistema_operativo;
}
public void setSistema_operativo(String sistema_operativo) {
Sistema_operativo = sistema_operativo;
}
}

Y continuamos con la clase principal(programa1.java):

import java.util.Scanner;
public class programa1 {

public static void main(String[] args) {
herencia software;
software = new herencia("string", "string", 0, 0, "String"); 

/*inicializamos las variables*/
/*y el resto de código es similar al del tutorial de objetos*/

Scanner entrada = new Scanner(System.in);
System.out.println("Introduzca tipo de procesador o escriba salir:");
String procesador = entrada.nextLine();
System.out.println("Introduzca frecuencia en GHz:");
int frecuencia = entrada.nextInt();
System.out.println("Introduzca tipo de gráfica:");
entrada.next();
String grafica = entrada.nextLine();
System.out.println("Introduzca cantidad de memoria en Mb:");
int memoria = entrada.nextInt();
System.out.println("Introduzca sistema operativo:");
entrada.nextLine();
String so = entrada.nextLine();

System.out.println("Usa el siguiente sistema operativo1:" + so);

software.setProcesador(procesador);
software.setFrecuencia(frecuencia);
software.setGrafica(grafica);
software.setMemoria(memoria);
software.setSistema_operativo(so);

System.out.println("Tiene un procesador de tipo " + software.getProcesador() + " a " + software.getFrecuencia() + " GHz");
System.out.println("Tiene una gráfica de tipo " + software.getGrafica() + "con " + software.getMemoria() + " Mb");
System.out.println("Usa el siguiente sistema operativo: " + software.getSistema_operativo());
}

}


domingo, 22 de enero de 2012

Tutorial Java 5 - Collections

Collections es una interfaz que nos permitirá ordenar la lista con respecto a los parámetros que queramos.
Ejemplo comentado de como ordenar con Collections, usamos de base las clases del tutorial 4:

En la clase ordenador añadimos:

public class ordenador implements Comparable<ordenador>{ }
cambiamos int por Integer:
private Integer frecuencia, memoria;
Y escribimos el método señalando lo que vamos a comparar:

public int compareTo(ordenador o) {
return (frecuencia.compareTo(((ordenador) o).frecuencia));
}


En la clase programa1 añadimos:
import java.util.Collections;
Y después del bucle While, para que al terminar la lista la ordene con nuestro método:
Collections.sort(ordenadores);


Ahora al presentar los ordenadores los pondrá en orden ascendente de frecuencias.

Códigos completos:

Clase programa1:

import java.util.Collections;
import java.util.LinkedList;
import java.util.Scanner;
public class programa1 {

static private LinkedList<ordenador> ordenadores = new LinkedList<ordenador>();
public static void main(String[] args) {

ordenador cpu;
cpu = new ordenador("string", "string", 0, 0);

String procesador="procesador";
String salir = "salir";
while(!(procesador.equals(salir)))
{
Scanner entrada = new Scanner(System.in);
System.out.println("Introduzca tipo de procesador o escriba salir:");
procesador = entrada.nextLine();
if (procesador.equals(salir)) break;
System.out.println("Introduzca frecuencia en GHz:");
int frecuencia = entrada.nextInt();
System.out.println("Introduzca tipo de gráfica:");
entrada.next();
String grafica = entrada.nextLine();
System.out.println("Introduzca cantidad de memoria en Mb:");
int memoria = entrada.nextInt();

ordenadores.add(new ordenador(procesador, grafica, frecuencia, memoria));
}
Collections.sort(ordenadores);

for (ordenador o : ordenadores) //recorremos los objetos "o" de tipo ordenador de la lista ordenadores
{
System.out.println("Tiene un procesador de tipo " + o.getProcesador() + " a " + o.getFrecuencia() + " GHz");
System.out.println("Tiene una gráfica de tipo " + o.getGrafica() + "con " + o.getMemoria() + " Mb");
}
}
}

Clase ordenador:


public class ordenador implements Comparable<ordenador> {
private String procesador, grafica;
private Integer frecuencia, memoria;

public ordenador(String proce, String gra, int frec, int me)
{
procesador=proce;
grafica=gra;
frecuencia=frec;
memoria=me;
}

public String getProcesador() {
return procesador;
}

public void setProcesador(String procesador) {
this.procesador = procesador;
}

public String getGrafica() {
return grafica;
}

public void setGrafica(String grafica) {
this.grafica = grafica;
}

public int getFrecuencia() {
return frecuencia;
}

public void setFrecuencia(int frecuencia) {
this.frecuencia = frecuencia;
}

public int getMemoria() {
return memoria;
}

public void setMemoria(int memoria) {
this.memoria = memoria;
}

public int compareTo(ordenador o) {
return (frecuencia.compareTo(((ordenador) o).frecuencia));
}

}


Opcional en orden descendente con comparator:
Añadimos en la clase principal:
import java.util.Comparator; 
Si queremos que sea en orden descendente cambiamos el collections.sort por este:
Collections.sort(ordenadores,new ordenar());
 y creamos la clase ordenar en la clase principal:
class ordenar implements Comparator<ordenador> {
public int compare(ordenador o_1, ordenador o_2) {
return (-(o_1.compareTo(o_2)));
}
}

sábado, 21 de enero de 2012

Tutorial Java 4 - Lista enlazada

Una lista enlazada (LinkedList) nos permitirá tener una lista de objetos que podremos recorrer cómodamente para luego mostrarlas, facilitando además tareas de ordenación, en este capítulo simplemente crearemos una lista enlazada, añadiremos objetos y luego mostraremos su contenido:
Usando la misma clase ordenador del tutorial 2, y haciendo unas pequeñas modificaciones en la clase principal:


import java.util.LinkedList;  //importamos la librería correspondiente
import java.util.Scanner;
public class programa1 {
static private LinkedList<ordenador> ordenadores = new LinkedList<ordenador>(); /*Creamos la lista enlazada LinkedList<nombre_de_la_clase> nombre_de_la_lista = new LinkedList<nombre_de_la_clase>*/
public static void main(String[] args) {

ordenador cpu;  
cpu = new ordenador("string", "string", 0, 0);

String procesador="procesador";
String salir = "salir";
while(!(procesador.equals(salir))) //bucle para añadir ordenadores hasta que queramos salir
{
Scanner entrada = new Scanner(System.in);
System.out.println("Introduzca tipo de procesador o escriba salir:");
procesador = entrada.nextLine();
if (procesador.equals(salir)) break;
System.out.println("Introduzca frecuencia en GHz:");
int frecuencia = entrada.nextInt();
System.out.println("Introduzca tipo de gráfica:");
entrada.next();
String grafica = entrada.nextLine();
System.out.println("Introduzca cantidad de memoria en Mb:");
int memoria = entrada.nextInt();

ordenadores.add(new ordenador(procesador, grafica, frecuencia, memoria)); /*añadimos nuevo objeto con sus propiedades*/
}

for (ordenador o : ordenadores) //recorremos los objetos "o" de tipo ordenador de la lista ordenadores
{
System.out.println("Tiene un procesador de tipo " + o.getProcesador() + " a " + o.getFrecuencia() + " GHz");
System.out.println("Tiene una gráfica de tipo " + o.getGrafica() + "con " + o.getMemoria() + " Mb");

}
}
}


Tutorial Java 3 - Ficheros


Pequeño ejemplo comentado:

/*Añadimos las librerías de ficheros, excepción entrada/salida, escritura y lectura*/
import java.io.File;    
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Scanner;


public class fichero {


public static void main(String[] args) throws IOException { //importante el throws para que no proteste
Scanner entrada = new Scanner(System.in);
System.out.println("Que cadena quiere guardar en el fichero? ");
String cadena = entrada.nextLine();
System.out.println("En que fichero quiere escribir los datos? ");
String fichero = entrada.nextLine();


File fichero_variable = new File(fichero); /*nueva variable de tipo File a la que le asignamos la dirección del fichero*/

if (fichero_variable.exists()) //Comprobamos que el fichero no exista para no sobreescribir
{
System.out.println("Ya existe un fichero con ese nombre");
System.exit(0);
}


PrintWriter salida = new PrintWriter(fichero_variable); //uso similar al Scanner

salida.println(cadena); //destino.escribir(cadena)
salida.close(); //cerramos la salida, obligatorio para que se guarden los cambios


Scanner entrada_fichero = new Scanner(fichero_variable); /*un Scanner cambiando System.in por el fichero nos permite su lectura*/

System.out.println("Dentro del fichero " + fichero + " hay " + entrada_fichero.nextLine());

entrada.close(); //cerramos la entrada
}

}

Edit: repasando el codigo sería entrada_fichero.close()


Tutorial Java 2 - Objetos

Java es un lenguaje de programación orientado a objetos, los objetos podríamos definirlos como paquetes de datos...y de momento llega, porque he dicho que serían tutoriales concisos así que empezaremos con la parte práctica y espero que desde ahí se vaya entendiendo el funcionamiento de los mismos:

Creamos un nuevo proyecto, pero esta vez, aparte de crear una clase principal, crearemos otra más sin la opción "main" marcada y la llamaremos por ejemplo "ordenador".

Código de clase principal:


import java.util.Scanner;
public class programa1 {
public static void main(String[] args) {

ordenador cpu;     /*Creamos una objeto "cpu" de tipo "ordenador" que es nuestra clase nueva,  esto quiere decir que la variable cpu podrá utilizar los métodos de la clase ordenador.*/

cpu = new ordenador("string", "string", 0, 0);  /*cpu será un nuevo objeto de tipo ordenador, además inicializamos sus variables. Esto lo entenderéis mejor cuando veamos la clase ordenador.*/


Scanner entrada = new Scanner(System.in);
System.out.println("Introduzca tipo de procesador:");
String procesador = entrada.nextLine();
System.out.println("Introduzca frecuencia en GHz:");
int frecuencia = entrada.nextInt(); /*Para leer el siguiente entero introducido por teclado.*/
System.out.println("Introduzca tipo de gráfica:");
entrada.next(); /*Para mover el puntero de Scanner y que lea la siguiente instrucción correctamente.*/
String grafica = entrada.nextLine();
System.out.println("Introduzca cantidad de memoria en Mb:");
int memoria = entrada.nextInt();

cpu.setProcesador(procesador); //mandamos el procesador al objeto cpu.
cpu.setFrecuencia(frecuencia); //mandamos la frecuencia al objeto cpu.
cpu.setGrafica(grafica); //mandamos la gráfica al objeto cpu.
cpu.setMemoria(memoria); //mandamos la memoria al objeto cpu.


System.out.println("Tiene un procesador de tipo " + cpu.getProcesador() + " a " + cpu.getFrecuencia() + " GHz");
System.out.println("Tiene una gráfica de tipo " + cpu.getGrafica() + "con " + cpu.getMemoria() + " Mb"); //Si en vez de usar set, usamos get, recibiremos la información
}

}

Clase ordenador:


public class ordenador {

private String procesador, grafica; //Cadenas "private" solo accesibles desde los métodos de esta clase
private int frecuencia, memoria;

public ordenador(String proce, String gra, int frec, int me) /*Constructor del objeto, indicamos las variables que llegarán desde la clase principal.*/
{
procesador=proce;  //Guardamos las variables en la clase.
grafica=gra;
frecuencia=frec;
memoria=me;
}
}

Y ahora para crear los métodos de "get" y "set" podemos hacer lo siguiente:  ir a "Source" y "Generate Getters and Setters" y marcamos todas las variables con las que querremos manejarnos desde la clase principal, y le damos a "ok", el clipse automaticamente nos generará el resto del código y en total nos debería quedar esto:

Clase ordenador:


public class ordenador {

private String procesador, grafica;
private int frecuencia, memoria;

public ordenador(String proce, String gra, int frec, int me)
{
procesador=proce;
grafica=gra;
frecuencia=frec;
memoria=me;
}

public String getProcesador() {
return procesador;  //devuelve la variable procesador a la clase principal
}

public void setProcesador(String procesador) {
this.procesador = procesador; /*this indica cual es el procesador de la clase, el que queremos "rellenar".*/
}

public String getGrafica() {
return grafica;
}

public void setGrafica(String grafica) {
this.grafica = grafica;
}

public int getFrecuencia() {
return frecuencia;
}

public void setFrecuencia(int frecuencia) {
this.frecuencia = frecuencia;
}

public int getMemoria() {
return memoria;
}

public void setMemoria(int memoria) {
this.memoria = memoria;
}

}



Ahora guardais ambas clases y podeis darle a "Run"





viernes, 20 de enero de 2012

Cosas que puedes hacer para cambiar el mundo

1 - Informarte de lo que pasa en él, pero informarte bien. Menéame (Español) Reddit (Inglés).
2 - Donar tapones de plástico.
3 - Aprovechar lo que no uses de cpu para ayudar a investigar contra el cancer y otras enfermedades.
      Por ejemplo en la World Comminty Grid. (Incluso de fondo de pantalla)
4 - Consumir sabiendo la procedencia y las implicaciones de lo que consumes, siendo ecológico, donar a alguna ong, por ejemplo si te sobra saldo del contrato mensual enviarlo en forma de sms... y  en definitiva haciendo todas esas cosas que de tanto repetirlas no parecen importantes, pues lo son.
5 - Pensar.

Tutorial Java 1 - Primer programa

Una presentación quizá no es suficiente para el propósito antes mencionado(conseguir visitas) así que seguramente postee de vez en cuando tutoriales o guías relacionadas con informática, telecomunicaciones y/o ingeniería en general, porque ya que estamos, me parece una forma de contribuir positivamente a internet.

Intentaré que estas guías sean útiles y concisas, así que, empecemos!

Para un primer acercamiento a Java empezaremos por instalar el entorno de desarrollo desde el cual programaremos en este tutorial, el Eclipse (hacer click y descargar la versión correspondiente a vuestro sistema) una vez hecho esto voy a explicar paso a paso como correr vuestro primer programa:

1-Una vez clickeamos nos preguntará que workspace queremos, es decir, donde queremos guardar los proyectos en los que trabajaremos, elegid el directorio que más os guste, pero luego tened en cuenta de estar en el sitio correcto para las siguientes ocasiones.

2-Una vez abierto, clickeamos en "File", "New", "Java Project" y ponemos el nombre que queramos, por ejemplo "programa1".

3-Ahora deberíamos tener una carpeta abierta con ese nombre, es decir, está activa, entonces podemos crear una nueva clase de Java que se asignará a ese proyecto, las clases son los bloques funcionales de Java, los documentos en los cuales escribimos el código. Hacemos "File", "New", "Class"

4-En la nueva ventana, escribimos un nombre para nuestra clase, y marcamos "public static void main(String[] args)"

5-El texto que se encuentra entre "/*  */"  y después de "//" son comentarios, no tienen ninguna validez aparte de explicar el propio código para que el propio usuario lo organice para si mismo o para otras personas.

6-Explicaciones rápidas de lo que tenemos delante(no obligatorio para seguir pero útiles):
public significa que podemos acceder a esa clase(o método) desde otras clases(o métodos).
class es basicamente eso, indica el nombre de la clase(que coincide con el nombre del archivo, si cambiamos eso el programa no funcionará)
public static void main(String[] args) es el método principal del programa, si un programa no tiene este método no funciona, "main" es el nombre del método, "void" indica que, despues de que el método haga lo que tenga que hacer no nos dará ningún resultado hacia afuera del mismo.(no nos devuelve nada) Esto se entenderá mejor cuando tengais mayores conocimientos de programación.

7-En el método es donde "está la miga" donde pasan las cosas, así que escribiremos en él el programa del tutorial 1, añadimos estas líneas:

Scanner entrada = new Scanner(System.in);  //Estamos declarando una variable llamada "entrada" que recogerá información del sistema. Importante! Las mayúsculas se tienen en cuenta al programar, si algo no está exactamente como debe no funcionará.
System.out.println ("Introduce algo"); //Mandamos imprimir por pantalla "Introduce algo"
String cadena = entrada.nextLine(); //Creamos una nueva String(cadena de caracteres) llamada "cadena" y hacemos que la pida por teclado, es decir entrada(para que venga del sistema).nextLine(para que guarde la línea que introduzcamos).
System.out.println("Ha introducido " + cadena); //muestra por pantalla el texto más el contenido del String cadena.

Seguramente os habréis fijado que el Eclipse "se queja" al utilizar Scanner, si es el caso es porque no le habéis dicho donde están "las instrucciones" para utilizarlo, para eso tenéis que importar la librería correspondiente añadiendo al principio del todo de vuestro código "import java.util.Scanner;" si no se queja seguramente es porque ya lo ha hecho automáticamente.

import java.util.Scanner;

public class programa1 {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);
System.out.println ("Introduce algo");
String cadena = entrada.nextLine();
System.out.println("Ha introducido " + cadena);
}
}

8-Ahora solo queda darle a "Run" y probar vuestro programa :)

Notas: el eclipse suele guiar bastante mientras programáis, avisando de ciertos fallos y dándoos opciones para solucionarlos, soy un estudiante y quizá cometa numerosos errores, si encontráis alguno y me avisais estaré muy contento de poder arreglarlo :).



Hello world y esas cosas...

Una de las mil cosas entretenidas que siempre se me pasan por la cabeza mientras estoy en época de exámenes y que justo terminar los exámenes se ocultan a la espera de chinchar en el siguiente momento oportuno es esta: hacer un blog, no es el primero que hago y tengo cierta experiencia, pero siempre que abro uno enseguida me aburro y quedan ahí en la maraña de pseudo-basura de internet, consumiendo unos pocos megabytes y con entropía casi nula...

¿De que voy a hablar? Aún no lo tengo claro... Pero intentaré que sea algo fresco, que sea el típico blog que llegues y aunque sea por su rareza le des una segunda oportunidad, bah ni siquiera se porque me molesto tanto sabiendo que esta primera entrada nadie* la lee..

*Excepto cuando eres conocido y quieren saber como empezaste...y claro, en el fondo espero equivocarme.