domingo, 26 de febrero de 2012

Hackers a fondo.

Pase un tiempo meditando de que temas hablar, aunque tengo muchas ideas pensé que un tema que llamaría mucho la atención es sobre los "Hackers" aunque muchos medios de comunicación utilizan mal el nombre e incluso muchas personas, este termino últimamente se usa mucho mas con la llegada de "Anonymous" (grupo de Hackers y seguidores de todas partes del globo terráqueo que luchan por las injusticias).
A pesar de que en la actulidad se utiliza mucho este termino no es nada nuevo el termino viene desde los comienzos de las computadoras.

¿Que es un Hacker?
No existe una traducción exacta de la palabra hacker. Muchas veces las personas usan el termino para nombrar a cualquier persona que logra romper la seguridad de un software o sistema.

El verdadero termino se originó en el TMRC ( un Club de constructores de trenes a escala ) del Instituto Tecnológico de Massachusetts, aunque generalmente se le ha asociado a los programadores de este mismo instituto, y en menor medida a los técnicos telefónicos, por la forma en que reparaban las cajas de conexiones telefónicas ( mediante un golpe o hack ).

Por desgracia, en la actualidad el termino hacker se asocia precisamente con lo contrario de lo que significa, con las personas que realizan ataques dañinos contra sistemas informáticos ( el termino mas adecuado es crackers ).

domingo, 12 de febrero de 2012

ASP.NET: Manual de Desarrollo de Sitios y Aplicaciones Web Dinámicas

ASP.NET: Guía de Desarrollo de Sitios y Aplicaciones Web Dinámicas
PDF | Spanish | 4.74 MB | 73 Páginas | NO ISBN | Creative Commons | Fernando Giardina | Abril 2011

Descripción:

La Guía ASP.NET fue creada por el desarrollador argentino Fernando Giardina quien a través de 10 capítulos (73 páginas en .PDF) nos guía en el desarrollo de sitios y aplicaciones web dinámicas.
ASP.NET es un modelo de desarrollo web unificado creado por Microsoft para el desarrollo de sitios y aplicaciones web dinámicas con un mínimo de código, forma parte de .NET Framework que contiene las librerías necesarias para la codificación.
Con la Guía ASP.NET conocerás los requerimiento mínimos para programar, desarrollarás una primera aplicación, ejecutarás código Javascript, aprenderás sobre los controladores de servidos y eventos. Además, verás la utilización de estilos (CSS), manejo de WebForms, la estructura de clases y objetos. Finalmente, utilizarás Master Pages, Ajax y no te olvides que en la versión en línea puedes plantear tus dudas al autor. 

jueves, 9 de febrero de 2012

Stephen Hawking y Leonard Mlodinow – El Gran Diseño, 1ra ed. (2010)

Stephen Hawking y Leonard Mlodinow – El Gran Diseño, 1ra ed. (2010)
Varios formatos | 115 Mb | Español | Win/Mac | Origen: Estados Unidos | ISBN: 978-987-9317-24-2 | Editorial Crítica | Editorial Paidós | Género: Historia de la ciencia | Rar
Descripción:

El gran diseño (en inglés The Grand Design) es un libro de divulgación científica escrito por los físicos Stephen Hawking y Leonard Mlodinow, publicado en inglés por la editorial estadounidense Bantam Books el 7 de septiembre de 2010 -el 9 de septiembre en Reino Unido y en español por la editorial Crítica el 15 de noviembre de 2010. Los autores señalan que la Teoría del campo unificado (teoría basada en un modelo del principio del universo, propuesto por Albert Einstein y otros físicos para unificar dos teorías anteriores consideradas diferentes) puede no ser correcta. El libro examina la historia de los conocimientos científicos sobre el universo y explica la Teoría M de 11 dimensiones, una teoría que apoyan muchos físicos modernos.
Los autores también consideran que la invocación de Dios no es necesaria para explicar el origen del universo, y que el Big Bang es consecuencia única de las leyes científicas de la física. 
Nota especial: Los créditos del escaneo son anónimos. Los formatos de lectura no incluyen imágenes, son ripeados.

martes, 7 de febrero de 2012

Peticiones de tutoriales o ideas.

Saben mi blog a sido creado con el afan de poder aportar un granito de arena a este mundo tecnológico tan grande y la ciencia detrás de todo eso. Los algoritmos o diferentes formas de resolver el mismo problema pueden ser mejorados de muchas maneras.
Hay muchas personas que todavía se están iniciando en este mundo de la programación, sea en el lenguaje de programación que sea "el conocimiento es libre" y mi objetivo es ayudar a las personas, incluso si desean algún libro en especifico estaré publicando buenos libros de Informatica y creando entradas para hacer debates de dichos libros y temas específicos.

viernes, 3 de febrero de 2012

La importancia de los "Algoritmos".

