jueves, 16 de junio de 2011

Aprender a programar: consejos y recursos iniciados y no tan iniciados


¡Hola, mundo!Cuando buscas una aplicación que lleve a cabo una función determinada y no consigues encontrarla, te enfrentas a un triste hecho: hay programas que todavía no existen. Tal cual.
Puedes sentarte, llorar y esperar a que alguien programe esa aplicación... o puedes hacerla tú mismo. ¿Cómo? Pues aprendiendo un lenguaje de programación y creando desde cero el programa deseado.
Si decides emprender este camino de auto-aprendizaje, consulta la lista de consejos y recursos que presentamos a continuación. Quién sabe, un día podrías ver tu programa publicado en Softonic...

No me hables en chino. ¿Qué es eso de programar?

Tu ordenador es una máquina que acepta y ejecuta órdenes. Estas órdenes pueden ser tan simples como escribir una letra en la pantalla o calcular una suma, y pueden tener varias formas, dependiendo del lenguaje empleado. A un ordenador no puedes decirle lo siguiente:
Ordenador, quiero que me bajes esa caja de la estantería, la roja a la derecha.
No lo entenderá. En cambio, si escribes algo así, puede que te preste atención:
010101010111010101001010111010101010111010011010100101010110011
Ceros y unos, código máquina, el único idioma que sabe hablar un PC. Para nosotros no es práctico hablar así, con lo que recurrimos a lenguajes artificiales, que no son más que versiones simplificadas de nuestros idiomas. La frase inicial se parecería entonces a algo así:
caja.Bajar(EstanteriaRoja3) = Verdad;
Es feo, sí. Pero es mucho mejor que escribir ceros y unos, ¿no te parece? Esos puntos, espacios, puntos y coma y paréntesis sirven para delimitar exactamente lo que se quiere decir a la máquina, al igual que ocurre al escribir fórmulas matemáticas. Un ejemplo con coloreado de sintaxis:
Código Python de ejemplo
Organizadas en párrafos especiales, todas las líneas de órdenes conforman lo que se conoce como "código fuente", las entrañas de un programa. Para convertirlo en un programa ejecutable, el código se "compila", esto es, se traduce a código máquina. Si no hay fallos (bugs), el programa se abrirá normalmente.

Eso está muy bien. Pero ¿qué lenguajes hay? ¿Cuál elijo?

Como los idiomas naturales, también los lenguajes de programación tienen su léxico, sintaxis y normas de puntuación, que varían en función de la complejidad del lenguaje. Algunos son más fáciles de leer que otros, y entonces se les llama "de alto nivel", pues se aproximan al habla humana; los de bajo nivel son más "robóticos".
Lenguaje de bajo nivelLas máquinas solo hablan con ceros y unos, un lenguaje incomprensible para un humano
Para imprimir una palabra en un lenguaje de alto nivel como BASIC, basta con escribir PRINT "Hola" (print, en inglés, quiere decir "imprimir"; la mayoría de lenguajes usan palabras en inglés). En un lenguaje de nivel bajo, como el Ensamblador, la cosa cambia (no te asustes por lo que vas a ver, no son palabrotas):
SWI "OS_WriteS" EQUS "Hola" EQUB 0 ALIGN MOV PC,R14
Te estarás preguntando quién puede preferir Ensamblador frente a otros lenguajes. Es una cuestión de rendimiento: el código de bajo nivel se ejecuta más rápido y aprovecha más la potencia de la máquina a la cual está ligado, mientras que un lenguaje de alto nivel es más universal; Java, por ejemplo, se ejecuta en cualquier sistema.
Los lenguajes de programación Casi todos los lenguajes de programación están emparentados entre sí (imagen)
Hay cientos de lenguajes de programación, y, al igual que ocurre con los idiomas humanos, muchos tienen pocos "hablantes". Los hay que jamás han salido de las universidades y empresas donde los crearon, mientras que los más populares, por el contrario, se enseñan por doquier y cuentan con amplias comunidades de usuarios.
Para crear aplicaciones de escritorio, los lenguajes más populares son C/C++, Java, Python, Visual Basic y Delphi. Su estilo es parecido, con lo que pasar de uno a otro requiere menos esfuerzo que hacerlo, por ejemplo, de Basic a Ensamblador. Sobre ellos hay una infinidad de libros, cursos y foros técnicos.

