Mostrando entradas con la etiqueta programación. Mostrar todas las entradas
Mostrando entradas con la etiqueta programación. Mostrar todas las entradas

25 de agosto de 2010


Esa maraña de letras y números de ahí arriba son un candado.
Uno de los más seguros, ya que lleva desde hace unos 30 años sin que nadie (que no tenga la llave) haya sido capaz de abrirlo.

 

Los códigos de encriptación son complicadas fórmulas matemáticas que ocultan una simple sucesión de números o letras tras complicadas ecuaciones. Si cuentas con la clave correcta se franqueará el acceso, de lo contrario te tocará recurrir a la fuerza bruta informática y poner al ordenador a tratar de probar miles de millones de combinaciones hasta que aparezca la correcta.
Esto podía tardar días, sema
nas o meses de tiempo de computación de un ordenador potente, hasta que hizo su aparición la computación cuántica, capaz de trabajar con múltiples resultados a la vez. Pero no todo está perdido, Robert McEliece llenó un día de 1978 una pizarra de CalTech, el Instituto Tecnológico de California, con una fórmula que hoy día todavía se resiste a los intentos de sortearla 
de los ultrapoderosos ordenadores cuánticos.

La encriptación

Es el arte informático de esconder información de manera que solo quien posea la contraseña pueda acceder a ella. Por supuesto, por cada 10 encriptadores que trabajan por la mañana en cómo esconder esa información habrá 100 desencriptadores afanados en turno de tarde en romper esas barreras, de los cuales al menos 5 son el mismo encriptador de la mañana tratando de superar el candado de otro colega.
La utilización de códigos asimétricos, en los que un usuario tenía una clave pública para encriptar y solo el destinatario poseía la clave privada para desencriptar, había supuesto un quebradero de cabeza durante bastante tiempo para los ordenadores “normales”. Por ejemplo, si la clave consiste en multiplicar un número por otro, para obtener un tercero, pero sabiendo el resultado de dicha multiplicación no podemos saber qué números se habían multiplicado entre sí. El método para encontrar esos número se basa en la factorización, algo que los ordenadores “normales” pueden hacer pero en mucho tiempo… y los ordenadores cuánticos en un santiamén, con lo que todos los códigos basados en la factorización quedaban obsoletos.
Lo curioso del código de encriptación de McEliece es que no se basa en la factorización, con lo que los ordenadores cuánticos no son capaces de “comérselo”… aún. Nos encontramos a las puertas de una nueva era de la computación pero algo ideado de manera casi rudimentaria por alguien allá en el año 1979 aún permanece incólume a los embates de las nuevas tecnologías.

 

Deja tu Comentario.

 

Quieres leer más post como éste???...suscribete aquí!!!

13 de enero de 2010


Openshot, un editor de vídeo que llevaba tiempo en desarrollo y generando grandes expectativas, acaba de liberar la versión final 1.0. Una versión muy pulida y prácticamente sin bugs, creada por un usuario de Ubuntu, Jonathan Thomas.

Características más importantes

Lo mejor de Openshot reside en la gran cantidad de efectos y transiciones que tiene (34 y 48, respectivamente) y en lo intuitivo que es su uso.

Además posee:
  • soporte de multitud de formatos de audio y video gracias a FFmpeg,
  • capacidad de trabajar con formatos de alta definición como HDV y AVCHD,
  • superposición de imágenes y marcas de agua y edición tanto de pistas de audio como de vídeo.

Interfaz


Pueden ver que presenta una interfaz muy similar a la de otros editores, como Windows Movie Maker, sin embargo tiene muchísimas más posibilidades. Desde aquí, podremos añadir archivos de vídeo, audio o imagen, añadirlos a la línea de tiempo y previsualizarlos; además de poder entrar en las pestañas de transiciones y efectos y arrastrarlos a la línea de tiempo.

Línea de tiempo


Ésta es la zona donde más posibilidades tenemos. Aparte de los controles básicos, tenemos una gran cantidad de opciones:
  • Con imágenes: podemos modificar su posición, tamaño, duración, fundidos y efectos.
  • Con audio: podemos modificar su velocidad y volumen.
  • Con vídeos: disponemos de las opciones existentes tanto en imágenes como en audio.

Este editor dispone también de un editor de títulos con un buen número de plantillas, y con posibilidad de editarlos de dos formas: básica y avanzada, en la que podremos modificar el SVG del título a nuestro gusto con Inkscape. También podremos cambiar el aspecto del editor con cuatro temas preinstalados.

Además, incluye un completo manual, que también se puede consultar online.

Openshot es software libre y está disponible en 42 idiomas, incluido el español. Se puede descargar en varios formatos: LiveDVD, paquete DEB o código fuente. También ofrece la posibilidad de descarga desde repositorios PPA o mediante asistente de compilación.


Sitio Oficial | Openshot Video



Deja tu Comentario.




Quieres leer más post como éste???...suscribete aquí!!!

6 de enero de 2010

Tal como estaba programado, Google anunció el día de hoy el Nexus One oficialmente, y creó una tienda en línea para los teléfonos Android y Nexus Uno es el primer teléfono que está disponible para la venta.

Un Superphone porque es mucho más que un teléfono inteligente regular. Incluso si Nexus Uno es probablemente el mejor teléfono Android en el mercado, está lejos de ser revolucionario.

