The real cloud / La verdadera nube


image
Cloud servers / servidores en la nube

A new and improved service is working for us, the cloud.  We can store any information (documents, pictures, data, etc. ) How this works? Some big company has big internet servers in some big place allowing us “for free” create an account and start to share our information with “ourselves” or with the public. Also they have paid services for companies or invididuals that wants more, more? privacy. But guess what, that information now belongs to those servers. If any government due “security reasons” need that, who can say no? Having said that now we can remember: “under this society nothing is free…”
You don’t need to be scientist to understand that any data you save on computers that you don’t own, you cannot control what is going down, and even sometimes what is going up. First time that the biggest companies were inquired about how much information of the people they shared with government they said 0%, days later they said maybe only 10% and finally they said only what government asked for….
So any cloud services have the same vulnerability, thinking on that, think why are you paying to store your valuable information on the cloud? Certainly they would be paying you for any bit you put online. This epoch is all about information, that’s why a company that allows you “for free” send messages between phones can convert from night to day in one of the most expensive business in the world.
These cloud servers is nothing more than computers in some big cooled room located in any place on earth, they can be even behind yourself.
________________español
Un nuevo y mejorado servicio está trabajando para nosotros, la nube. Podemos guardar cualquier información (fotos, documentos, datos, etc. ) Como trabaja esto? Una gran compañía tiene grandes servidores de Internet en un gran lugar permitiéndonos “gratis” crear un usuario para iniciar a compartir nuestra información con “nosotros mismos” o al publico. Además cuentan con servicios de pago para quienes quieren más, más? privacidad. Pero adivina que, esa información ahora pertenece a esos servidores. Si cualquier gobierno debido a “razones de seguridad” la necesitan, quien puede decir que no? Con eso dicho recordemos: “en esta sociedad nada es gratis…” no necesitas ser un científico para entender que cualquier información que guardamos en un computador que no nos pertenece, no podemos controlar que bajan e incluso algunas veces, que suben. La primera vez que le preguntaron a las grandes compañías que tanta información de la gente habían compartido con el Gobierno dijeron que 0%, unos días después que solo el 10% y finalmente que solo lo que el gobierno les pidió… Así que cualquier servicio de la nube tiene los mismos riesgos, sabiendo eso piense por que tiene que pagar por guardar su valiosa información en la nube? De hecho ellos deberían pagarle por cada bit que ponga en linea. Esta época es pura información es por eso que una empresa que lo deja enviar “gratis ” mensajes entre teléfonos puede convertirse de la noche a la mañana en el negocio más caro del mundo.
Estos servidores en la nube no son más que computadores en una sala gigante enfriada, localizada en cualquier parte del mundo puede incluso estar detrás de usted.

SQL para Multiples filas en una sola columna


Cuando necesitamos unir el resultado de múltiples filas en una sola columna tenemos una solución práctica con XML PATH y STUFF. Funciona desde SQL Server 2005 en adelante.

Ejemplo con 1 tabla Clientes

Clientes
Clientes

Mediante una intruccion select queremos obtener esto:

Resultado
Resultado

Simplemente escribimos:

SELECT a.ciudad
	,stuff((
			SELECT ', ' + b.Nombre
			FROM #Clientes b
			WHERE b.Ciudad = a.Ciudad
			FOR XML PATH('')
			), 1, 1, '') Nombres
FROM #Clientes a
GROUP BY a.Ciudad
ORDER BY a.Ciudad

Ahora con 2 tablas, añadimos una tabla Ciudades con la descripción de cada ciudad:

Ciudades
Ciudades

Ahora vamos a mostrar el siguiente resultado:

Resultado 2 tablas
Resultado 2 tablas

Escribimos la siguiente instrucción:

SELECT a.Cod
	,a.Descrip
	,stuff((
			SELECT ', ' + b.Nombre
			FROM #Clientes b
			WHERE b.Ciudad = a.Cod
			FOR XML PATH('')
			), 1, 1, '') Nombres
FROM #Ciudades a
GROUP BY a.Cod
	,a.Descrip
ORDER BY a.Descrip

Para entender como funciona debemos entender primero como funciona el XML PATH, para eso escribamos lo siguiente:

SELECT Nombre
FROM #Clientes
FOR XML PATH('')