No sabía por donde empezar así que utilizaré el concepto del libro "Introduction to Algorithms" cuyos autores son Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest y Clifford Stein, más conocido como el "CLRS" por las iniciales de sus autores. En este libro nos dicen que "un algoritmo es un procedimiento computacional bien definido que toma algún valor, o conjunto de valores, como entrada y produce algún valor, o conjunto de valores, como salida. Un algoritmo es en consecuencia una secuencia de pasos computacionales que transforman la entrada en salida".

Antes que los lenguajes de programacion
se crearan todo era programado en base
de 0's y 1's.
Los algoritmos son muy importantes a la hora de programar ya que son los pasos exactos para resolver un problema. Esto quiere decir que es un procedimiento computacional bien definido que requiere de datos de entrada y produce un valor como salida.

Hoy en día existen muchos algoritmos ya diseñados pero esto no quiere decir que no podamos crear los nuestros mas optimizados, más rápidos, para resolver un problema comunes como los algoritmos de ordenamiento: Selección, Burbuja, Merge, entre otros. Cuando necesitemos utilizar algunos de estos algoritmos tenemos que saber cual implementar en nuestro software, ya que si elegimos el incorrecto nuestro software puede ser inestable e ineficiente.

"Si usted es rico, y no conoce mucho sobre algoritmos, tal vez no esté preparado para competir con alguien pobre que sepa mucho sobre algoritmos."

En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemática son el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.

miércoles, 1 de febrero de 2012

Como alargar la vida de la Baterias de nuestras laptop.

Revisa al revés de tu batería y ve la información que dice
te servirá, además puedes consultar información impor-
te en internet.
Algunos dirán porque el nombre del blog "Top Coding" y nos hablan de baterías?, pos yo les digo el 78% de personas utilizan computadoras portátiles cada una posee baterías y sin computadora la gente no tendria donde escribir sus algoritmos, pseudocodigos o flujogramas, o incluso compilarlos así les enseño primero como pueden hacer que su batería les duro mucho, si alguien no quiere simplemente no lo lea, empecemos.

Como muchos ya saben son muchos los dispositivos que actualmente utilizan baterías de ión litio (móviles, portátiles, consolas, reproductores mp3, receptores GPS, etc.) En contra de lo que nos enseñaron con los primeros móviles donde las baterías eran de níquel, ahora todo ha cambiado y a las empresas les interesa que la gente siga creyendo lo mismo, ya que las baterías de ión litio suelen tener de unos 300 a 400 ciclos de carga/descarga completa (es decir, de 0 a 100% de carga).

Evita en lo posible que tu batería se descargue por completo con frecuencia.

En contraposición a la creencia general sobre el cuidado de baterías, dejar que tu batería se agote del todo antes de ponerla a cargar hace que ésta se vaya deteriorando poco a poco. Para las baterías de ión de litio es mucho mejor hacer recargas frecuentemente, sin que se hayan descargado demasiado. Lo ideal será recargar por completo nuestras baterías cuando éstas se encuentran al 50% -60% de su capacidad. Para poneros un ejemplo, yo sigo esa política con mi PDA y portátil, durándome unos 4 días (dependiendo del uso, claro. Puede ser menos, o incluso más de 4 días) en llegar al 50%-60% de su capacidad. Es entonces cuando vuelvo a cargarla hasta el 100%. Nunca la he tenido a menos del 50% de capacidad.

Baterías: Comparativa Litio, NiMh, NiCd, LiPo, Plomo.

Talvez mi primer entrada en mi Blog no tenga mucho que ver con codigo o algún lenguaje de programación pero si tiene que ver con las computadoras portatiles ya que estas poseen bateria para alimentarse. Así que mi primer entrada estara con relación a la segunda ya vrán, empecemos!.

Esta es como una Introducción al siguiente post (Como alargar la vida de nuestras Baterias de Li-ion.). Últimamente he estado buscando un poco acerca de baterías y he encontrado cierta información que puede ser interesante a la hora de decidirse por una tecnología u otra:

- NiCd: Tienen una ‘moderada’ densidad energética. Se usa en aplicaciones donde la vida de las baterías, una alta tasa de descarga, y un amplio rango de temperatura sean factores importantes. Contienen metales tóxicos.

- NiMh: Tienen una densidad energética mayor que las baterías de NiCd. Pero esto no es gratuito ya que su vida es, por tanto, más corta. No contienen metales tóxicos y han sido ampliamente usadas en teléfonos móviles, portátiles, etc. hasta ser casi reemplazadas en sus principales aplicaciones por baterías de ion de Litio.

- Lead-acid (Plomo): Son las más económicas y son adecuadas para aplicaciones donde se consume mucha energía y el peso no es un problema. Es una opción extendida para sillas de ruedas, como fuente para sistemas de alimentación ininterrumpida (SAI/UPS), luces de emergencia, …

- Li-Ion: Ofrecen una alta densidad energética y un reducido peso. Requieren un circuito de protección para limitar la corriente y la tensión por motivos de seguridad. Muy extendidas en teléfonos móviles y portátiles habiendo contribuido notablemente a reducir su peso. Esta tecnología también ha permitido el desarrollo de baterías de alta descarga para aplicaciones que requieran mucha energía en un corto período de tiempo o aplicaciones médicas.