La página no está abierta a todo el mundo, puesto que por ahora sólo se vende en Estados Unidos y pueden ser enviados al Reino Unido, Hong Kong y Singapur, pero si acceden vía un proxy, podrán:

  • ver los planes (como en la imagen superior),
  • tener la posibilidad de grabar nuestros nombres en el teléfono y
  • por último, el checkout.

Costos

El teléfono tiene un costo de $529 desbloqueado. Es decir, podemos usarlo con cualquier SIM, siempre y cuando sea GSM.

Especificaciones del Nexus One

Con éstas características, tenemos a una monstruosidad de teléfono:

Procesador: SnapDragon 1Ghz de Qualcomm

RAM: 512 MBs / Almacenamiento: 512 ROM – 4 GBs MicroSD (expandible a 32 GBs)

Pantalla: 3.7”, 800×480




Más info
| Google.com/Phone




Deja tu Comentario.




Quieres leer más post como éste???...suscribete aquí!!!

19 de noviembre de 2009

Después de varios meses tras el anuncio inicial en Julio de este año. Como muchos esperábamos, es un sistema operativo basado enteramente en las aplicaciones web que presenta una nueva dimensión del concepto de sistema operativo en un ordenador.

No se instalarán aplicaciones

Básicamente, el navegador Chrome es el centro del sistema operativo, y en dicho sistema todo funcionará vía web. Los datos se sincronizarán en línea, los vídeos se reproducirán con componentes del mismo navegador, e incluso podremos imprimir y conectar memorias USB y cámaras para navegar mediante un explorador de archivos.

Chrome OS está pensado para ejecutarse en NetBooks con disco duro SSD, por lo tanto no es compatible con discos duros mecánicos. Se distribuirá en un año, aunque ya podemos bajarnos el código fuente de la versión libre del sistema (llamada Chromium OS) para compilarla y probarla en una máquina virtual.

Aquí está uno de los fondos de pantalla que se incluyen:

Haz clic para ver la imagen mas grande

Live blogging

Chrome, el fundamento de Chrome OS
- Chrome tiene 40 millones de usuarios
- Chrome se centra en: la velocidad, la seguridad, la simplicidad
- Cosas nuevas: Chrome para Mac / Linux y las extensiones

HTML5: hacer la Web más poderosa
- Aplicaciones web de gran alcance
- Aplicaciones web deben usar los hilos
- Aplicaciones web offline

Tendencias convergentes
- Netbooks tienen un crecimiento explosivo
- Millones de usuarios que viven en la nube

Chrome OS:
- Arranque instantáneo
- Chrome Chrome en sistema operativo es más rápido
- Cada aplicación es una aplicación web
- Todos los datos están en la nube
- El modelo de seguridad del navegador

Demostración:
- 7 segundos el tiempo de arranque
- La interfaz de usuario es un trabajo en progreso
- De fácil acceso aplicaciones favoritas
- Menú de aplicación
- Paneles: persistente ventanas ligero (ejemplo: Google Talk)
- Explorador de archivos
- Los archivos locales abiertos en aplicaciones web (incluyendo aplicaciones de Microsoft Office Online)
- Reproductor de vídeo nativo



Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

14 de noviembre de 2009

Desde el bien informado sitio Techcrunch, el analista Michael Arrington, asegura que la próxima semana se liberará una versión del esperado sistema operativo de Google

Citando fuentes anónimas confiables, Arrington escribe que

"Google Chrome será lanzado y estará disponible para descargas dentro de una semana".


Los responsables de Google ya han afirmado que la versión para desarrolladores verá la luz antes de final de año y en seis meses una beta de Chrome OS estará funcionando en los netbooks de los usuarios.

Lo que significa que el lanzamiento de Chrome OS se producirá a mediados de 2010, como versión beta, algo normal en los productos que lanza Google.

No sería coincidencia

En caso de confirmarse la información, el momento elegido por Google para el lanzamiento de Chrome OS no sería una coincidencia. Durante la próxima semana Microsoft realizará su gran conferencia para desarrolladores, Professional Developer Conference (PDC) en Los Angeles, EEUU.

Se espera que durante la conferencia PDC, Google presente Azure, el ambicioso proyecto de la empresa para la nube.

El sistema operativo se enmarca en la propuesta de producción de software y servicios que Google tiene preparada para el 2010:
  • afianzamiento de su navegador Chrome lanzándolo en las diversas plataformas existentes,
  • evolución del sistema Android y los desarrollos móviles y,
  • finalmente: Google Wave, llamado a sustituir al mail y el chat.


Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

12 de noviembre de 2009


Para sorpresa de todos y on la premisa de programar rapido, divertido y eficiente, Google presentó un nuevo lenguaje de programación.

Go

Es open-source. Basado en una sintaxis reducida de C/C++ (manteniendo declaración de Tipos sin hacer las cosas muy complicadas con arboles de Herencias para evitarnos hacer refactors) y en la simplicidad que encontramos los programadores en lenguajes como Python o Ruby hoy revelan un lenguaje abierto.

El lenguaje Go está destinado a mejorar la eficiencia, según ellos:


“porque hace muchos años no aparece un lenguaje de gran escala”
y que con los avances informáticos actuales
“el desarrollo de software continúa siendo lento”.


Con este lenguaje Google espera ofrecer una buena herramienta para trabajar en entornos con multiprocesadores y un modo fácil de ponerse a programar con la orientación a objetos y con las ventajas de tener, por ejemplo, el garbage collector para que no tengamos problemas de memoria.

Podemos ver un ejemplo del aspecto del código de Go con el código típico del Hola Mundo:



package main

