¿Te has preguntado qué pasaría si alguien obtuviera acceso a una cuenta de tus redes sociales y te dejara afuera? ¿o si un día a Instagram se le ocurriera cerrar tu cuenta? Si te aterra pensar todo lo que perderías, quizás sea hora de que, además de respaldar tu disco duro, empieces a respaldar también los datos de tus redes sociales.
Todos los días generamos enormes cantidades de información en las redes sociales y es posible que ni siquiera estemos plenamente conscientes: tweets, estados de Facebook, fotografías, check-ins, un registro detallado de nuestras vidas que se encuentra a disposición de todos en Internet y sobre el cual, sin embargo, no tenemos completo control. No es frecuente que nos tomemos la molestia de respaldar los datos de nuestras redes sociales, y es posible que ni siquiera nos hayamos dado cuenta de que existe la opción de hacerlo.
Facebook
Facebook permite respaldar tu cuenta de manera nativa. Estando dentro de tu cuenta de Facebook, haz clic en el icono de flecha (el triángulo invertido) situado en la esquina superior derecha, y luego en Configuración. En esa sección, abajo, te aparecerá un enlace denominado “Descarga una copia de tu información”. Esta opción te llevará a una página donde deberás solicitar tu archivo (toda la información que has compartido en tu muro, incluyendo publicaciones privadas, fotos e información del perfil). Luego de hacer clic, iniciará la descarga de un archivo .zip, que puede ser bastante pesado dependiendo de qué tanta información contenga tu cuenta de Facebook (el mío pesaba sobre 30 Mb y yo prácticamente no uso Facebook).
Twitter
Twitter también contiene una opción nativa que permite descargar todo tu historial de tweets. Para encontrarla, deberás ir a la opción “Configuración”, de allí a “Cuenta”, y en esa página al final encontrarás el enlace llamado “Solicita tu archivo”. Una vez que hagas clic ahí, deberás esperar a que Twitter te envíe un correo electrónico indicándote que tu archivo se encuentra disponible para descargar. Este archivo puede tardarse un poco en llegar, y contendrá todos tus tweets en formato HTML. Precaución al revisarlo: leer tus primeros tweets y las cosas que has dicho a lo largo de los años puede ser sumamente vergonzoso.
Google Plus
Desde tu cuenta de Google, debes ir a Configuración de cuenta, y de allí a Herramientas de datos. Donde dice “Seleccionar los datos para descargar”, ese enlace te llevará a Google Takeout. Takeout es un servicio compatible con 21 productos de Google, desde Drive hasta YouTube y Blogger, que sirve para exportar todos tus datos desde cualquiera de esas cuentas, así que ahí puedes seleccionar qué datos quieres descargar y Takeout creará el archivo personalizado. Ojo con las cuentas que seleccionas, pues por ejemplo, descargar toda tu cuenta de Gmail puede ser un compromiso bastante extenso, y si seleccionas todas tus cuentas vinculadas con Google, es posible que la mera creación del archivo se tome días enteros.
Instagram
A diferencia de los anteriores, Instagram no ofrece un mecanismo propio para descargar tus fotos, de modo que existen servicios de terceros, como Instaport, que sirven para lo mismo. Instaport requiere tener acceso a tu cuenta para generar un archivo descargable, es gratuito y funciona bastante bien.
Respaldar redes sociales con IFTTT
Personalmente no soy demasiado fan de darle acceso a mis cuentas a aplicaciones externas fantasmas, y también creo que es útil tener en marcha herramientas que hagan respaldo sobre la marcha, así que recomiendo usar IFTTT para hacer -por ejemplo- respaldo automático de tus fotos de Instagram a medida que las vas subiendo. Con IFTTT puedes respaldar tus fotos en Dropbox, en Google Drive, en Evernote, en OneDrive, en Flickr, Picasa o en tu correo electrónico. Igualmente, en IFTTT puedes preparar recetas para generar respaldos sobre la marcha de un montón de otros servicios, sólo tienes que explorar lo suficiente.
Sea cual sea la elección que tomes, mi recomendación es que no esperes al World Backup Day para tomar acciones con respecto a la información de tus redes sociales: podría ser demasiado tarde.
Bienvenidos! En mi blog comparto mis experiencias y conocimientos relacionados con las TIC's, lenguajes de programación, bases de datos...
2014/06/29
2014/06/12
Tablas y su numero de filas en SQL Server
El siguiente script permite ver el nombre de las tablas y su numero de filas en una base de datos.
SELECT sysobjects.Name AS NombreTabla,
sysindexes.Rows AS TotalFilas
FROM sysobjects
INNER JOIN sysindexes
ON sysobjects.id = sysindexes.id
WHERE TYPE = 'U'
AND sysindexes.IndId < 2
ORDER BY
sysobjects.Name
Una vez ejecutada la consulta.

