jueves, 21 de marzo de 2013

Los sistemas de almacenamiento

En esta entrada hablaremos de los sistemas de almacenamiento, ya hemos hablado de la información  ahora veremos cómo almacenarla.


Algunos de los sistemas de almacenamiento más destacados son los discos duros, son sistemas que almacenan información y aunque el sistema se apague esos datos no se pierden, tienen gran capacidad. Al contrario que las memorias RAM que tienen una mayor velocidad pero son volátiles, una vez que apagamos el equipo perdemos esa información. Ambos sistemas de almacenamiento han aumentado sus capacidades los discos duros, actualmente los más comunes son los de 500 Gb y 1 Tb, mientras que las memorias RAM suelen ser de 4Gb. Entorno al año 2005 sus capacidades eran de 80 Gb y 512 Mb. La necesidad de crear sistemas con más capacidad,  no es debido a un aumento de la información solamente, sino también a una mejor resolución de fotos, vídeos,...  

Otros sistemas de almacenamiento son las memorias USB, estas memorias son muy útiles debido a su tamaño reducido y a que pueden ser grabadas y leídas tantas veces como deseemos.


Los sistemas de almacenamiento de los que he hablado hasta ahora son físicos  pero en la actualidad lo físico está dando paso a lo virtual, y es un claro ejemplo el tema de los SSD, discos duros de estado sólido, es decir, discos duros muy rápido en cuanto a velocidad de escritura y sobre todo de lectura, pero de capacidades cada vez más pequeña y esto es debido a la aparición de Internet, o mejor dicho a la nube en Internet  conocido en inglés como Cloud, cada vez tenemos almacenada más información en Internet y menos en un dispositivo físico, esto nos facilita el acceso a nuestros archivos desde cualquier equipo, y nos ahorra costes en memorias físicas ni la necesidad de tener que portar un dispositivo, el cual puede extraviarse o estropearse, además de tener un precio mayor. 

Algunos empresas que ofrecen este servicio, su capacidad y características según la página soxialmedia.com en Mayo de 2012 son las siguientes: 


Pero esto también tiene algunos inconvenientes como es la necesidad de tener acceso a Internet para poder ver los datos o un problema de seguridad, a la hora de saber que pueden hacer con esos datos. Una empresa alguno de sus informes no se atreverán a colgarlos en la nube ya que el ataque a ese servidor pondría en manos no autorizadas dichos archivos. En el acceso a Internet es un inconveniente menor ya que cada vez contamos con una mayor cobertura de Internet, pero la velocidad es importante considerarlo a la hora de tener que subir o descargar ficheros. 

Los ataque a través de Internet es un tema serio a tratar, ya que a medida de que la seguridad avanza, vemos cómo avanza también el poder de los ataques, Opina ¿Algún día Internet será seguro al 100%, y los usuarios podrán utilizarlo como un sistema de almacenamiento fiable?

¿Y cómo organizamos toda esta información que generamos y que queremos tener acceso? Pues para ordenar estas grandes cantidades de información  se crean las bases de datos, esto nos sirve para tener acceso a los datos de una forma organizada y rápida y que lleva sirviendo a las corporaciones muchos años para tener una organización dentro de ella.

Las bases de datos de la actualidad son complejas, pero con interfaces muy sencillas para los usuarios.

En una base de datos almacenamos información muy importante, por tanto el impedir acceso no autorizados, es algo imprescindible, tanto para impedir acceso de fuera de una corporación como internamente, para mejor esto y hacer más robustas, fiables y tener menos redundancia se crea los SGBD (Sistemas Gestores de Bases de Datos).  Entre las grandes distribuidores de SGBD encontramos a Oracle y SQL, software propietario y libre respectivamente.

viernes, 8 de marzo de 2013

Los 5 lenguajes más actuales

Desde que a finales de la década de los 40 a Von Neumman  se le ocurrió la idea de crear una máquina que solo entendía 0 y 1, como las actuales, los humanos hemos tratado de comunicarnos con ellas, primero creando el lenguaje máquina, en 0 y 1, y después cada vez buscando un lenguaje más parecido al nuestro, lo que llamamos lenguajes de alto nivel. La máquina los entiende porque son traducidos mediante intérpretes o compiladores.