import "fmt"

func main() {
fmt.Printf("Hello [Sistemas UNSA]\n")
}

¿Compilación lenta? Mira esto




En la web oficial ya está disponible la documentación para los que se animen empiecen a probar sus proyectos en este nuevo lenguaje. La mascota de Go es una ardilla terrestre llamada Gordon.

Si estás familiarizado con la programación C y C++, aquí tienes un interesante tutorial para comenzar a programar en Go:

Web Oficial | GoLang.org

Enlace | Tutorial








Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

17 de octubre de 2009

Google ha publicado recientemente una compilación de Chrome y algunas personas ya instalaron el paquete. Deb.

Como habíamos comentado anteriormente, Chrome OS es una distribución de Linux que incluye una versión personalizada de Chrome como navegador predeterminado.

Chrome para Chrome OS no es muy diferente del navegador que ya se puede instalar en Windows, Linux o Mac. La principal diferencia es que el navegador incluye elementos de la interfaz de usuario de un sistema operativo tradicional:
  • reloj,
  • estado de la batería,
  • la configuración de red.


Es obvio que el navegador es el único componente visible del sistema operativo Chrome, un navegador ligero. Desde que Google Chrome incluya la mayoría de las características que son necesarias para utilizar un sistema operativo podrá convertirse en eso mismo, un Sistema Operativo.

No hay razón para esperar con ansiedad para Chrome OS, cuando ya pueden utilizar Chrome en su sistema operativo favorito y obtener las mismas características. Ciertamente el resultado deja de impresionar.




Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

14 de octubre de 2009

Necesitan estar pendientes de sus cuentas de Gmail, pero ¿no desean tener la página de Gmail abierta en todo momento? Entonces Scott’s Gmail Alert puede ser una solución interesante.

Es un programa que vive en nuestra barra de Windows, y que nos notificará apenas llegue un correo nuevo. No sólo en una cuenta, sino que podemos ponerlo a monitorear hasta 5 cuentas extra. Además, el programa también incluye una herramienta para redactar los e-mails, además de darnos la posibilidad de añadir archivos adjuntos, y todo esto sin tener que abrir Gmail.

De todas las aplicaciones disponibles, es definitivamente una de las más completas. Porque además de Gmail, Scott’s Gmail Alert trae además la opción de configurar reminders o notificaciones de Google Calendar.

El programa tiene una enorme cantidad de opciones, incluyendo la posibilidad de cambiar los colores de las notificaciones, entre otras cosas.

Descarga | Scott’s Gmail Alert




Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

8 de octubre de 2009

Google encontró la razón por la qué las personas no cambian su navegador web: nisiquiera saben qué es un navegador web.

Algunos piensan que el navegador es en realidad un motor de búsqueda, otros están convencidos de que la única manera de navegar por la web es hacer clic en la E azul de gran tamaño desde el escritorio. A veces es complicado definir lo que es un navegador web a personas que no suelen preocuparse mucho sobre qué programas corren en su PC.

Dada la importancia que tienen los navegadores web en nuestras PCs hoy en día Google ha creado una breve introducción a los navegadores web,

"El programa más importante de tu PC es el navegador web"

concluye Google en un video muy al estilo Common Craft, que nos explica qué es un navegador, qué no es un navegador, y para qué lo utilizamos, todo en un minuto.

El video es bastante simple, y muy bueno para explicarle a personas por qué tienen que cambiar IE6 por una versión más nueva, u otro navegador.






¿Y los subtítulos?

Apenas le pongan “play” al video, aparecerá un menú en la parte inferior derecha. Aquí, busquen la opción de “CC”.

Tras elegir CC, click en “More”, y encontrarán Spanish entre las opciones. y listo!

WhatBrowser.org

Google, incluso creó un sitio web que incluye información sobre cómo cambiar de navegador, el rendimiento de JavaScript, suites de referencia. La idea es genial, pero Google debería evitar el uso de términos técnicos. Si muchos usuarios no conocen la definición de un navegador, JavaScript o el navegador de referencia especial necesitarán guías de introducción.


Enlace | WhatBrowser.org




Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

7 de octubre de 2009

Nadie nace sabiendo ni siendo un experto en cualquier tema. Todo lleva un tiempo de aprendizaje, de práctica y de aplicación. Desarrollar programas eficaces y funcionales para microcontroladores no es la excepción de esta regla. En este artículo no aprenderás a programar sino que encontrarás los consejos más importantes que te guiarán por el camino menos frustrante hacia una realización exitosa. Participa de los mejores consejos que se brindan en los foros más importantes de toda la Web y descubre los secretos que utilizan los programadores más avezados. Entra al mundo geek y sé parte de él.

Foros, listas de correo, blogs, YouTube, MSN y muchos otros medios son utilizados en la Web para permitir que la gente pueda comunicarse entre sí y pueda ayudarse mutuamente en los temas referentes a microcontroladores. Luego de recorrer durante algunos años muchos de estos espacios en busca de información y conocimientos, he encontrado que la mayoría de los interrogantes y consejos que se brindan a quienes recién comienzan en el mundo de los microcontroladores se reiteran una y otra vez en todos los lugares. Pareciera que las dudas y las preguntas son siempre las mismas.


La razón es muy obvia y sencilla: cada día hay más gente con ansias de aprender, y como sabemos que tú eres uno de ellos, hemos preparado un pequeño listado de las cosas más importantes a tener en cuenta al momento de iniciarte en este apasionante mundo de los microcontroladores.

