Algunas claves a la hora de diseñar nuestros datos: Schema Design con MySQL vs Schema Design con MongoDB

Think Different WordleEn estos últimos tiempos, se está viendo que hay un emergente mundo y un crecimiento de soluciones de base de datos y yo, como desarrollador, me estoy haciendo muchas preguntas, tales como: ¿Debo usar SQL o NoSQL? ¿cuándo debo usar una u otra? ¿Cuál es la diferencia? ¿Cuál debo utilizar para mi proyecto? ¿Puedo o debería utilizar los dos? son preguntan cuando te cuestionas cosas como: déjalo así “es que esto se ha hecho siempre de esta forma”. Pienso que tenemos la obligación, como desarrolladores, el saber las diferentes posibilidades disponibles para obtener los mejores resultados de nuestros proyectos y esto quedará reflejado en nuestros clientes.

En la mayoría de los proyectos estamos utilizando las bases de datos relacionales como algo implícito en nuestros proyectos, no quiero decir que esté mal, pero tampoco creo que esté bien, si se ha puesto implícitamente una base de datos relacional. Además, el cambio de paradigma y pensamiento a la hora de utilizar soluciones NoSQL como MongoDB, nos trae retos muy interesantes.

Uno de los retos a los que me enfrentado cuando he comenzado a utilizar una base de datos NoSQL, es el diseño del esquema, a pesar que una NoSQL como MongoDB es Schemaless, pero esto no quiere decir que no necesites pensar en un esquema. Pues bien, si mientras que en el mundo relacional, la normalización es desde dónde siempre se arranca la manera de diseñar la funcionalidad de nuestro proyecto, ahora nos tenemos que plantear el ¿cómo debemos diseñar nuestras colecciones y documentos, al crear una nueva aplicación de MongoDB?
Seguir leyendo

Anuncios

Se habla de la forma y no del fondo de ver televisión por intermet

TELEVISIONHasta ahora, lo único que se comenta, es la forma de ver la televisión por Internet, por ejemplo, es la revolución, la televisión ha muerto y que la televisión por Internet destierra a la televisión que actual y otras muchas más, pero yo personalmente pienso en dos grandes vertientes, la primera gran vertiente es, la revolución de “televisiones que mezclan tecnología” conectando en un todo y aplicaciones de valor alrededor de dicha tecnología dando una experiencia de uso, intentando llevarnos a una experiencia  más social que no sea únicamente ver un contendo en cualquier tipo de dispositivo, sino que nos aporte una experiencia social con nuestras redes “estar conectados”  y la segunda gran vertiente es, “los contenidos audiovisuales”, pero distintos a los que hasta ahora estamos viendo en modelos como youtube u otros contenidos de películas.

Esto confronta dos modelos muy distintos y que están condenados a unirse, pero son dos modelos tremendamente opuestos, el nexo de unión entre ambos mundos son los contenidos y no la tecnología que ésta, únicamente nos acerca y nos facilita el acercamiento dónde, cuándo y cómo. Ahora, las televisiones disponen de sus contenidos para entretener y son lo que son, para algunos buenos, para otros malos, es lo que hay. Pero como digo son contenidos, que es lo más complicado de hacer y rentabilizar. Pero tenemos que pensar en que si no pagas en Internet, te conviertes en producto.

Seguir leyendo

La Evolución del Desarrollo de Software

Luna de San José

Quiero comenzar con este nuevo apartado de “Desarrollo de Software” que llevo ya tiempo pensando en escribir sobre ello, algunas ideas sobre mi visión del tema, cómo deberíamos verlas y observar lo que tenemos actualmente, pero sobre todo, la forma de hacerlo, ya que está íntimamente ligado a mi ADN, la programación y la creación,  yo personalmente, no concibo la programación sin una dosis creativa.

Seguir leyendo