Se siguen creando lenguajes nuevos que tienen como objetivo comunicarse cada vez de forma más sencilla con la máquina, esto se está consiguiendo, pero cada vez los pasos son mas pequeños, porque mientras más nos alejamos del lenguaje máquina, osea de los 0 y 1 (que no olvidemos nunca que es lo único que entiende el ordenador), los programas serán menos eficientes y necesitaremos máquinas más potentes. 

Pero dejemos el futuro, en la actualidad son muchos los lenguajes de programación usados, dependiendo del propósito para el que vaya destinado deberemos estudiar el mercado buscando el más recomendable.

Para facilitar el trabajo, hoy hablaré  de 5 lenguajes de los más utilizados por la familia informática. Entre ellos encontramos varios consolidados como números uno desde varias décadas,  otros que llevan menos en el mercado pero ya son conocidos por todos, como es Java, y os hablaré de uno que según algunos ranking ha ascendido desde la posición 24 a la 12 en tan solo meses, y por ese gran boom me parece interesante comentarles ¿Sabéis ya de cual habló?.


Empezaré hablando por el líder del sector durante dos décadas, el Lenguaje C. Es un lenguaje de programación estructurado de propósito general, es considerado de medio nivel; se caracteriza por su velocidad de ejecución y robustez. El llevar tantos años en uso, conlleva a que haya gran cantidad de programas ya realizados en C, de esta forma podemos encontrar gran cantidad de librerías contrastadas

Tras la creación del lenguaje C, y viendo la fama cosechada, se crea el lenguaje C++, este lenguaje se considera un lenguaje multiparadigma (programación estructurada y programación orientada a objetos).
C++ no es considerado el mejor lenguaje para programación orientada a objetos, pero es muy usado por permitir objetos y además programación estructurada. 


 Java, a diferencia de C++ si es  un lenguaje puramente orientado a objetos. Se fijó mucho en otros lenguajes como C++ para hacerlo más fácil de usar y coger lo mejor de otros lenguajes. Su principal característica es ser multiplataforma, es decir, compatible para una gran cantidad de sistemas operativos, gracias a su máquina virtual Java. Esta máquina también sirve para hacer restricciones a las ejecuciones de programas para que tengan mayor seguridad que otros lenguajes.
El permitir crear applets hace a Java muy útil para páginas web dinámicas.
La gran cantidad de librerías que Sun ofrece al usuario hace que podemos crear una mayor variedad de cosas con este lenguaje.

No puedo dejar de mencionar un lenguaje que fué diseñado para desarrollar páginas web dinámicas como es PHP, es un lenguaje de programación de uso general de código del lado del servidor, que permite el acceso a base de datos. Es un lenguaje muy fácil de aprender para programadores que hayan trabajado con C o algún lenguaje derivado de él, pero uno de sus problemas es ser un lenguaje interpretado y eso lo hace más lento que algunos de sus competidores de bajo nivel, aunque con las máquinas que encontramos en el mercado la diferencia es inapreciable. 

Hago un inciso antes de hablar de el ultimo lenguaje. Cuando hablamos de lenguajes más eficientes a otros, muchas veces la diferencia entre uno y otros, son segundo o milisegundos en una aplicación cotidiana, pero que se puede convertir en períodos más largos de tiempo en programas mas robustos. 

Para ir acabando la entrada al blog, hablaré de un quinto lenguaje de programación  que como ya he dicho no se encuentra actualmente entre los 5 más usados, pero para su corta vida en el mercado, se está abriendo un hueco importante, y este lenguaje es VisualBasic.net. Es un lenguaje de programación orientado a objetos,  considerado como una evolución de Visual Basic creado en la plataforma de Microsoft.net. Los programadores que utilizan este lenguaje suelen trabajar sobre el entorno de desarrollo integrado de Microsoft Visual Studio; estos entornos permiten a los programadores crear aplicaciones y aplicaciones web en un entorno que soporte la plataforma .NET. Así se pueden crear aplicaciones que se comunican entre estaciones de trabajo, páginas web y dispositivos móviles.

Opina, ¿Qué lenguaje consideras más actual?