Al comenzar, las dudas son interminables y los miedos al fracaso suelen ser los culpables de que muchos abandonen su interés por el mundo de los microcontroladores. No hay que dejar de tener en cuenta que la información está tan dispersa en la red que encontrar lo que estamos buscando es a veces más difícil que ver abrazados a Bill Gates y a Steve Jobs. Por eso, si estabas a un paso de comenzar a trabajar con microcontroladores y no encontrabas la puerta de acceso, ven con nosotros, lee estos pequeños “Tips”, apréndelos, ponlos en práctica y deslúmbranos con tu creatividad.

1 - El Datasheet del microcontrolador
Una de las mayores razones de confusión y de complicaciones al desarrollar un proyecto es la falta de información del microcontrolador que se desea utilizar. Las hojas de datos son los documentos más importantes que debemos acopiar al momento de decidirnos e inclinarnos por un determinado tipo de microcontrolador.

Por ejemplo, si en tu diseño vas a utilizar un PIC 16F877A, debes imprimir, leer y recurrir a sus hojas como si fuese El Libro de la Verdad Absoluta. Todas las respuestas están allí. Todo lo que necesitas saber está allí. No te permitas iniciar un desarrollo sin haber leído las hojas de datos del microcontrolador que utilizarás. Un registro mal “seteado” y nada funcionará. Desde la configuración inicial del dispositivo (fuses), pasando por los registros de los ADC (Analog to Digital Converter) o los módulos CCP que te permiten obtener señales PWM, hasta la mismísima configuración del reloj o clock del sistema. Todo está allí.

2 - Piensa en tus objetivos, sueña con ellos.
¿Qué deseas lograr con tu desarrollo? Pensar en la idea final nos suele llevar a visualizar en la mente el proyecto terminado y consolidado en un prototipo funcionando a la perfección. ¿Qué componentes adicionales necesitaría? ¡Ah! ¿Tengo esos componentes? Luego de que ya hayas dado vuelta todos los estantes y cajones buscando ese material que te faltaba, comienza a anotar los que te hagan falta, los que no tengas. No abuses de tu memoria para recordar todo lo que necesitas comprar en la tienda; coloca en ella tu desarrollo y utilízala como un microcontrolador: optimiza este recurso y utilízalo sólo para ampliar y perfeccionar tu proyecto. Los materiales que hacen falta no deben ocupar espacio en tu mente; haz un listado minucioso y detallado para no hacer dos viajes y listo.

3 - No quieras correr antes de empezar a caminar
Uno de los errores más comunes de los que recién se inician es querer obtener más de lo que pueden llegar a comprender. No intentes hacer como primer trabajo un Cartel Luminoso de LEDs para venderlo en los estadios de fútbol y volverte millonario la semana próxima. Ni siquiera pretendas construir y empuñar el Sable Láser de Obi-Wan Kenobi y ser la envidia del colegio. ¡No, no!

Si no tienes noción de la complejidad del proyecto que emprenderás es porque no has leído o interpretado el punto anterior. Las frustraciones provocadas por los fracasos en los primeros intentos aniquilan la confianza en nosotros mismos y arruina toda la diversión que significa construir y materializar nuestros sueños mientras vamos aprendiendo. SIEMPRE comienza con lo más elemental y, a medida que los éxitos comiencen a llegar, puedes ir agregando complejidad a los diseños. Además, cualquier programador experimentado te dirá que su primer trabajo fue escribir “Hola Mundo” en un display o un LED titilando . Quien diga que no, te miente cobardemente.

Comienza a caminar comprendiendo los conceptos básicos y la terminología técnica y desarrolla pequeños proyectos de luces, motores o pantallas LCD. Luego, comienza a hacer un poco de jogging y trote liviano con algo más complejo como letreros de luces y pequeños controles de los que se utilizan en industrias. La domótica y lamecatrónica son dos campos muy interesantes y amplios como para sumar buena experiencia. Si no salteas ninguno de los pasos, muy pronto estarás corriendo grandes competencias a la par de los profesionales.

4 - Corta la pizza en porciones, no la comas entera
Por más simple que sea un proyecto, siempre es bueno dividir en bloques o pasos la tarea a realizar. Silbar y comer maní son cosas muy habituales y sencillas de hacer, pero concretarlas al unísono no es algo fácil. Organízate y prepárate a trabajar por partes. Primero ESTO, luego ESTO OTRO y al final AQUELLO. Intentar hacer todo a la vez o en forma desordenada sin un patrón de acción puede ocasionarte errores al momento de construir el proyecto. Por ejemplo, si decides incorporar un Puente H para mover un motor, contrólalo antes de conectarlo al microcontrolador. Es decir, conéctalo y pruébalo en forma independiente para saber que el mismo funciona. Así con todos los bloques en los que puedas sub-dividir tu proyecto.

5 - No sólo la fuerza te guiará

Tus inspiraciones serán una avalancha de imágenes y pequeños trailers en tu imaginación, pero en el teclado deberás actuar de manera puramente lógica. El número uno, nos guste o no, está antes que el dos. Primero el cero, luego el uno, después el dos, el tres y así en adelante. Siempre es así y nunca cambia esa realidad, a pesar de las paradojas de Ariel Palazzesi. Los programas funcionan así. Obtenemos la variable A y la transformamos en B; le sumamos C y el resultado se muestra en el paso D, y así se encadenan los procesos individuales que desembocan en el resultado final del programa. Nada es al azar, ni porque se le ocurra a Max Ferzzola. Los programas siguen un razonamiento lógico y, por lo tanto, los microcontroladores también. Si tu mente se acostumbra a razonar de esta manera, programar será un juego de niños para ti.