Me aburro. Quiero programar ya.

¡Vale! ¿Quieres saber qué se siente al hablar directamente con el ordenador? Empieza por probar alguno de los siguientes programas y enlaces. No hace falta saber muchas matemáticas, aunque algo de inglés te vendrá bien.
1. Practica con robots virtuales
La metáfora del robot -tienes un robot y le das órdenes- ha sido usada con éxito en miles de aulas. Hay varios programas que implementan esa metáfora para enseñar los fundamentos de la programación: Guido Van Robot, RoboMind y RobotProg son tres representantes destacados. Para algo más visual, prueba Kodu.
RoboMind
2. Lenguajes de programación educacionales
Hay lenguajes para todo los gustos: industriales, militares, académicos, empresariales... y también educacionales. Estos lenguajes, como LOGO, son más fáciles de aprender y tienen menos instrucciones.
ElicaElica es un estupendo entorno de aprendizaje basado en el lenguaje LOGO
Microsoft Small Basic es el proyecto de Microsoft para enseñar programación a todos los públicos, mientras que MIT Scratch es el alabado proyecto del Massachussets Institute of Technology.
Microsoft Small Basic
3. Prueba un lenguaje directamente en el navegador
Las páginas TryRuby, TryPython y TryHaskell son demostraciones interactivas de tres de los lenguajes más potentes y amenos que existen. No necesitas instalar nada: tan solo sigue las instrucciones en pantalla y comprueba por tu cuenta lo fácil que es crear y modificar órdenes con sentido.
TryRuby

¡Quiero aprender un lenguaje de verdad!

En ese caso ármate de paciencia y toma en consideración el apuntarte a algún curso de programación. Para aprender por tu cuenta, necesitarás estos ingredientes:
Una vez hayas elegido un lenguaje, hazte con la documentación, los editores de código, el intérprete (o compilador) y mucho tiempo libre. En caso de duda, consulta foros especializados para preguntar dudas, ayudar a los demás y compartir código y conocimientos.

Fuente:http://onsoftware.softonic.com/aprender-a-programar-consejos-y-recursos

Conocer la hubicacion de alguien por su IP

Aunque la mayoría conoce el significado y utilidad de las direcciones IP a estas alturas de la película suele ser menos habitual que se conozca que existen formas de conocer la posición geográfica de un equipo a partir de dicho valor.
Aunque en un principio pueda parecer poco importante, no deja de tener su gracia conocer la ubicación de la persona que nos ha enviado el último correo, dónde se encuentra el servidor de DNS que estamos usando o el lugar desde el que está chateando nuestro contacto de messenger.

Ahora que nos hemos puesto en situación quisiera pasar a presentaros GeoIpTool.
Su manejo es muy sencillo: basta colocar la dirección IP a estudiar dentro de la caja de búsqueda y pulsar el botón Ver Datos.
Automáticamente aparecerá en el mapa de la derecha la ubicación aproximada de ese nodo de la red que tanto os interesa.
Por defecto, nada más entrar en la página web aparecerá ubicado vuestro equipo en la red por lo que podéis aprovechar igualmente el servicio para conocer vuestra ip externa (sólo hay que mirar el apartado Dirección IP que existe justo encima de País) y comprobar si funciona realmente la web que estamos probando.
Para ello os recomiendo que hagáis zoom en el mapa de la derecha hasta que podáis observar los nombres de las calles.
En algunos casos no da exactamente la dirección y población exactos y esto se debe a que toma la ubicación de la central de vuestra compañía de telefonía desde la que obtenéis conexión a Internet.

Fuente:http://blog.tecnopcx.com/archives/461/conocer-la-ubicacion-de-una-persona-por-su-ip

Adecuar la velocidad de los ventiladores en funcion de la temperatura

Hoy he visto en LinuxHispano la forma de hacer que Ubuntu detecte la temperatura del ordenador y adapte la velocidad de los ventiladores en función de la temperatura que tenga en cada momento el ordenador en vez de usar la velocidad máxima siempre.

Lo primero es instalar Sensors Applet:

sudo apt-get install sensors-applet
Para que detecte los sensores de temperatura ejecuta lo siguiente y responde a todo YES:
sudo sensors-detect
Ahora hay que editar el archivo /etc/default/grub y cambiar la linea GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash” por GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash acpi_osi=Linux” puedes hacerlo con el comando:
sudo sed -i 's/quiet splash/quiet splash acpi_osi=Linux/g' /etc/default/grub
Para que surja efecto es necesario reiniciar. La mejora es notable, en mi caso los ventiladores son mucho mas silenciosos.

Para terminar actualiza el grub:
sudo update-grub

Fuente:http://www.portalubuntu.com/2011/06/adecuar-la-velocidad-de-los.html

Usos curiosos de GREP-grep

Grep es una de las herramientas mas potentes de linux, su uso es permite realizar busquedas dentro de archivos de manera rapida, mucho mas rapida que usando herramientas graficas.
Tal vez el usuario comun la use poco pero los administradores de servidores y programadores si la usamos.
Hace un tiempo les hice un post de como buscar un texto dentro de un archivo usado grep pero ahora me encontre en el blog javarevisted varios usos practicos mas que le podemos dar a esta herramienta.
1- Encontrar palabras ‘relevantes’ y excluir palabras ‘irrelevantes’ dentro de un archivo.
grep relevantes logfile.txt | grep -v irrelevantes
2- Contar cuantas veces aparece una ‘palabra’ dentro de un archivo
grep -c “palabra” logfile.txt
3- Mostrar las lineas alrededor de una ‘busqueda’
grep –context=6 busqueda logfile.txt
10 usos para grep4- egrep es un extended grep y permite usar mas expresiones regulares, por ejemplo podemos buscar una ‘palabra’ u ‘otra’ en la misma busqueda.
egrep ‘palabra|otra’ logfile.txt
5- Para buscar una ‘palabra’ sin importar si esta con letras en mayusculas o minusculas puedes usar:
grep -i palabra logfile
6- Para buscar con grep dentro de archivos comprimidos .gz puedes usar zgrep
zgrep -i palabra logfile.txt
7- Buscar la ‘palabra’ exacta y no concordancias como ‘lapalabra’
grep -w palabra logfile.txt
8- Mostrar solo los nombres de los archivos en el directorio actual que contengan la ‘palabra’
grep -l palabra *.txt
9- Para ver el numero de linea donde se encontro la ‘palabra’ podemos usar esto
grep -n palabra logfile.txt
10- Para realizar una busqueda recursiva simplemente debes agregar el comando -R
Espero que les haya servido 10 usos para grep


Fuente:http://paraisolinux.com/10-usos-para-grep/

Copia de seguridad de W7 antes de formatear

7 Tokens Manager, copia de seguridad para poder activar Windows 7
Si llegado el momento, temido por muchos, tenemos que formatear un equipo tenemos que tener a mano una serie de herramientas indispensables. Mi favorita es una imagen del disco, recién instalado con la que volvemos al punto en el que hicimos esta copia. Si no disponemos de esta herramienta de recuperación y tenemos que hacerlo de forma manual una de las cosas que necesitaremos son las claves del producto y de activación de Windows 7. Es recomendable guardarlas en una llave USB externa, para lo cual contamos con herramientas como 7 Tokens Manager.
Es una sencilla utilidad que ejecutamos desde una memoria USB y nos recupera los datos de registro y activación de Windows 7, por lo que facilita la activación del sistema sin necesidad de estar conectados a la red. Una vez realizada la copia de seguidad, la próxima vez que ejecutemos la aplicación nos permitirá restaurar los datos de la copia o borrar dicha copia de seguridad de los registros.
Funciona para versiones de Windows 7 de 32 y 64 bits, y nos puede solucionar más de un problema a la hora de activar nuestra versión de Windows 7, sobre todo si somos de los que formateamos habitualmente, puesto que como medida de protección Windows 7 sólo permite activar el mismo producto un número limitado de veces, como medida de lucha implantada contra la piratería. De otra manera, nos tocaría contactar con el soporte de Microsoft y explicar nuestro caso para que nos permitieran activarlo, cosa que por otro lado no tiene más incoveniente que las molestias de la llamada.
Lo mejor de esta herramienta es su sencillez de uso. Lo malo es que en su virtud están también sus defectos. Puestos a realizar copias de seguridad de las claves mejor utilizar herramientas que nos hagan una copia de seguridad completa de todos los productos, o por lo menos de la mayor parte posible, que utilizamos en nuestro equipo, algo tipo ProduKey.
Vía | ghacks
Más Información | Mydigitallife
En Genbeta | System Nucleus, una tremenda suite para gestionar Windows