Esto nos devuelve un XML de dicha columna, ahora lo que hacemos mediante el STUFF es concatenar el resultado de cada campo y separarlo por comas. A continuación el script para crear las tablas:

CREATE TABLE #Clientes (
	Cod VARCHAR(3)
	,Nombre VARCHAR(4)
	,Ciudad VARCHAR(6)
	)

INSERT INTO #Clientes (
	Cod
	,Nombre
	,Ciudad
	)
VALUES (
	'001'
	,'John'
	,'Cali'
	)

INSERT INTO #Clientes (
	Cod
	,Nombre
	,Ciudad
	)
VALUES (
	'002'
	,'Mago'
	,'Cali'
	)

INSERT INTO #Clientes (
	Cod
	,Nombre
	,Ciudad
	)
VALUES (
	'003'
	,'Soga'
	,'Cali'
	)

INSERT INTO #Clientes (
	Cod
	,Nombre
	,Ciudad
	)
VALUES (
	'004'
	,'Mega'
	,'Cali'
	)

INSERT INTO #Clientes (
	Cod
	,Nombre
	,Ciudad
	)
VALUES (
	'005'
	,'Luga'
	,'Bogota'
	)

INSERT INTO #Clientes (
	Cod
	,Nombre
	,Ciudad
	)
VALUES (
	'006'
	,'Maka'
	,'Bogota'
	)

CREATE TABLE #Ciudades (
	Cod VARCHAR(6)
	,Descrip VARCHAR(40)
	)

INSERT INTO #Ciudades (
	Cod
	,Descrip
	)
VALUES (
	'Cali'
	,'La Capital mundial de la Salsa'
	)

INSERT INTO #Ciudades (
	Cod
	,Descrip
	)
VALUES (
	'Bogota'
	,'2600mts mas cerca de las estrellas'
	)

3D printing / Impresión 3D


What is 3D printing? Simply, this means create 3D models from scratch using specific materials like plastic, polyester, pvc, acrylic, metals…. How this works? using a computer program you can specify to the printer what model must be printed (can be almost any material product for instance spoon, fork, knife, plate, cup, box, table, chair, square, etc., even prosthesis), then the model will be created by adding layers with the melted solution from the raw materials in use. Why the boom of this 3D printing? because now is available for everyone with enough money to buy a 3D printer (starting at $3,000USD). Before this technology was only available for big companies. Check the following video that shows how to create a whistle using a regular 3D printer. If you saw the “replication machine” in Star Trek series, this is the beginning of that machine.

¿Qué es la impresión en 3D? Simplemente, esto significa crear modelos 3D a partir de cero, utilizando materiales específicos como el plástico, poliéster, PVC, acrílico, metales …. ¿Cómo funciona esto? utilizando un programa de ordenador que puede especificar a la impresora qué modelo deberá ser impreso (que puede ser casi cualquier producto material por ejemplo una cuchara, tenedor, cuchillo, plato, copa, caja, mesa, silla, cuadrado, etc., incluso prótesis), entonces el modelo se creará mediante la adición de capas utilizando la solución fundida de las materias primas utilizadas. ¿Por qué el auge de esta impresión en 3D? porque ahora está disponible para todo el mundo con el dinero suficiente para comprar una impresora 3D (Iniciando a más o menos USD $3,000). Antes de esta tecnología sólo estaba disponible para las grandes empresas. Compruebe el siguiente video que muestra cómo crear un silbato utilizando una impresora normal en 3D. Si usted vió la “máquina replicadora” de la serie viaje a las estrellas (Star Trek) esto es el comienzo de esa máquina.

Administración de Calidad en Software / Software Quality Management


Calidad
Quality

Todas las empresas de desarrollo de software deben tener un protocolo de calidad que consiste en entregar al cliente siempre un software con la menor cantidad de errores posibles. Para lograr esto se han creado normas internacionales que nos ayudan a organizar los procesos de calidad y generar resultados un ejemplo son las normas de calidad ISO.

En resumen las normas de calidad son una guía para ayudarnos a realizar todas las actividades de una forma ordenada, clara y documentada. Lo cual traerá como resultado un beneficio para todos: los empleados porque su trabajo será mejor, los empleadores porque entregarán los productos a tiempo y finalmente los clientes porque recibirán sus pedidos con la calidad y eficiencia que se merecen.