2014/06/09
Eliminar todas las conexiones activas en una base de datos
Permite cerrar las conexiones abiertas de una base de datos en SQL Server, cuando quieres alterar y/o eliminar una tabla o base de datos y no se puedes porque existen conexiones activas que lo impiden, solo debes de ejecutar el siguiente script.
CREATE PROCEDURE dbo.KillConexiones
@dbName SYSNAME
AS
BEGIN
SET NOCOUNT ON
DECLARE @spid INT,
@cnt INT,
@sql VARCHAR(255)
SELECT @spid = MIN(spid),
@cnt = COUNT(*)
FROM MASTER..sysprocesses
WHERE dbid = DB_ID(@dbname)
AND spid != @@SPID
PRINT 'Eliminando ' + RTRIM(@cnt) + ' procesos.'
WHILE @spid IS NOT NULL
BEGIN
PRINT 'Eliminando Proceso ' + RTRIM(@spid)
SET @sql = 'KILL ' + RTRIM(@spid)
EXEC (@sql)
SELECT @spid = MIN(spid),
@cnt = COUNT(*)
FROM MASTER..sysprocesses
WHERE dbid = DB_ID(@dbname)
AND spid != @@SPID
PRINT RTRIM(@cnt) + ' Procesos por eliminar.'
END
END
GO
Encontrar los queries que consumen mas recursos
Los DMVs (Dynamic Management Views) son una magnifica forma de encontrar información de performance a partir de SQL Server 2005 en adelante (2008/2008R2/2012).
En este query de Pinal Dave se utilizan DMVs para encontrar los queries que mas consumen en un server SQL Server 2005/2008 (recordar que este script funciona solo en bases compatibles 2005/2008).
No está de más destacar un conjunto de queries, los DMVs AllStars, que se puede descargar aquí y que es una interesante herramienta para todo DBA en busca de detectar problemas de performance.
En este query de Pinal Dave se utilizan DMVs para encontrar los queries que mas consumen en un server SQL Server 2005/2008 (recordar que este script funciona solo en bases compatibles 2005/2008).
SELECT TOP 10 SUBSTRING(
qt.TEXT,
(qs.statement_start_offset / 2) + 1,
(
(
CASE qs.statement_end_offset
WHEN -1 THEN DATALENGTH(qt.TEXT)
ELSE qs.statement_end_offset
END - qs.statement_start_offset
) / 2
) + 1
),
qs.execution_count,
qs.total_logical_reads,
qs.last_logical_reads,
qs.total_logical_writes,
qs.last_logical_writes,
qs.total_worker_time,
qs.last_worker_time,
qs.total_elapsed_time / 1000000 total_elapsed_time_in_S,
qs.last_elapsed_time / 1000000 last_elapsed_time_in_S,
qs.last_execution_time,
qp.query_plan
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) qt
CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) qp
ORDER BY
qs.total_logical_reads DESC -- logical reads
-- ORDER BY qs.total_logical_writes DESC -- logical writes
-- ORDER BY qs.total_worker_time DESC -- CPU time
Obviamente se puede cambiar el ordenamiento del script para destacar otro criterio de busqueda.No está de más destacar un conjunto de queries, los DMVs AllStars, que se puede descargar aquí y que es una interesante herramienta para todo DBA en busca de detectar problemas de performance.
2014/06/02
Convertir números a letras en SQL Server
Función para poder convertir un monto numérico en un monto en letras, muy útil si se quiere hacer una descripción de un monto para alguna factura o boleta. Primero crearemos la función llamada "fn_ConvertirNumeroLetras" que recibe 2 parámetros, uno es el numero que deseamos convertir a letras y el otro el nombre de la moneda que deseamos concatenarlo al monto.
/*********************************************************************************
NOMBRE: fn_ConvertirNumeroLetra
PROPOSITO: CONVERTIR NUMEROS A LETRAS.
VERSIONES:
Ver Fecha Autor Descripción (inc. Req/inc)
------ ---------- --------------- ------------------------------------
1.0 01/06/2014 EDGAR CALZADA CREACION
*********************************************************************************/
CREATE FUNCTION fn_ConvertirNumeroLetra
(
@Numero NUMERIC(18, 2),
@Moneda VARCHAR(100)
)
RETURNS VARCHAR(512)
AS
BEGIN
DECLARE @lnEntero INT,
@lcRetorno VARCHAR(512),
@lnTerna INT,
@lcMiles VARCHAR(512),
@lcCadena VARCHAR(512),
@lnUnidades INT,
@lnDecenas INT,
@lnCentenas INT,
@lnFraccion INT,
@resultado AS VARCHAR(512)
SELECT @lnEntero = CAST(@Numero AS INT),
@lnFraccion = (@Numero - @lnEntero) * 100,
@lcRetorno = '',
@lnTerna = 1
WHILE @lnEntero > 0
BEGIN
/* WHILE */
-- Recorro terna por terna
SELECT @lcCadena = ''
SELECT @lnUnidades = @lnEntero % 10
SELECT @lnEntero = CAST(@lnEntero / 10 AS INT)
SELECT @lnDecenas = @lnEntero % 10
SELECT @lnEntero = CAST(@lnEntero / 10 AS INT)
SELECT @lnCentenas = @lnEntero % 10
SELECT @lnEntero = CAST(@lnEntero / 10 AS INT)
-- Analizo las unidades
SELECT @lcCadena = CASE /* UNIDADES */
WHEN @lnUnidades = 1 AND @lnTerna = 1 THEN
'UNO ' + @lcCadena
WHEN @lnUnidades = 1 AND @lnTerna <> 1 THEN
'UN ' + @lcCadena
WHEN @lnUnidades = 2 THEN 'DOS ' + @lcCadena
WHEN @lnUnidades = 3 THEN 'TRES ' + @lcCadena
WHEN @lnUnidades = 4 THEN 'CUATRO ' + @lcCadena
WHEN @lnUnidades = 5 THEN 'CINCO ' + @lcCadena
WHEN @lnUnidades = 6 THEN 'SEIS ' + @lcCadena
WHEN @lnUnidades = 7 THEN 'SIETE ' + @lcCadena
WHEN @lnUnidades = 8 THEN 'OCHO ' + @lcCadena
WHEN @lnUnidades = 9 THEN 'NUEVE ' + @lcCadena
ELSE @lcCadena
END /* UNIDADES */
-- Analizo las decenas
SELECT @lcCadena = CASE /* DECENAS */
WHEN @lnDecenas = 1 THEN CASE @lnUnidades
WHEN 0 THEN
'DIEZ '
WHEN 1 THEN
'ONCE '
WHEN 2 THEN
'DOCE '
WHEN 3 THEN
'TRECE '
WHEN 4 THEN
'CATORCE '
WHEN 5 THEN
'QUINCE '
ELSE 'DIECI' + @lcCadena
END
WHEN @lnDecenas = 2 AND @lnUnidades = 0 THEN
'VEINTE ' + @lcCadena
WHEN @lnDecenas = 2 AND @lnUnidades <> 0 THEN
'VEINTI' + @lcCadena
WHEN @lnDecenas = 3 AND @lnUnidades = 0 THEN
'TREINTA ' + @lcCadena
WHEN @lnDecenas = 3 AND @lnUnidades <> 0 THEN
'TREINTA Y ' + @lcCadena
WHEN @lnDecenas = 4 AND @lnUnidades = 0 THEN
'CUARENTA ' + @lcCadena
WHEN @lnDecenas = 4 AND @lnUnidades <> 0 THEN
'CUARENTA Y ' + @lcCadena
WHEN @lnDecenas = 5 AND @lnUnidades = 0 THEN
'CINCUENTA ' + @lcCadena
WHEN @lnDecenas = 5 AND @lnUnidades <> 0 THEN
'CINCUENTA Y ' + @lcCadena
WHEN @lnDecenas = 6 AND @lnUnidades = 0 THEN
'SESENTA ' + @lcCadena
WHEN @lnDecenas = 6 AND @lnUnidades <> 0 THEN
'SESENTA Y ' + @lcCadena
WHEN @lnDecenas = 7 AND @lnUnidades = 0 THEN
'SETENTA ' + @lcCadena
WHEN @lnDecenas = 7 AND @lnUnidades <> 0 THEN
'SETENTA Y ' + @lcCadena
WHEN @lnDecenas = 8 AND @lnUnidades = 0 THEN
'OCHENTA ' + @lcCadena
WHEN @lnDecenas = 8 AND @lnUnidades <> 0 THEN
'OCHENTA Y ' + @lcCadena
WHEN @lnDecenas = 9 AND @lnUnidades = 0 THEN
'NOVENTA ' + @lcCadena
WHEN @lnDecenas = 9 AND @lnUnidades <> 0 THEN
'NOVENTA Y ' + @lcCadena
ELSE @lcCadena
END /* DECENAS */
-- Analizo las centenas
SELECT @lcCadena = CASE /* CENTENAS */
WHEN @lnCentenas = 1 AND @lnUnidades = 0 AND @lnDecenas
= 0 THEN 'CIEN ' +
@lcCadena
WHEN @lnCentenas = 1 AND NOT(@lnUnidades = 0 AND @lnDecenas = 0) THEN
'CIENTO ' + @lcCadena
WHEN @lnCentenas = 2 THEN 'DOSCIENTOS ' + @lcCadena
WHEN @lnCentenas = 3 THEN 'TRESCIENTOS ' + @lcCadena
WHEN @lnCentenas = 4 THEN 'CUATROCIENTOS ' + @lcCadena
WHEN @lnCentenas = 5 THEN 'QUINIENTOS ' + @lcCadena
WHEN @lnCentenas = 6 THEN 'SEISCIENTOS ' + @lcCadena
WHEN @lnCentenas = 7 THEN 'SETECIENTOS ' + @lcCadena
WHEN @lnCentenas = 8 THEN 'OCHOCIENTOS ' + @lcCadena
WHEN @lnCentenas = 9 THEN 'NOVECIENTOS ' + @lcCadena
ELSE @lcCadena
END /* CENTENAS */
-- Analizo la terna
SELECT @lcCadena = CASE /* TERNA */
WHEN @lnTerna = 1 THEN @lcCadena
WHEN @lnTerna = 2 AND (@lnUnidades + @lnDecenas + @lnCentenas <> 0) THEN
@lcCadena + ' MIL '
WHEN @lnTerna = 3 AND (@lnUnidades + @lnDecenas + @lnCentenas <> 0)
AND
@lnUnidades = 1 AND @lnDecenas = 0 AND @lnCentenas
= 0 THEN @lcCadena + 'MILLON '
WHEN @lnTerna = 3 AND (@lnUnidades + @lnDecenas + @lnCentenas <> 0)
AND
NOT (@lnUnidades = 1 AND @lnDecenas = 0 AND @lnCentenas = 0) THEN
@lcCadena
+ ' MILLONES '
WHEN @lnTerna = 4 AND (@lnUnidades + @lnDecenas + @lnCentenas <> 0) THEN
@lcCadena + ' MIL MILLONES '
ELSE ''
END /* TERNA */
-- Armo el retorno terna a terna
SELECT @lcRetorno = @lcCadena + @lcRetorno
SELECT @lnTerna = @lnTerna + 1
END /* WHILE */
IF @lnTerna = 1
SELECT @lcRetorno = 'CERO'
SELECT @resultado = RTRIM(@lcRetorno) + ' CON ' + LTRIM(STR(@lnFraccion, 2))
+ '/100 ' + @Moneda
RETURN @resultado
END
GO
-- Para ejecutarlo solo nos bastara con llamar a la función y pasarle los 2 parámetros mencionados.
SELECT [dbo].fn_ConvertirNumeroLetra(125.50, 'Nuevos Soles')
-- Esto nos dará como resultado lo siguiente.
-- CIENTO VEINTICINCO CON 50/100 Nuevos Soles
2014/05/04
SQL SERVER - Envía las copias de seguridad a una carpeta de red, servidor FTP, Dropbox, Google Drive o Amazon S3
Déjenme decirles acerca de una de las herramientas más útiles de SQL que cada DBA debe utilizar - es SQLBackupAndFTP . He estado utilizando esta herramienta desde el año 2009 - y que es el primer programa que se instala en el servidor SQL. Descargue una versión gratuita, la configuración de 1 minuto y las copias de seguridad diarias están a salvo en la nube.
En resumen, SQLBackupAndFTP
En resumen, SQLBackupAndFTP
- Crea la base de datos SQL Server y archivo de copias de seguridad en la fecha prevista
- Comprime y cifra las copias de seguridad
- Envía copias de seguridad a una carpeta de red, servidor FTP, Dropbox, Google Drive o Amazon S3
- Envía notificaciones por correo electrónico sobre el éxito o el fracaso del trabajo
SQLBackupAndFTP viene en versiones gratis y pagados (desde $ 29) - Véase la comparación de versiones . La versión gratuita es totalmente funcional para las copias de seguridad ad hoc ilimitadas o para copias de seguridad programadas de hasta dos bases de datos - será suficiente para muchos clientes pequeños.
Lo que más me ha impresionado desde el principio - es que he entendido cómo funciona y era capaz de configurar el trabajo de una sola forma (ver Imagen 1 - forma principal arriba)
- Conectarse a su servidor SQL y seleccione las bases de datos para hacer copia de seguridad
- Haga clic en "Añadir destino de copia de seguridad" para configurar las copias de seguridad donde deben ir a (la red, servidor FTP, Dropbox, Google Drive o Amazon S3)
- Ingrese su correo electrónico para recibir confirmaciones por correo electrónico
- Establece la hora para comenzar backups completos diarios (o vaya a Configuración si necesita copias de seguridad diferenciales o del registro de transacciones en un horario flexible)
- Pulse el botón "Ejecutar ahora" para poner a prueba
Se puede llegar a este formulario si hace clic en los botones "Configuración" en la sección "Programación". Seleccione qué tipos de copias de seguridad y la frecuencia con que desea ejecutar de ellas y ver las copias de seguridad programadas en la lista de "plan de respaldo estimado"
Junto con la configuración SQLBackupAndFTP le da la opción de instalar "One-Click SQL Restore" (se puede instalar autónomo también) - una herramienta básica para la restauración de las copias de seguridad simplemente completa.
Sin embargo básico, puede arrastrar y colocar en él el archivo zip creado por SQLBackupAndFTP, se baja la cremallera del archivo BAK, si es necesario, se conecta con el servidor SQL en el inicio, selecciona la base de datos a la derecha, es lo suficientemente inteligente como para reiniciar el servidor para soltar las conexiones abiertas en caso de necesidad - muy útil para desarrolladores que necesitan para restaurar las bases de datos a menudo.
Usted puede preguntar por qué es esta herramienta es mejor que las tareas de mantenimiento disponibles en SQL Server? Mientras que las tareas de mantenimiento son fáciles de configurar, SQLBackupAndFTP es todavía muy fácil e integra soluciones para la compresión, cifrado, FTP, almacenamiento en la nube y el correo electrónico que lo hacen superior a las tareas de mantenimiento en todos los aspectos.
En una cara de la moneda SQLBackupAndFTP no es la herramienta más lujoso para gestionar copias de seguridad o consultar su salud. Sólo funciona con fiabilidad en las instancias locales de SQL Server. En otras palabras, tiene que ser instalado en el servidor de SQL en sí. Para los servidores remotos que utiliza secuencias de comandos que es menos fiable. Esta limitación es en realidad inherente a servidor SQL como mandato BACKUP DATABASE crea la copia de seguridad no en el cliente, pero en el propio servidor.
Esta herramienta es compatible con casi todas las versiones conocidas de SQL Server. Se trabaja con SQL Server 2008 (todas las versiones) y muchas de las versiones anteriores. Es especialmente útil para SQL Server Express 2005 y SQL Server Express 2008, ya que carecen de herramientas integradas para la copia de seguridad.
Recomiendo esta herramienta a todos los administradores de bases. Ellos deben absolutamente probar, ya que es gratis y hace exactamente lo que promete. Puede descargar una copia gratuita de la herramienta desde aquí.
2014/05/02
Moralejas ( Chistes)
1) CUANDO SU EMPLEADO SE ENFERME, DELE EL DIA LIBRE!
Kung Chang llamó a su jefe y le dijo:
- Jefe, hoy yo no tlabajal, yo estal enfelmo. Duele cabeza, duele panza, duele pielna, no voy tlabajo.
El Jefe le responde:
- Kung Chang, realmente hoy te necesito en el trabajo. Cuando me siento así de mal, le pido a mi esposa que tengamos sexo. Eso me hace sentir mucho mejor y puedo ir a trabajar. Deberías probar, te hará muy bien.
Dos horas después, Kung Chang vuelve a llamar a su Jefe y le dice:
- ¡Jefe, no sabel qué decil! Glacias pol consejo, ya sentilme mucho mejol, enseguida yo il tlabajo. Felicito mucho, muy linda su casa, muy glande su cualto y muy buena su esposa.
Moraleja administrativa:
La comunicación debe ser clara. Sea explícito cuando hable con sus colaboradores.
2) RESPETAR LAS OPINIONES
Un hombre estaba poniendo flores en la tumba de un pariente, cuando ve a un chino poniendo un plato de arroz en la tumba vecina. El hombre se dirige al chino, y le pregunta:
- Disculpe señor, pero ¿cree usted que de verdad el difunto se comerá el arroz?
- Si, respondió el chino... 'Cuando el suyo venga a oler sus FLORES.
MORALEJA:
Respetar las opciones del otro, es una de las mayores virtudes que un ser humano puede tener. Las personas son diferentes, actúan diferente y piensan diferente. No juzgue............. COMPRENDA.
3) HISTORIA DE DOS AMIGAS
Dos amigas salieron solas, sin sus maridos. De regreso en la madrugada, agotadas por la borrachera, les dieron ganas de hacer pis, pero
lo único que había cerca era un cementerio. Decidieron bajarse y hacerlo... La primera no encontró con que secarse, así que se limpió con
su ropa interior y la tiró. La segunda tampoco encontró con qué, así que agarró la cinta de una corona de flores perteneciente a un reciente funeral y se limpió con ella..
A la mañana siguiente los maridos se llaman y uno le dice al otro: !!... esto ya es el colmo!, estoy hasta los huevos de las salidas
de éstas dos. Esto es ha acabado, imagínate..... llegar sin bragas a casa a las 4:00 de la mañana.
Y el otro le contesta: Tienes suerte, y no se de qué te quejas!!! Por lo menos la tuya llegó sin bragas. Mi mujer llegó con una cinta en el culo que decía:
'Nunca te olvidaremos. Con cariño: tus compañeros de trabajo'.
MORALEJA:
No saque conclusiones sin preguntar, pregunte, siempre pregunte antes.
4) AMOR DE LEJOS...
Un soldado español destinado en Irak recibe una carta de su novia desde Madrid. La carta decía lo siguiente:
Querido Alberto.
Ya no puedo continuar con esta relación. La distancia que nos separa es demasiado grande. Tengo que admitir que te he sido infiel dos veces desde que te fuiste y creo que ni tu ni yo nos merecemos esto, lo siento.
Por favor devuélveme la foto que te envié.
Con amor. Sofía.
El soldado, muy herido, le pidió a todos sus compañeros que le regalaran fotos de sus novias, hermanas, amigas, tías, primas, etc.
Junto con la foto de Sofía incluyó todas esas otras fotos que había recolectado de sus amigos.
Había 57 fotos en el sobre y una nota que decía :
Querida Sofía.
Perdóname, pero no puedo recordar quién coño eres. Por favor, busca tu foto en el paquete y me devuelves el resto.
MORALEJA:
Aún derrotado... hay que SABER JODER AL ENEMIGO
Kung Chang llamó a su jefe y le dijo:
- Jefe, hoy yo no tlabajal, yo estal enfelmo. Duele cabeza, duele panza, duele pielna, no voy tlabajo.
El Jefe le responde:
- Kung Chang, realmente hoy te necesito en el trabajo. Cuando me siento así de mal, le pido a mi esposa que tengamos sexo. Eso me hace sentir mucho mejor y puedo ir a trabajar. Deberías probar, te hará muy bien.
Dos horas después, Kung Chang vuelve a llamar a su Jefe y le dice:
- ¡Jefe, no sabel qué decil! Glacias pol consejo, ya sentilme mucho mejol, enseguida yo il tlabajo. Felicito mucho, muy linda su casa, muy glande su cualto y muy buena su esposa.
Moraleja administrativa:
La comunicación debe ser clara. Sea explícito cuando hable con sus colaboradores.
2) RESPETAR LAS OPINIONES
Un hombre estaba poniendo flores en la tumba de un pariente, cuando ve a un chino poniendo un plato de arroz en la tumba vecina. El hombre se dirige al chino, y le pregunta:
- Disculpe señor, pero ¿cree usted que de verdad el difunto se comerá el arroz?
- Si, respondió el chino... 'Cuando el suyo venga a oler sus FLORES.
MORALEJA:
Respetar las opciones del otro, es una de las mayores virtudes que un ser humano puede tener. Las personas son diferentes, actúan diferente y piensan diferente. No juzgue............. COMPRENDA.
3) HISTORIA DE DOS AMIGAS
Dos amigas salieron solas, sin sus maridos. De regreso en la madrugada, agotadas por la borrachera, les dieron ganas de hacer pis, pero
lo único que había cerca era un cementerio. Decidieron bajarse y hacerlo... La primera no encontró con que secarse, así que se limpió con
su ropa interior y la tiró. La segunda tampoco encontró con qué, así que agarró la cinta de una corona de flores perteneciente a un reciente funeral y se limpió con ella..
A la mañana siguiente los maridos se llaman y uno le dice al otro: !!... esto ya es el colmo!, estoy hasta los huevos de las salidas
de éstas dos. Esto es ha acabado, imagínate..... llegar sin bragas a casa a las 4:00 de la mañana.
Y el otro le contesta: Tienes suerte, y no se de qué te quejas!!! Por lo menos la tuya llegó sin bragas. Mi mujer llegó con una cinta en el culo que decía:
'Nunca te olvidaremos. Con cariño: tus compañeros de trabajo'.
MORALEJA:
No saque conclusiones sin preguntar, pregunte, siempre pregunte antes.
4) AMOR DE LEJOS...
Un soldado español destinado en Irak recibe una carta de su novia desde Madrid. La carta decía lo siguiente:
Querido Alberto.
Ya no puedo continuar con esta relación. La distancia que nos separa es demasiado grande. Tengo que admitir que te he sido infiel dos veces desde que te fuiste y creo que ni tu ni yo nos merecemos esto, lo siento.
Por favor devuélveme la foto que te envié.
Con amor. Sofía.
El soldado, muy herido, le pidió a todos sus compañeros que le regalaran fotos de sus novias, hermanas, amigas, tías, primas, etc.
Junto con la foto de Sofía incluyó todas esas otras fotos que había recolectado de sus amigos.
Había 57 fotos en el sobre y una nota que decía :
Querida Sofía.
Perdóname, pero no puedo recordar quién coño eres. Por favor, busca tu foto en el paquete y me devuelves el resto.
MORALEJA:
Aún derrotado... hay que SABER JODER AL ENEMIGO
2014/04/24
Depurar la Aplicación en Visual Studio
Cuando usted necesita para diagnosticar errores o problemas en su aplicación, utilice el depurador integrado de Visual Studio.
- Abra el proyecto de aplicación en Visual Studio.
- Ejecute la aplicación en modo de depuración para encontrar excepciones, los problemas en la ejecución, o valores de datos. Presione F5 o seleccione el botón Start.
- Cuando el depurador detecta una excepción, se suspende la ejecución de la aplicación.
- Cierre el diálogo de excepción a encontrar el objeto no inicializado. Incluso a una excepción, el depurador le permite examinar el estado de su aplicación.
- Coloca el ratón sobre las variables para ver sus valores en una punta de datos.
- En la ventana locales, usted puede aprender más sobre el contexto del problema.En este caso, la propiedad podría ser una referencia a un campo privado que es la raíz del problema. El siguiente paso es por lo general para moverse a través de su código para encontrar donde las cosas salieron mal.
- En la ventana Pila de llamadas, se puede ver el camino que su aplicación se llevó a alcanzar el punto donde ocurrió la excepción.Use su conocimiento del código para determinar un lugar para establecer un punto de interrupción.
- Abra el archivo en el que desea iniciar la depuración y, a continuación, seleccione la línea en la que desea comenzar.Presione F9 o haga doble clic en la izquierda cuneta al lado de la línea.El punto de ruptura se muestra como un círculo rojo en la cuneta. El punto de interrupción se detiene su aplicación para que pueda comenzar a recorrer el código.
- Debido a que el depurador detecta una excepción, tendrá que reiniciar la sesión de depuración. Pulse Mayús + F5 o seleccione el botón Detener depuración en la barra de herramientas.
- Reinicie la sesión de depuración. Utilice los comandos de paso a paso para moverse a través de su código, buscando el método que es muy probable que para crear el objeto sin inicializar. ¿Cuáles son los comandos de paso a paso?
- Cuando haya identificado el lugar donde se puede solucionar el problema, detener la depuración y cambiar o añadir código.
- Reinicie la sesión de depuración, y correr a través de la aplicación de nuevo para confirmar su arreglo.
Q & A
Q:¿Cuáles son los comandos de paso a paso?
A:Usted puede moverse a través de la aplicación utilizando uno de estos comandos:
Paso a paso por (F10) Pasando por encima de una función siempre se ejecuta la siguiente línea de código y luego suspende la ejecución. No importa si la línea contiene una llamada a un método en el código.
Step Into (F11) Cuando entras en una línea de código, el depurador realiza una de las siguientes acciones:
- Si la declaración es una llamada a una función en el código, el depurador se mueve a la primera línea de la función llamada y luego suspende la ejecución.
- Si la siguiente declaración no es una llamada a una función en el código, como un sistema o función de marco, el depurador ejecuta la sentencia, se mueve a la siguiente declaración, y luego suspende la ejecución.
Continuar (F5) Continuar reinicia la ejecución de la aplicación. La ejecución continúa hasta que se alcanza un punto de interrupción, se produce una excepción, o se cierra la aplicación.
Ejecutar hasta el cursor (Ctrl + F10) Corriendo hacia el cursor actúa como un punto de interrupción temporal.Seleccione una línea en el código y seleccione Ejecutar hasta el cursor en el menú contextual.
El depurador continúa la ejecución de la aplicación hasta que la línea que contiene el cursor está a punto de ser ejecutado, o hasta que se alcanza un punto de interrupción entre la línea donde reanudó la ejecución y el cursor.
Q:¿Puedo obtener un mayor control sobre cuando mis puntos de interrupción fuego?
A:Sí, usted puede desactivar temporalmente los puntos de interrupción, y se puede establecer las condiciones que determinan cuándo un fuego punto de interrupción. Más información aquí .
Q:¿Puedo depurar una aplicación que no está en mi máquina de Visual Studio?
R:Sí. Pero sólo si la aplicación se está ejecutando en un dispositivo que se conecta a través de una red o que está conectado directamente a la máquina de Visual Studio. Usted tendrá que hacer algún tipo de configuración para poder depurar este camino.
Q:¿Puedo cambiar mi código sin detener la sesión de depuración?
R:A veces, pero las normas sobre cuando esto es posible son complicadas . La mejor manera es sólo para probarlo.Obtendrá un error si el lenguaje o el contexto no admite la edición. Si esto sucede, usted puede simplemente eliminar los cambios.
2014/04/23
Crear y Ejecutar Pruebas Unitarias en Visual Studio
Crear pruebas unitarias y ejecutarlos con frecuencia para asegurarse de que su código funciona correctamente.
Crear una prueba unitaria
- Crear un proyecto de prueba unitaria.
- Asigne un nombre al proyecto.El proyecto ya ha sido añadido a su solución.
- En el proyecto de prueba de unidad, agregue una referencia al proyecto que desea probar.
- Seleccione el proyecto que contiene el código que pondrá a prueba.
- Código de la prueba unitaria.
Ejecutar pruebas unitarias
- Abra el explorador de prueba.
- Ejecutar pruebas unitarias.Usted puede ver las pruebas unitarias que aprueba o no, en el explorador de prueba.
Q & A
Q:¿Puedo ejecutar pruebas unitarias en Visual Studio si uso un marco de prueba de unidad diferente?
R:Sí. Utilice el plug-in para que el marco para que corredor de prueba de Visual Studio puede trabajar con ese marco.Estos son los marcos de pruebas unitarias complementos para Visual Studio que están disponibles en estos momentos.
- Utilice gestor de extensiones de Visual Studio para descargar el plug-in.
- Descarga el plug-in de la Galería de Visual Studio en Herramientas / Testing, o búsquelo si se conoce el nombre.
- Crear un proyecto de biblioteca de clases.Agregue el proyecto a la solución.
- En el proyecto de biblioteca de clases, ejecute NuGet para instalar el plug-in.NuGet es una extensión de Visual Studio que se puede utilizar para agregar y actualizar las bibliotecas y herramientas para sus proyectos.
- Instale el plug-in. Si conoce el nombre, puede buscar en línea.El marco se hace referencia en el proyecto.
- En el proyecto de biblioteca de clases, agregue una referencia al proyecto que desea probar.
- Seleccione el proyecto que contiene el código que pondrá a prueba.
- Código de la prueba unitaria.
2014/04/22
Crea tu Aplicación en Visual Studio
Empezar a desarrollar su aplicación mediante la creación de un proyecto en Visual Studio.
- Si no lo ha hecho, instale Visual Studio .
- Crear un proyecto (abreviado: Ctrl + Shift + N).
- Elija una plantilla y añada el nuevo proyecto de código para el control de versiones. Nosotros sugerimos que usted pone su nuevo proyecto en c: \ Users \ SuNombre \ Source \ Repos \.
- Elija Git para el control de versiones.Es una buena idea para seguir adelante y cometer el nuevo proyecto ahora.
- Escriba su código.
- Ejecutar la aplicación (del teclado: Ctrl + F5).
Felicitaciones, usted ha creado un proyecto simple en Visual Studio. Ahora usted puede comenzar a desarrollar sus propias aplicaciones.
Q & A
Q:¿Cómo puedo crear una aplicación de Windows 8 tienda?
R:He aquí una serie de videos que te muestra cómo hacerlo.
Q:¿Cómo puedo crear una cuenta de Windows Phone 8 aplicación?
R:Esta serie de videos le ayudará a empezar.
Q:¿Cómo puedo utilizar ASP.Net para crear una aplicación web y luego implementarlo en la nube?
R:He aquí una serie de videos en ASP.Net que cubre el despliegue de Microsoft Azure.
Q:¿Cómo puedo crear una aplicación móvil que almacena los datos en la nube?
R:He aquí una serie de vídeos sobre la creación de diferentes aplicaciones móviles utilizando Microsoft Azure servicios móviles.
Q:¿Qué sucede cuando agrego el proyecto al control de versiones?
R:Su proyecto de código se crea en su nuevo repositorio Git local. Es una buena idea para seguir adelante y comprometer al nuevo proyecto.
- Ir a la página de los cambios en Team Explorer (abreviado: Ctrl + 0, G).
- Si aún no ha introducido su nombre y dirección de correo electrónico, sin embargo, hacer eso primero. Estos se asocian con tus commits.
- Ahora se puede introducir un comentario, y confirmar los cambios.Sus cambios se han cometido a nivel local.Fuente: http://www.visualstudio.com/
Suscribirse a:
Entradas (Atom)