domingo, 12 de junio de 2011

Hackers atacaron el Fondo Monetario Internacional

FMI 400x258 Hackers atacaron el Fondo Monetario Internacional
Según un reporte del New York Times, hackers de origen desconocido perpetraron un sofisticado ataque en los servidores del Fondo Monetario Internacional (FMI). Las consecuencias del ataque aún son desconocidas. Naturalmente, el riesgo es alto debido a la clase de información gestionada por el FMI, información confidencial y crítica de decenas de países apoyados por la institución.
Los ataques coinciden con el debilitamiento de la seguridad de los SecurID de RSA, que entre otras cosas, causó que hace pocas semana fuese atacado Lockheed Martin Corporation, el mayor contratista de asuntos militares en los EE. UU. Sin embargo, el FMI niega tal relación.
Si bien el ataque se hizo publico hace unas horas, el FMI informa que éste se llevo a cabo antes de los escándalos sexuales de su ex-líder Dominique Strauss-Kahn.
Como mecioné al principio, el origen de los ataques es desconocido. El FMI se ha negado a hablar al respecto, salvo
Estamos investigando el incidente, el Fondo es completamente funcional […]
Fue una violación muy seria […]
[La exposición de los datos podría ser] dinamita política en muchos países.
Se ha hecho público, sin embargo, que el ataque fue posible mediante una técnica conocida como spear phishing:
  1. El ataque está dirigido a un grupo de personas.
  2. Los atacantes obtienen datos personales e información de la organización para hacer que su mensaje sea convincente. Esta es la parte más difícil, a veces involucra perpetrar alguna de las redes de la organización.
  3. Lo atacantes envían e-mails, para solicitar información urgente al grupo.
  4. Uno o más del grupo caen en la trampa: ingresan usuario, contraseña, y demás datos sensibles.
El Banco Mundial, a unos pasos de las instalaciones del FMI en Washington, D.C., consideró tan seria la amenaza que retiró el enlace dedicado de datos que permite a las dos instituciones compartir información. El Banco Mundial dice que tendrá “precaución abundante”.
Si el 2010 fue el año de los ataques distribuidos de denegación de servicio (DDoS), este 2011 es el de los ataques de seguridad de toda clase, sofisticados —como éste, contra Irán, etc.— o no —como los Lulzsec a Sony—. Los anales de la seguridad informática tendrán mucho que decir de estos últimos meses, y de los que están por venir.

Fuente:http://alt1040.com/2011/06/hackers-atacaron-el-fondo-monetario-internacional

Las operadoras que operan en España son las que menos invierten en infraestructuras de toda la Unión Europea

telecom.jpg
Según un estudio que ha publicado la Unión Europea como parte de su control de adaptación de los diversos países miembros a su Agenda Digital, las operadoras que operan en España son las que menos cantidad de sus ingresos invierten en el desarrollo de infraestructuras de comunicaciones. La media europea se asienta en el 12%, frente al 8.1% que posee nuestro país. Dinamarca encabeza el grupo de países con un 20.6%.
Si bien las cifras son de 2009, como se indica en el gráfico, seguramente cuando estén disponibles las del año pasado descubriremos, por desgracia, que la cosa no ha cambiado demasiado. Que todos los países (exceptuando Hungría y Holanda, para los que no hay datos) nos superen debería dar que pensar a la gente y a los políticos que se empeñan en defender el estado de las telecomunicaciones en España.

La velocidad, otra asignatura pendiente

velocidad.jpg
Según el estudio, otro apartado que tenemos por mejorar en España es la velocidad de la conexión. Si bien el 90% de las conexiones superan los 2 Mbps de velocidad, esta cifra cae hasta el 33% cuando hablamos de líneas que superan los 10 Mbps. Este porcentaje cae por debajo de la media de la Unión Europea (casi el 39%) y palidece frente a los 74% y 73% que se alcanzan en países como Bulgaria y Portugal, respectivamente.