6 - El pseudo-código también es lógico.
Te puede parecer arcaico, poco profesional y hasta una pérdida de tiempo, pero escribir en un papel todos los pasos que seguirá tu programa puede ser una ayuda muy importante mientras vas redondeando la idea final.

Por ejemplo:

  • Necesito una variable (A) que contenga un valor 20 al iniciar.
  • También otra (B) que valga 18 en el mismo momento.
  • Después las sumo y coloco el resultado en una tercera variable que se llamará C.
  • Las muestro en el display .

En un programa en lenguaje BASIC eso resulta ser:

A = 20
B = 18
C = A+B
Print at 1,1, Dec C

Escribir la secuencia de acciones que queremos que nuestro programa realice nos permitirá modelarlo a nuestro gusto y requerimiento, además de optimizarlo.
Cuando lo aprendes en la escuela, te lo enseñan como Diagrama de Flujo y puede que con el tiempo te olvides de él, pero cuando lo aprendes por ti mismo, razonando los pasos a seguir, no lo olvidas nunca.

Algo que puede parecer muy intrascendente, pero que es de vital importancia, es “comentar” cada línea de código que escribamos. Aunque creamos que es inútil, si no lo haces, terminarás arrancándote los cabellos una semana después al no darte cuenta qué es lo que quisiste colocar allí o por qué llegaste a ese lugar dentro del programa. Que hoy los comentarios te ocupen 10 renglones por cada línea de código significará que el próximo mes te ahorres 10 horas de trabajo intentando descubrir qué intentaste hacer allí.

7 -Organiza y guarda estructuras pre-armadas.
A medida que vayas utilizando un microcontrolador en particular (siempre seleccionamos uno “preferido”) y comiences a utilizarlo reiteradamente, te resultará cómodo tener a mano una estructura estandarizada de conexiones y bloques de programas. Es decir, si acostumbras a utilizar un microcontrolador X, si siempre utilizas la misma frecuencia de cristal oscilador, si siempre utilizas el mismo tipo de LCD, y si además también conectas siempre tus desarrollos a un ordenador a través de un puerto RS-232, tendrás siempre un gran bloque de programa que se repite diseño tras diseño.

Cuando comienzas a darte cuenta que muchos de tus diseños repiten pasos o bloques, allí empiezas a armar tus “templates” que son plantillas pre-armadas de cosas que se reiteran habitualmente. Consérvalas y organízalas en lugares prácticos y de fácil acceso. Te servirán para ahorrar mucho tiempo al momento de iniciar el diseño de un nuevo proyecto. Aprovecha el trabajo que ya tienes hecho y que sabes que funciona.

8 - No preguntar hasta agotar las posibilidades de conocimiento.
En la mayoría de los foros o grupos de correo que aglutinan a miles de entusiastas de los microcontroladores sería muy fácil registrarse gratis, realizar consultas y, una vez que nos brindan las respuestas, seguir adelante. Además, en esos lugares siempre hay gente bien dispuesta a brindar ayuda. Trata de no hacerlo hasta el final de tus posibilidades. Lee las hojas de datos de los materiales que te están complicando el diseño, busca dentro de los foros, utiliza Google, lee algún libro relacionado al tema, busca hasta el cansancio en la ayuda del programa (Help) y, como último recurso, pregunta a otros.

Si ante el menor inconveniente acudes a otras personas para que te resuelvan los problemas, nunca aprenderás lo suficiente. Además, cuando te den la solución a tu problema, no sabrás entender que dicha solución sólo la pudiste obtener allí porque no tienes idea de lo que buscas. Todos siempre necesitamos una ayuda hasta en la tontería más insignificante, pero la comodidad y la holgazanería de que otros te hagan el trabajo no es un buen negocio para un programador. Por último, si pides ayuda, demuestra haber hecho tus intentos de solución contando lo que has realizado y los resultados que has obtenido. Si no haces nada, y sólo te limitas a pegar el enunciado que te han dado tus profesores, no esperes que alguien te ayude.

9 - La frustración es el enemigo a vencer.
Trata de no abandonar los proyectos porque algo no funcionó como esperabas. Descubre en esas oportunidades un reto o un desafío antes que un fracaso. Siempre es bueno mantenerse tranquilo y calmo a pesar de que nuestros circuitos echen humo por los cuatro costados. Todo error que se busca, al encontrarlo y solucionarlo, es un aprendizaje que queda grabado. Puede sonar muy extraño pero la asimilación del conocimiento es directamente proporcional al daño provocado. Es decir, cuanto más grave y más caras sean las roturas, mayores serán los aprendizajes de saber qué es lo que NO se debe hacer y por qué suceden algunas cosas.

No fue Dios el culpable de que algo no nos funcionara, sino que somos nosotros los que hemos metido mal algún cable. Un buen paseo, una buena caminata y al día siguiente retomar el trabajo es una de las mejores formas de vencer la frustración. Por eso, siempre hay que revisar, revisar, revisar y volver a revisar todas las conexiones antes de conectar la energía al circuito. Nada debe dejarse librado al azar y mucho menos restarle importancia creyendo que hemos hecho bien las cosas. Todos somos humanos y podemos cometer el error más infantil que puedas imaginar. No olvides que muchas veces una parte del éxito es una sumatoria de aprendizajes brindados por los fracasos.