El único problema radica en organizar a toda la empresa para que trabajen unidos utilizando estas normas, debido a que normalmente se usa mucha documentación, los que deben llenarlos se quejan porque este paso les quita mucho tiempo que podrían emplear en su labor ordinaria. Falso, llenar un documento ya sea en papel o electrónico no tiene por que ser traumático, sabiendo que cuando se finalice el trabajo vamos a tener un seguimiento completo de las actividades que realizamos. Pero para sentir esto, se debe promover adecuadamente la aplicación de la norma, es decir, el equipo de calidad debe ser integrado por personas con mucho tacto profesional y personal para que estimulen adecuadamente a todo el personal que debe utilizar las normas de calidad. Si el primer acercamiento al uso de las normas se torna muy complejo y/o tedioso esto hará que falle la implementación de las normas. Toda la empresa debe hacerse participe cuando se desea implementar estos procesos, porque todos deben saber y hacer lo que implica trabajar con calidad.

Si quiere entender un poco más de las normas de calidad lea este documento de los 8 principios de administración de la calidad: Quality Management Principles

*************English

All software development companies should have a protocol to deliver quality software to their customer with the least amount of mistakes. To achieve this there are international standards that help us organize quality processes and generate results. An example are ISO quality standards .

In summary, the quality standards are a guide to help us perform all activities in an orderly , clear and documented way . Which will result in a benefit for all: employees because their work will be better, employers because they will deliver products on time and eventually customers will receive their orders with the best quality and efficiency they deserve.

The only problem is to organize the entire enterprise to work together using these standards , since a lot of documentation is normally used, those people which must fill them, will complain because this step takes them a long time that could be used in their ordinary work. Well this is false, fill out a form either on paper or electronically does not have to be traumatic , knowing that when the work is finished we will have a complete monitoring our activities . But to feel this, must be adequately promote the application of the rule , ie , the quality team should be composed of people with a lot of tact and professionalism to adequately encourage all staff to use quality standards . If the first approach to the use of standards becomes very complex and / or tedious this will fail to implement the rules . The whole company should be involved when you want to implement these processes , because everyone should know what it means and work with quality.

If you want to understand a little more about the quality rules, please read this document about the 8 principles of quality management: Quality Management Principles

¿Que es Big Data? / What is Big Data?


BigData
Big Data

Seguramente al menos una vez a la semana escucha hablar de Big Data, pero no logra entender que es, porque no lo explican, solo lo nombran y ya. He recopilado de la forma más sencilla posible lo que explican algunas páginas web y este es el resultado:

Big Data son datos de compleja manipulación debido a su inconsistencia y/o combinaciones impredecibles. Pueden o no ser de gran tamaño, es decir una base de datos gigante no necesariamente es Big Data y una base de datos pequeña pero muy compleja puede catalogarse como Big Data.

Ejemplo de datos pequeños considerados Big Data, un avión puede llegar a tener 100mil sensores que se activan durante el vuelo, cada uno de ellos genera información específica y diferente entre sí, las combinaciones de datos generada por estos sensores es increíblemente compleja y varían por la tolerancia de error y características de cada sensor. El total de datos generados por una hora de vuelo no sería mayor a 3Gigas por cada hora de vuelo. Esto es muy pequeño.

Ejemplo de datos grandes considerados Big Data, El gran colisionador de hadrones (Large Hadron Collider, LHC) genera unos 20 petabytes de datos útiles al año, datos complejos de manejar.

De cuanto estamos hablando? 1 MB = 1024KB, 1 Giga = 1024 MB (4Giga=1 DVD), 1 TB = 1024 Gigas (1 TB=1 disco duro grande) , 1 Petabyte= 1024 TB, 1 Exabyte= 1024 Petabyte. Entonces 20 petabytes = 20,480 TB = 20,971,520 Gigas = 21,474,836,480 MB serían 20,480 discos duros de 1TB

Ejemplo de datos grandes que no son Big Data, Google procesa más o menos 20 petabytes de datos cada día. Pero estos datos son bien estructurados, Google ha podido organizarlos de forma que pueden accesar a ellos de una forma extremadamente rápida, debido a esto no se puede considerar como Big Data.

Resumen, Big Data son almacenes de datos que son complejos para interpretar por su poca o ninguna estructuración y además pueden venir de múltiples fuentes no relacionadas inicialmente pero que al final si deben estarlo.

*************English