La Agenda Digital Europea

Todas estas cifras se han publicado como parte de un estudio del estado de las comunicaciones a nivel europeo con el fin de comprobar cómo se están adaptando los países miembros a la llamada Agenda Digital. ¿En qué consiste ésta? En un plan a corto plazo con el objetivo de promover el desarrollo de las comunicaciones y las infraestructuras a nivel europeo.
Entre lo que buscan se encuentra conseguir que todos los ciudadanos tengan acceso a la red de redes con una velocidad mínima al menos (que se irá aumentando conforme pasen los años), que se protejan los datos de todos los usuarios, que se garantice la seguridad en la red, que los ciudadanos puedan realizar todos los trámites con la Administración a través de Internet y un largo etcétera.
Más Información | Digital Agenda for Europe
Vía | Banda Ancha
En Xataka On | Neelie Kroes, responsable de la Agenda Digital Europea, sueña con artistas que realmente viven de su arte

Páginas ocultas "about:" en Mozilla Firefox

Seguro que ya conoces y has visto en más de alguna ocasión "about:blank". Los desarrolladores necesitan incluir además otro tipo de páginas "about:" por varias razones. Estas URLs en su mayoría son específicas del navegador y nos llevan a páginas internas u "ocultas". A continuación haremos un repaso a las incluidas en Mozilla Firefox porque estoy seguro que algunas os sorprenderán ;):

about: sin ningún parámetro nos muestra una pantalla con la versión de Firefox y varios enlaces para ver una lista de colaboradores al proyecto Mozilla, leer la información de licencia del producto, leer las notas de publicación de la versión, ver la configuración de compilación usada para la versión y un identificador de compilación (ej. Mozilla/5.0 (Windows NT 5.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1).

about:blank la página en blanco que todos conocemos y que normalmente se suele establecer como página de inicio. Hay otra opción para ir directamente a la página de inicio establecida, sea cual sea: about:home.

about:logo nos muestra el logo de Firefox (PNG 300x236 pixels).

about:buildconfig muestra información técnica sobre la configuración actual, la plataforma, los compiladores y los argumentos de configuración.

about:cache una página muy útil que nos muestra información sobre la caché de Firefox, tanto en memoria como en disco y nos lista las webs cacheadas. También podemos acceder independientemente a cada una de ellas:

- about:cache?device=memory
- about:cache?device=disk
- about:cache?device=offline

about:config a través de aquí podremos modificar las preferencias de usuario (prefs.js). Antes de entrar, Firefox nos advertirá para que seamos precavidos con un cariñoso mensaje "¡Zona hostil para manazas!".

about:plugins esta opción mostrará información detallada de todos los plugins instalados en Firefox. Tened en cuenta que los plugins no son lo mismo que las extensiones. Para mostrar las extensiones valdría con about:addons.

about:privatebrowsing para comenzar a navegar de forma privada (modo porno :P).

about:sessionrestore para recuperar nuestra sesión anterior.

about:sync-tabs para sincronizar pestañas entre dispositivos.

about:rights página con información sobre nuestros derechos.

about:crashes nos mostrará un recopilatorio de todos los informes de los crashes ocurridos en nuestro navegador.

about:support obtención de información para solucionar problemas

about:credits aquí encontraremos todas las personas que han contribuido con Firefox, listadas alfabeticamente.

about:mozilla aparecerá un curioso mensaje que hace referencia a la caida de Netscape y su resurgimiento como FireFox y ThunderBird... Se trata un extracto del 'Libro de Mozilla', un texto ficticio que viene desde la primera versión de Netscape.

about:robots otra flipada. Mejor comprobarlo vosotros mismos...

about:license nos muestra un recopilatorio de todas las licencias de los componentes de software de Firefox.

about:about y finalmente una lista de páginas “about” para nuestra comodidad.

Además muchas extensiones añaden sus propias páginas about:

about:chrome
about:language
about:tmp
about:flashblock
about:downthemall
...


Fuente:http://hackplayers.blogspot.com/2011/06/paginas-ocultas-about-en-mozilla.html