10 - Google es el mejor amigo del hombre (programador)
Si lo que buscas no está en Google, es porque no existe y eres un pionero en la materia. Toneladas de material que puede ayudarte está allí en Google esperándote para poner en marcha tu proyecto. En castellano, en inglés o en arameo antiguo, lo que necesites estará en texto, imágenes y video. Nunca dejes de consultar en Google antes de preguntar tus dudas a otros.

Conclusiones
A cada momento puedes descubrir un nuevo modo de estructurar un programa. Disfruta de cada LED que puedas hacer brillar y no lo tomes como algo más; detente y tómate un tiempo para analizar tu buen trabajo. Sin caer en narcisismos banales, aprovecha cada buena rutina de programa para limpiar de tus hombros los fracasos y las tristezas de los códigos que no te funcionaron. Siempre nos parece que los fracasos son demasiado pesados. Solo en tu fuerza interior está la manera de hacer que las alas que te brinda la concreción de un buen trabajo inclinen la balanza y venzan el peso de las frustraciones.

Olvídate de frases bochornosas como “Pues es raro…”, “Nunca había pasado antes”, “Pues ayer funcionaba…” o el clásico y nunca bien ponderado “Debe ser un virus…”. Si no enfrentas el problema, nunca podrás vencerlo, y si no abres tu mente y te cierras con terquedad sin intentar realizar otros caminos, nunca esperes resultados diferentes.

Si has leído hasta aquí y eres un programador con experiencia, seguramente tendrás más consejos para aquellos que recién comienzan. Te invitamos a que los agregues en los comentarios. Gustosamente leeremos tus aventuras y desventuras como programador. Recomendación: No cuentes sólo las ganadas.


Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

29 de septiembre de 2009

Microsoft por primera vez combina una solución antivirus gratuita en un paquete de aproximadamente 5 MB llamado Microsoft Security Essentials, compatible con Windows XP, Vista y 7 (32 y 64bit).

Microsoft Security Essentials

Microsoft Security Essentials había salido bastante bien parado en los test previos a esta versión final, cosa que a muchos sorprendió positivamente por su rapidez, facilidad de uso y eficacia. Las definiciones de malware son actualizadas tres veces al día.

Posee la mayoría de las características de los antivirus, actualizaciones automáticas y gratuitas, antivirus residente que está siempre pendiente de lo que se mueve por nuestro ordenador y opciones de escaneo a petición tanto de nuestro sistema como de unidades externas.

Por otro lado

Esta aplicación requiere de una copia de Windows validada, es decir que si tu sistema operativo no es legal, podríamos tener problemas para poder utilizar Microsoft Security Essentials.

Es muy temprano para saber si es un buen antivirus o no, pero por qué no darle una oportunidad y ver si esta vez Microsoft ha hecho un buen trabajo y nos encontramos ante una buena herramienta.

¿Insuficiente?

Como era de esperar, las compañías de seguridad informática consideran la nueva apuesta de Microsoft como una amenaza para su negocio. Excepto por AVG y otras soluciones gratuitas.

Symantec y AVG afirman que Microsoft Security Essentials no es un paquete completo de seguridad.

Sin embargo, todo indica que la combinación de Security Essentials con un sistema operativo actualizado, el cortafuegos de Windows y un navegador actualizado constituyen un esquema óptimo para la mayoría de los usuarios de Internet.

Microsoft Security Essentials funciona con Windows XP en adelante y es completamente gratuito.

Descarga | Microsoft Security Essentials




Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

22 de septiembre de 2009



Hay una manera de utilizar Chrome de forma transparente al usuario bajo Internet Explorer 6 o posteriores: Google Chrome Frame

Al instalar este plugin, el usuario podrá seguir usando Internet Explorer como lo hacía hasta el momento, pero internamente, el motor será Chrome. La navegación será tan fluida y segura como Chrome, porque internamente será Chrome. Pero el aspecto, menús y opciones, serán los de Internet Explorer.

Después de instalar el plug-in, puedes probar añadiendo CF: en frente de cualquier dirección URL de la barra de direcciones.

Para los desarrolladores web

Google Chrome Frame es una opción interesante para los desarrolladores que escriben aplicaciones web y el uso de características HTML o CSS que están disponibles en cualquier navegador moderno, excepto IE.

Para solucionar ese inconveniente se puede añadir una etiqueta meta en la parte superior de una página web y permitir que nos ayude el plug-in de Google Chrome:

<meta http-equiv="X-UA-Compatible" content="chrome=1">

La descarga

La descarga del plugin pesa unos 500KB, y tras eso es necesario descargar unos 10MB de librerías para Chrome, incluyendo sus motores Webkit y JavaScript.

Consejo

Luego de instalar el plug-in, agrega a favoritos cf:http://mail.google.com/mail/ para acelerar Gmail en Internet Explorer, y por qué no tratar de utilizar las aplicaciones de la página de Experimentos Chrome.



Enlace | Google Chrome Frame



Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

12 de septiembre de 2009

Easy Peasy (Fácil de Exprimir) es el nombre de la distribución de Linux, optimizado para el UMPC (Computador Personal Ultra Portátil por sus siglas en ingles) de Eee PC de Asus.

Ubuntu Eee

Inicialmente conocida por "Ubuntu Eee", Easy Peasy es un proyecto independiente y no está afiliado a Cannonical / Ubuntu, ni a Asus / EeePC, el proyecto ha sido renombrado de "Ubuntu Eee" a "Easy Peasy" para evitar problemas con tales marcas registradas.