Summary, Big Data are data stores that are complex to interpret for their little or no structure and it can come from multiple sources unrelated initially but ultimately they need to be.

Google handles 20 Petabytes daily but well structured data, so this isn’t Big Data.

Large Hadron Collider LHC handles 20 Petabytes / year, but these data are so complex to handle that becomes Big Data.

Example of small data considered Big Data, a plane can have 100 thousand sensors that are activated during the flight, each generates specific and different information to each other, combinations of data generated by these sensors is incredibly complex and vary by error tolerance and characteristics of each sensor. The amount of data generated by an hour flight would not be greater than 3Gigas for every hour of flight. This is very small data.

Fuentes: http://mike2.openmethodology.org/wiki/Big_Data_Definitionhttp://es.wikipedia.org/wiki/Big_datahttp://es.wikipedia.org/wiki/Petabyte

Extraer nombre de la página de un URL vb.net / get page name from url


Muchas veces necesitamos extraer el nombre de una página de una dirección URL, normalmente obtenida por:

Dim sPagina = Request.RawUrl  ‘sPagina queda con http://192.168.0.1/cuentas/admin.aspx

Para extraer el nombre admin.aspx podemos usar una función:

sPagina = ObtenerNombrePagina(sPagina) ‘sPagina queda como admin.aspx

Y esta es la función:

Public Shared Function ObtenerNombrePagina(ByVal PageUrl As String) As String

Dim index As Integer, endindex As Integer

Dim NombrePagina As String = “”

index = PageUrl.LastIndexOf(“/”) ‘Encontrar el ultimo / para determinar donde inicia el nombre

index += 1

endindex = PageUrl.LastIndexOf(“?”)

If (endindex = -1) Then ‘No hay parametros se toma todo el tamaño de la cadena

endindex = PageUrl.Length

End If

NombrePagina = PageUrl.Substring(index, (endindex – index))

Return NombrePagina

End Function

SQL Server mejores teclas rápidas / SQL Server short cuts


Esta es un lista de teclas rápidas más usadas en SQL Server Management Studio y que pueden ahorrar tiempo y su desempeño, esto es en la ventana de comandos o editando un archivo .sql:

ALT+F1 desplegar la estructura de la tabla (primero seleccionar el nombre de la tabla escrito en la ventana comandos ej: select * from tabla1 )
CTRL+R Ocultar o mostrar la ventana de resultados, por ejemplo un select * from tabla1 retorna unos resultados y los despliega en una ventana, presionando CTRL+R oculta dicha ventana o la vuelve a mostrar.
SHIFT+CTRL+U Convertir a mayúsculas un texto seleccionado.
SHIFT+CTRL+L Convertir a minúsculas un texto seleccionado.
F4 Abrir la ventana lateral de propiedades si está oculta.
F6 Cambiar el foco entre ventanas abiertas.
CTRL+I Búsqueda incremental, es bastante interesante para recorrer un conjunto de instrucciones bastante largo.
CTRL+K, CTRL+C Convertir en comentario el texto seleccionado, mantener presionada la tecla control.
CTRL+K, CTRL+U Quitar la marca de comentario del texto seleccionado.
CTRL+F Búsqueda rápida.
CTRL+H Reemplazo rápido.
CTRL+Shift+H Remplazo rápido en múltiples archivos.
CTRL+ALT+R Abrir ventana interna para explorar internet.
F8 Abrir ventana lateral explorador de objetos en caso de que esté oculta.

****************************English

This is a list of most used shortcuts in SQL Server Management Studio, this can save us time while writing code or editing .sql files:

ALT+F1 display table structure, name of table must be selected. (Example: select * from table1)
CTRL+R hide/show results window, after an instruction like select * from table1 a new window is opened, this will hide or show that window.
SHIFT+CTRL+U Uppercase selected text.
SHIFT+CTRL+L lowercase selected text.
F4 display properties window if hidden.
F6 move between opened Windows.
CTRL+I incremental search, excelent when searching in long texts.
CTRL+K, CTRL+C comment selected text (keep CTRL pressed between K and C)
CTRL+K, CTRL+U uncomment selected text.
CTRL+F quick search window.
CTRL+H quick replace window.
CTRL+Shift+H quick replace in multiple files.
CTRL+ALT+R internal web browser inside sql server.
F8 Object explorer if hidden.

Microsoft Certified Professional

Follow

Get every new post delivered to your Inbox.