Ubuntu Eee estaba basada en Ubuntu 8.04.1 combinado con Netbook Remix, lo que le ofrece un interfaz diseñado para pantallas de tamaño reducido. Además, han sustituido algunas de las aplicaciones que vienen por defecto, por ejemplo en lugar de Ekiga viene con Skype.

Su objetivo

Es ofrecer un sistema optimizado para su uso en ultraportátiles, es decir, en ordenadores con unas prestaciones reducidas: procesadores menos potentes, pantallas más pequeñas,... Por ello, incluye un núcleo compilado expresamente para ello y un sistema de arranque mucho más veloz.

24 de agosto de 2009

A inicios de mes la Comisión Federal de Telecomunicaciones (FCC) mandó cartas a Apple/AT&T/Google sobre el rechazo de la AppStore de las aplicaciones relacionadas con Google Voice, y sorprendentemente Apple ha sido la primera en contestar.

Además, de manera pública. En su sitio web ha publicado una carta/nota de prensa en la que responde a esas preguntas sin tapujos, directa y firmemente.

22 de agosto de 2009

La Linux Fundation acaba de publicar un interesante informe sobre el estado del desarrollo del kernel de Linux, con completas estadísticas en las que puede verse qué empresas aportan más código al kernel, qué desarrolladores han creado más líneas de código, o qué jefes de grupo controlan mayores porciones del núcleo del sistema.

La empresa que más aporta

En cuanto a empresas, la que más aporta es ninguna. Un 18 por ciento de las líneas de código han sido creadas o corregidas por programadores particulares, no afiliados a ninguna empresa concreta.

A continuación, se encuentran Red Hat (12 por ciento), IBM (7.6 por ciento), Novell (con casi idéntico porcentaje) e Intel (con un 5.3 por ciento).

Otras empresas listadas son Oracle, la propia Linux Fundation, SGI, Fujitsu, HP, Google, Nokia, AMD o Sun. También hay que destacar a otras entidades menos conocidas y que sin embargo están muy implicadas en el desarollo del núcleo, como Academia o MontaVista.

Y en cuanto a jefes de equipo, entre Andrew Morton, Ingo Molnar y David S. Miller revisan el 30% de las línas de código, aportadas por las más de 1000 personas que han colaborado en la versión 2.6.30.

El tamaño del kernel

También se recogen en el informe datos reveladores sobre el tamaño que tiene ya el kernel. Con crecimiento neto de 7000 líneas al día, y 2800 más modificadas, el núcleo supera ya los 11 millones de líneas de código.

Más de 1000 personas trabajando de forma gratuita (que no necesariamente altruista) para que decenas y decenas de distribuciones funcionen a la perfección, y estén accesibles libremente a millones y millones de usuarios.


Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

19 de agosto de 2009


Un grupo de ingenieros de Google, por iniciativa propia, ha decidido trabajar en WebFinger, una renovación del protocolo Finger.

Durante los primeros días de la World Wide Web, el protocolo Finger se utilizaba para identificar a la gente por su dirección de corrreo, pero con el tiempo dejó de utilizarse.

Sin embargo, la necesidad de un identificador que pueda ser único para múltiples servicios sigue ahí. Ahora, estos ingenieros han presentado un proyecto basado en la idea de ese protocolo, y van a contar con más apoyo por parte de la compañía.

Estándares como OpenID no han terminado de consolidar de forma generalizada, pese a que su manejo es sencillo. Si al usuario medio le choca identificarse mediante una URL, el usar una dirección de correo sí que le resulta más común, y además todo el mundo tiene una propia.

Pero una dirección de correo es sólo una cadena de texto. La idea de WebFinger es que sea mucho más, y tenga asociada gran cantidad de información, de tal forma que no sea sólo un identificador, sino también una especie de tarjeta de presentación.

Según la web del proyecto, esto es lo que contendría la información de tu WebFinger:

13 de agosto de 2009

Un juez ordenadó el martes detener la venta de Microsoft para Word, uno de sus principales productos, debido a una infracción de patentes.

El juez Leonard Davis, de Texas, prohíbe vender en los Estados Unidos, o importar hacia allá, cualquier producto de Microsoft Word que tenga la capacidad de abrir archivos .XML, .DOCX o .DOCM, todos ellos con el denominador común de utilizar XML personalizado.

En marzo de 2007, la compañía i4i demandó a Microsoft por una infracción sobre su patente de 1998 “sistema de documento que elimina la necesidad de insertar manualmente códigos de formato”.

XML

XML es “lenguaje de descripción de páginas”, y permite crear etiquetas de formato para mostrar y editar documentos, por lo que el juez ha decidido que Word 2003 y 2007 infringen esa patente, y condena a Microsoft a pagar 200 millones de dólares en compensación, no venderlos, y a otros 77 millones por otros conceptos.

Microsoft que ha defendido las patentes de software, ahora ve como una compañía patenta algo que ya existía (el primer borrador de trabajo de XML es de noviembre de 1996) y utiliza una corte de abogados para ganarse unos cuantos millones. Los de Redmond, mientras tanto, apelarán la sentencia.



Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

10 de agosto de 2009

El ataque DDOS simultáneo que sufrieron ayer Twitter, Blogger, Youtube, Livejournal y el propio Facebook, tuvo el fin de acallar a un blogger de Georgia llamado Cyxymu, según Max Kelly, jefe de seguridad de Facebook.

Al parecer este ataque sería causado por una fuente rusa desconocida, en una versión cibernética del conflicto Georgia-Rusia que acaparó nuestras televisiones una semana para ya nunca volver a oír de él.

El blogger en cuestión tenía un blog activo en Livejournal, así como respectivas cuentas más o menos activas en los servicios anteriores. Sin duda, los rusos no estaban al tanto de las consecuencias de un ataque así, que a partir de ahora tendrá una cobertura internacional más amplia que la que un blogger desconocido pudiera haberle dado jamás. Ayer, sin ni siquiera saber el motivo, la noticia fue cubierta por medios de todo el mundo, especialmente de EEUU.

3 de agosto de 2009

El organismo que supervisa el mercado de las telecomunicaciones en Estados Unidos, FCC, ha abierto una investigación sobre la expulsión de Google Voice de la AppStore por parte de Apple, según rumores por presiones por parte de AT&T.

La FCC ha enviado cartas a Apple, AT&T y Google con preguntas para aclarar el asunto y el grado de implicación de cada empresa.

Carta a Apple

A Apple se le pregunta directamente que cuáles fueron los motivos para rechazar Google Voice, así como el resto de aplicaciones asociadas ya aprobadas y que fueron expulsadas. Se le requiere aclarar si actuó sola o en acuerdo con AT&T, y si fue así, cuáles eran los términos y si había obligaciones contractuales al respecto. A continuación se pregunta si AT&T juega algún papel en la decisión de qué aplicaciones pasan a la AppStore.

Y no falta la que muchos ya se han hecho: ¿en qué se diferencia Google Voice de otras aplicaciones VoIP que sí han sido aprobadas? Y con un matiz, que demuestra que algo sospechan: ¿alguna de esas funciona sobre la red 3G de AT&T?

En la FCC se preguntan si Apple ofrece una lista pública de aplicaciones rechazadas, con sus motivos, y si hay unos estándares para aprobarlas, así como el proceso que se sigue y el porcentaje de rechazos.

FCC letter to Apple

Carta a AT&T

A AT&T le hacen nueve preguntas. Le preguntan sobre su rol en el rechazo de Google Voice. Es más, le piden que si Apple les consultó, les envíen copia de esas comunicaciones.

Para aclarar las sospechas, solicitan a AT&T que expliquen las diferencias entre Google Voice y cualquier otra aplicación de VoIP que se use sobre su red, corra o no sobre iPhone.

También quieren saber si conocen la lista de aplicaciones rechazadas, cuáles se diseñaron para usarse sobre la red de AT&T, qué papel jugaron en su rechazo, si tienen algún punto en sus contratos con Apple que afecte a estas decisiones…

¿Hay algún punto del contrato con los clientes que restrinja el uso de aplicaciones de terceros? ¿Se informa al respecto al cliente? ¿Cómo aprueba AT&T dichas aplicaciones? ¿Permiten el uso de otras aplicaciones similares a Google Voice?

Y sobre el caso concreto de iPhone, están interesados en si otros dispositivos diferentes sí pueden usar Google Voice sobre su red. Ya deben saber la respuesta, porque cierran pidiendo explicaciones de por qué se permite su uso sobre BlackBerry, por ejemplo.

Desde AT&T ya han comentado que no participan en la aprobación de aplicaciones para la AppStore, y que los usuarios pueden usar las aplicaciones que quieran sobre su red, aunque ellos no las hayan aprobado.

Carta a Google

A Google les preguntan sobre las características de Voice, y sobre qué han alegado Apple o AT&T sobre su rechazo, así como de otras aplicaciones rechazadas, citando Latitude. Además, les piden una lista de aplicaciones que sí les han aprobado, que servicios ofrecen, y si tienen alguna similitud con algún servicio de Apple o AT&T.

Piden una lista de aplicaciones propuestas que aún no les hayan aprobado. Es curiosa la pregunta de sí hay algún medio para que los usuarios accedan a Voice a pesar de no estar en la AppStore... (Jailbraking)

También piden información sobre los criterios para aprobar aplicaciones para Android, porcentaje de rechazos, motivos, etc.

FCC Letter to Google

La certeza de la FCC

Las cartas parecen decir “sabemos de qué va todo esto”. Muchas preguntas son similares en las tres cartas, como para cotejar las respuestas.

La AppStore parece que va a tener un mal final y quieren evitar que sea tan cerrada, y de ahí la pregunta a Google sobre Android.

Parece que Apple va a arrepentirse del caso Google Voice durante un buen tiempo…



Deja tu Comentario.



Quieres leer más post como éste???...suscribete aquí!!!

30 de julio de 2009

Las próximas versiones “Karmik Koala” de Ubuntu y de Kubuntu, se lanzarán el 29 de Octubre, apenas una semana después del lanzamiento previsto de Windows 7. Las últimas ediciones de ambas distros publicadas por Canonical son las terceras alfas de cada uno, por lo que por ahora sólo están pensadas para desarrolladores y cazadores de bugs.

Ubuntu 9.10 Alfa 3

Pero ya tenemos algunos cambios y novedades interesantes para comentar. Ubuntu 9.10 Alfa 3 incluye la última versión de Gnome y del kernel de Linux. Se ha actualizado GRUB, el gestor de arranque, a GRUB2, se ha cambiado el sistema de archivos por defecto a ext4, y se ha añadido una nueva arquitectura del driver de vídeo de Intel. También se cae Pidgin como cliente me mensajería por defecto, en favor de Empathy.