Tecnología

Redes Sociales versus Presencia en Internet

Hace poco platicando con César Guadarrama, con quien estamos trabajando en un proyecto (saludos si lees), le comentaba acerca de la institucionalidad de una marca y con esto me refiero al posicionamiento que tiene en el mercado y que sirve como referencia para ser elegida, la marca siempre representa algo para el cliente y esas son la variables que considera para elegir entre una y otra. (No soy mercadólogo, regañenme si me equivoco)
Hoy dia, las redes sociales nos permiten llegar a segmentos muy puntuales de clientes, sin embargo (y es percepción personal), son demasiado invasivas y no siempre generan un lazo de confianza a largo plazo con el cliente, ejemplos:

  • Cuando de repente estas bien contento en FB y te llega un mensaje de un desconocido, que si no te interesa vender un producto con ganancias exorbitantes, poca inversión en tiempo y dinero.
  • Cuando compras en un grupo de FB, donde le compras a quien sabe quién, artículos de dudosa calidad y marca (donde puedes perder depósitos por confiado)
  • ¿Sabes si lo que compras no es robado?, si bien el vendedor no está obligado a demostrar la propiedad de lo que te vende, creo, no deberíamos ampliar el mercado de lo indebido.
  • Si ya eres una empresa establecida, ¿sabes si tu social media manager, esta en concordancia con la visión y objetivos de tu negocio?, ¿que facultades tiene sobre ser vocero de tu marca? ¿su tiempo es de calidad o cantidad?
  • ¿Que facilidades hay en el proceso de venta y recepción de pagos para tí, como empresario?

Vamos a un ejemplo, representativo y útil: Amazon, esta empresa no vende a trevés de FB, tiene presencia firme en internet con procesos automatizados apoyados, si en un equipo de gente muy capaz, pero sobre todo la tecnología; su nombre es referencia y saben como dirigirse y encontrar Amazon en internet.

Justo a eso me refiero con la institucionalización, lo que representa la marca para los clientes, la facilidad de hacer negocios contigo y lo que ello representa en sus hábitos de consumo.

Ahi reside la importancia de hacerse de una buena página en internet, no limitarse a los segmentos de redes sociales, sino hacer una solución integral donde los clientes actuales y potenciales encuentren toda la información necesaria para poder empezar a trabajar con ellos, así ellos pueden hacer una comparativa de las diversas opciones y establecer una competencia en donde la calidad va a estar por encima del precio, creánme, funciona.

Asi que si alguien requiere información o asesoría sobre como hacer esto posible, con gusto les ayudamos (obvio, respectivos honorarios)

Servidor de E-Mail Con HMail y MailJet

Una de las cosas que perdí, con el host de paga, fué el correo institucional (llamémosle así al correo con dominio propio, ejemplo alguien@tenangodelvalle.mx), que si bien no recibo miles de correos, pues como medio de contacto es indispensable para tener cercanía con tu audiencia, y en otros casos, tus clientes.
Cual fuera el caso para solventar esta necesidad hay soluciones de paga por ejemplo soluciones en la nube como gmail o Office 365 o exchange para on premise; y hay otras gratuitas como Mercury Mail, hMail (Windows) o Postfix (linux).
Evidentemente el término de “gratis” hoy día es bien subjetivo, sobre todo en en el área de TI, ya que si bien el software podría ser gratuito, uno termina haciendo inversión en infraestructura (equipo, medios de conexión) o asesoría, si es que somos neófitos en el tema, pero sobre todo tiempo que es el recurso que se va y NUNCA regresa.
Evidentemente esta pequeña guía va enfocada a las personas que tienen cierto conocimiento, que si bien no es complicado, hay algunas cosas que van implícitas (o de plano estoy obviando y no las menciono)
Dicho el preámbulo, enunciemos los elementos bajo los que configuraremos un servidor de correo completamente funcional y “low cost”:

  • Un dominio propio
  • IP estática
  • Haber hecho los registros de MX en el DNS apuntando hacia la IP estatica de nuestro dominio, con la variante de un subdominio que identifique el uso de correo, por ejemplo mail.tenangodelvalle.mx, esto es importante, ya que normalmente apunta a nuestro SMTP
  • Windows (no importa la versión)
  • hMail en su versión más reciente
  • Una cuenta en mailJet (Para Relay SMTP, más adelante explico)
  • Paciencia.

Primero hay que instalar hMail, no vamos entrar en detalles por que es muy intuitiva, y aunque tiene pre-requisitos, el instalador hace toda la chamba; por lo que una vez instalado ingresamos con nuestro password asignado en la instalación

Agregamos un dominio, una vez hecho eso en ese apartado no hacemos mas nada el resto de las pestañas quedan con la configuración por default.

Después vamos a protocolos y seleccionamos SMTP e IMAP (correo saliente y entrante respectivamente)

En el apartado de SMTP, en la pestaña General solo colocamos el saludo de bienvenida (que nunca vemos, solo lo reciben los clientes cuando hay peticiones de conexión)
En el apartado de Delivery of Email, es donde utilizaremos la cuenta de mailJet. Les explico: normalmente los servicios de hosting o incluso nuestro ISP tienen un servidor de relay de correo, es decir un equipo, que tiene permitido enviar correo al resto del mundo (evidentemente una medida de controlar el correo basura), si yo quisiera enviar correo directo del equipo que tiene mi servidor de mail, simplemente o se van a spam, no llegan, o no se permite la conexión. Entonces, utilizaremos mailJet para poder enviar nuestro correo a través de las firmas de su servicio; estoy usando una cuenta free y esta topado su uso, por lo que si quisieran enviar correo automatizado para campañas o confirmaciones, deberán pagar una lana, en mi caso, es mínimo lo que envío, por lo que me quedo en gratuito.

Nota: Ademas del registro MX de nuestro dominio, habrá que agregar un registro para autenticación de dominio de SPF y DKIM, mailJet da los valores solo hay que agregar el registro, está fácil, si se atoran, me escriben o leen la documentación, una vez hecho lo anterior, hay que validarlos desde la página de mailJet.

Bien, los valores que vamos a colocar aquí son el texto de nuestro registro MX que agregamos al DNS como Local Host Name, en este caso mail.tenengodelvalle.mx y los datos de la cuenta de mailJet; que son, Remote Host Name, puerto (preferible siempre 587), el usuario y la contraseña (estos datos nos los da mailJet una vez que completamos el proceso de alta de la cuenta).

En RFC Compliance queda como en la siguiente imagen

En Advanced, hay que colocar la IP del host de red local (o al menos eso me funciono a mi), intenté con el loopback y con la publica directo (asumiendo port forwarding, pero no funciono), lo demás como en la imagen.

En IMAP solo colocamos el saludo si lo requerimos, el resto queda igual.

El antispam y antivirus, pues hacen eso, si quieren apliar su configuración y activarlo, denle un vistazo a la documentación es muy intuitivo y ya trae precargados algunos sevicios. En Advanced hay que configurar el Auto-ban, este es importante para detener bots, no lo omitan.

Del mismo modo en Advanced hay que asignar los certificados SSL si los tenemos.

En IP Ranges es muy importante tener configurado un acceso local, y el que viene de internet de la siguiente manera:

En TCP/IP Ports pues configuramos los puertos de envío y recepción de correo, en esta caso uso los estándar y los de correo seguro, para SMTP e IMAP.


Finalmente vamos a Utilities/Diagnostics seleccionamos el dominio que creamos y presionamos Start, el resultado debería ser igual al de la imagen con las obvias salvedades de su configuración, el error que muestra ahí es por que no configure los respaldos.

Hecho lo anterior bastaría con agregar una cuenta y empezar a enviar y recibir correo, para pruebas basta un botón, si me mandan un correo a emmanuel.diaz@tenangodelvalle.mx con gusto se los respondo.

Excelente día, Emmanuel.

Enviar resultados de Query en SQL Server vía Mail.

El Problema: Resulta que necesitaba hacer un gráfico de tendencia en Grafana, sin embargo el plugin de tendencia se me hacia rudimentario y la solución para implementarlo vía SQL Server que se parece a algo así (asumiendo que se tiene un ID secuencial):

create table #temp
(
entity_id int,
value int,
[date] datetime
)

insert into #temp (entity_id, value, [date])
values
(1,10,'20140102 07:00:00 AM'),
(1,20,'20140102 07:15:00 AM'),
(1,30,'20140102 07:30:00 AM'),
(2,50,'20140102 07:00:00 AM'),
(2,20,'20140102 07:47:00 AM'),
(3,40,'20140102 07:00:00 AM'),
(3,40,'20140102 07:52:00 AM')

select entity_id, 1.0*sum((x-xbar)*(y-ybar))/sum((x-xbar)*(x-xbar)) as Beta
from
(
select entity_id,
avg(value) over(partition by entity_id) as ybar,
value as y,
avg(datediff(second,'20140102 07:00:00 AM',[date])) over(partition by entity_id) as xbar,
datediff(second,'20140102 07:00:00 AM',[date]) as x
from #temp
where [date] >= '20140102 07:00:00 AM' and [date] < '20140102 08:00:00 AM' ) as Calcs group by entity_id having 1.0*sum((x-xbar)*(y-ybar))/sum((x-xbar)*(x-xbar)) > 0

La neta se me hacía muy complejo, así que pensé, ¿por que no enviar el resultado de la consulta a una hora determinada a mi correo, después aplicar tendencia con excel y finalmente insertar el resultado de excel con un bulk insert, y pues funcionó.

Para contextualizar, primero la estructura de datos en la tabla es muy simple son tres columnas Fecha, Total, FactoryID; algo así:

Fecha|Total|Planta
2018-09-28|7237.14|FACTORY1
2018-09-29|5509.88|FACTORY1
2018-09-30|4903.39|FACTORY1
2018-10-01|4498.54|FACTORY1
2018-10-02|2139.11|FACTORY1
2018-10-03|8998.51|FACTORY1
2018-10-04|5423.95|FACTORY1
2018-10-05|5354.85|FACTORY1
2018-10-06|5311.04|FACTORY1
2018-10-07|5267.23|FACTORY1

Entonces, avanzando por partes, primero necesitaba una query en SQL que me trajera sólo los últimos 7 días de esa tabla ya que tiene el acumulado de todo el año, esta es:

SET NOCOUNT ON
select * from Totales
where Fecha > CONVERT(date, GETDATE() - 8)
order by Planta, Fecha

Bien, primer parte resuelta, observamos que tiene activado SET NOCOUNT esto es importante para que no envíe el resultado de la consulta con el total de registros, ¿y ahora como demonios envíamos el resultado de esta consulta vía mail?, bien la respuesta que yo encontré (aclaro, puede haber un método mejor y más simplificado,…)

Primero una consulta (que se deja como procedimiento almacenado a ejecutarse a una hora específica), esta consulta usa dos herramientas,  xp_cmdshell y sqlcmd, ahi denle una leída a la documentación para que vean como usarlos y que pueden realizar con ellos, en este caso grosso modo el primero lo uso para ejecutar al segundo y algunos comandos adicionales, la cosa queda así:

--Se selecciona la base a usar
use TUBASE
Go
--Se declaran las variables necesarias
DECLARE @Ruta varchar(20)
DECLARE @Nombre VARCHAR(20)
DECLARE @ComandoA VARCHAR(40)
DECLARE @ComandoB VARCHAR(120)
DECLARE @ComandoC VARCHAR(120)
--Se asignan valores a las variables, en este caso para los comandos se usaron estas variables para poder:
-- 1- Eliminar todo los archivos txt de la ruta de almacenaje (para no crear garbage)
-- 2- Asignar la cadena de comando de sqlcmd concatenando la fecha como nombre del archivo
-- 3- ejecutar un script de powershell pasando como argumento el nombre del archivo generado en el paso 2
set @Ruta = 'TURUTA'
set @Nombre=CONVERT(varchar,getdate(),105)+'.txt'
set @ComandoA ='del /F /S /Q C:\TURUTA\*.txt'
set @ComandoB ='sqlcmd -i C:\TURUTA\Last7days.sql -S localhost -d TUBASE -E -s ";"  -o '+@Ruta+@Nombre
set @ComandoC = 'powershell -file C:\TURUTA\attachtrend.ps1 '+ @Ruta + @Nombre 

--  Se ejecutan los comandos, uno a la vez, easy tiger.
EXEC xp_cmdshell @comandoA
EXEC xp_cmdshell @ComandoB
EXEC xp_cmdshell @ComandoC

Como les comentaba con esta consulta se crea un procedimiento almacenado se programa a una hora y voilà.

La cereza del pastel, es el script de powershell que hace las veces de enviar el archivo TXT generado por SQLCMD, una rutina simple que toma como parametro el nombre del archivo generado:

param([string]$nombre)

    $smtpClient = new-object system.net.mail.smtpClient
    $smtpClient.Host = "TUSERVERSMTP"
    $smtpClient.Port = TUPUERTO
         
    $emailfrom = "EMAILORIGEN"
    $emailto = "EMAILDESTINO"
    $subject = "ASUNTODEMAIL"
    $body = "TEXTODEMAIL"
    
    $emailMessage = New-Object System.Net.Mail.MailMessage
    $emailMessage.From = $EmailFrom
    $emailMessage.To.Add($EmailTo)
    $emailMessage.Subject = $Subject
    $emailMessage.Body = $Body
    $emailMessage.Attachments.Add($nombre)
    $SMTPClient.Send($emailMessage)

Con todo esto como magia, me llega un txt del diario 7:30 AM, el cual modifico en excel para agregar las tendencias por los siguientes 3 días, luego lo exporto como TXT sin header (con nombre ‘trend.txt’) y lo inserto en mi tabla con un BULK insert, así:

BULK INSERT Totales
   FROM 'C:\TURUTA\trend.txt'  
   WITH   
      (  
         FIELDTERMINATOR =',',  
         ROWTERMINATOR ='\n'  
      );  

Finalmente el resultado en grafana es este:

Espero le sirva a alguien, Salu2, Emmanuel.

Alertas en un Bot de Telegram con Powershell

Una de las necesidades de un Sysadmin, es  informarse en tiempo y forma de todos los errores y warnings de los servicios de misión crítica, ya que ellos implican tiempos muertos, en el peor de los casos, pero sobre todo de riesgos que se pueden remediar a través de acciones preventivas.

El visor de eventos de Windows Guindos tiene mucha información al respecto y en muchos de los casos nos da información clave para solventar un problema.

De ahí surgió la idea de enviar los eventos relevantes a través de un medio que me permitiera tenerlos ipso facto, intente primero por e-mail, pero no soy fan ni de enviar ni de recibir correos, además de que la cuenta de correo institucional, no la toco ni de chiste fuera de horas de trabajo y no quería llenarla de spam, para luego tener que depurarla.

Así que tenía instalado el Telegram y un Bot personal, que sabía que podía ocupar para eso, pero no tenía ni idea de como hacerlo, así que me puse a investigar y el resultado es el siguiente:

PRERREQUISITOS
  • Tener un Bot de telegram, sino saben como aquí está documentado
  • Tener la API Key de ese Bot
  • Tener el ChatID de un chat de tu cuenta con tu Bot, ese lo pueden obtener con un Bot que hay en Telegram, búsquenlo se llama @my_id_bot
  • Paciencia y un entorno de pruebas donde no puedas hacer mal a nadie.

A continuación el script, esta completamente documentado de manera clara, por lo que creo no debería haber dudas y si las hay, los leo en comentarios o al e-mail.

#Se declaran las variables
#Obtenemos el pool de eventos, seleccionamos el log, el origen y el ID del evento, luego se selecciona el primero (el último, más reciente)
$event = Get-EventLog -LogName System -Source "Microsoft-Windows-Directory-Services-SAM" | where {$_.eventID -eq 12294} | Select-Object -First 1
#Asiganos el valor del BotKey que nos da BotFather
$BotKey = "TUBOTKEY"
#Seleccionamos los parámetros de formato regional México
$culture = New-Object system.globalization.cultureinfo("es-MX")
#Extraemos la fecha del evento
$Fecha=Get-date $event.TimeGenerated -Format ($culture.DateTimeFormat.LongDatePattern)
#Extraemos la hora del evento
$Hora =Get-date $event.TimeGenerated -Format ($culture.DateTimeFormat.LongTimePattern)
##Extraemos el texto del evento
$mensaje = $event.Message
#Conectamos a la API de telegram con la key asignada
$GetChatID = Invoke-WebRequest -Uri "https://api.telegram.org/bot$BotKey/getUpdates"
#Se crea la función que manda el mensaje a telegram, recibiendo de parametros la BotKey, ChatID (como Array por si fueran varios) y el mensaje
function Send-TeleMessage([string] $BotKey , [array] $ChatIDs , [string] $Message)
{#Se cre la variable con la URL de la API que ejecuta el envío del mensaje
    $sendMsgLink = "https://api.telegram.org/bot$BotKey/sendMessage"
    #Se crea al bucle para cada elemento del Array
    foreach ($ID in $ChatIDs)
    {        
        try
        {#Se ejecuta el POST a la URL            
            $ExecuteInvokeWeb = Invoke-WebRequest -Uri "$sendMsgLink" -Method Post -ContentType "application/json;charset=utf-8" -Body (ConvertTo-Json -Compress -InputObject @{chat_id=$ID; text="$Message"}) -ErrorAction SilentlyContinue
            #Se recibe el resultado del POST
            $Status = (ConvertFrom-Json -InputObject $ExecuteInvokeWeb.Content)
            #Si el resultado, es ok, envia un mensaje satisfactorio, sino hace un catch del error y lo muestra.  
            if($Status.ok){Write-Host "El mensaje se envío correctamente al Chat ID : $ID (Type : $($Status.result.chat.type))" -ForegroundColor Green}
        }
        catch [Exception]
        {
            $exception = $_.Exception.ToString().Split(".")[2]
            Write-Host "Falló el envío del mensaje al Chat ID : $ID ($exception)" -ForegroundColor Red
        }
    }
}
#Se ejecuta la función con los parametros necesarios
Send-TeleMessage -BotKey $BotKey -ChatIDs "TUCHATID" -Message "$($Fecha) $($Hora) $($mensaje)"

Después de esto, hay que crear una tarea programada en windows, que ejecute este script cada que se genere un registro del evento, evidentemente el ID del evento debe coincidir para que informa de manera asertiva, el resto de las adecuaciones a sus necesidades deberían ser sencillas y el resultado es algo como esto:

Salu2, Emmanuel.

Vulnerabilidad en Procesadores Intel *INTEL-SA-00086*

A la mejor me puedo considerar un informático atípico, por el simple hecho de no confiar en la tecnología de una manera tan amplia como se esperaría, y simplemente no confío en ella, por que está hecha y diseñada por humanos y eso la hace inalienablemente susceptible al error, al fallo, al caos.

Y para muestra un botón: procesadores Intel fabricados durante los últimos 10 años tienen una vulnerabilidad que puede poner en riesgo información sensible del usuario (tales como contraseñas o cuentas de usuario), vaya que no solo Intel salió mal, sino procesadores como AMD principal competencia de Intel o ARM procesadores usados sobre todo en dispositivos móviles como smartphones o tablets; tienen el mismo problema.

No obstante, siendo que es un problema de diseño a nivel arquitectura de los procesadores por como interactúa con la memoria del kernel., no es algo que se pueda corregir fácilmente y tiene a los fabricantes de los principales sistemas operativos (windows, linux, android) trabajando a marchas forzadas para implementar parches que puedan corregir el problema.

¿Cómo saber si mi equipo es vulnerable?

Intel ya tiene liberada una herramienta tanto para Windows como Linux, la cual te permite saber si tu equipo requiere el parche a esta vulnerabilidad, esta herramienta la puedes descargar haciendo click aqui.

Resultado, en mi equipo con un mes de uso y Linux.

¿Qué sigue después de aplicar el parche?

Pues sufrir, ya que aunque tu información esta más segura, evidentemente la serie de cambios que se tienen que aplicar a nivel kernel para mitigar este fallo, van a mermar el rendimiento de tu procesador entre un 5% hasta un %30.

Para usuarios MAC aún no herramientas para la detección, esto no quiere decir que estén exentos, así que habrá que estar atentos y pendientes de la información próxima a este tema.

**Actualización 4/01/2018-09:15**

Tom Lendacky Ingeniero de Software de AMD, dice que a ellos la vulnerabilidad les hace lo que el viento a Juárez, aunque habrá que recordar el angor pectoris (angina de pecho), que fundió al benemérito en la tumba, tal vez por un mal aire (es una afección cardíaca, no me corrijan). Como sea la referencia la pueden leer aqui

 

**Actualización 4/01/2018-10:40**

Ampliando la información, las vulnerabilidades tienen relación con el uso de una técnica llamada “Ejecución Especulativa”, que predice la ejecución de un programa y mejora notablemente el rendimiento, grosso modo según SpectreAttack:

  • Spectre: permite robar contenido engañando a aplicaciones para que filtren información. Un poco de JavaScript en una web y dejar que Chrome o Firefox hagan el resto. Por lo que sabemos hasta ahora, no es una ataque que se pueda prevenir por completo, mediante simples modificaciones de software.
  • Meltdown: rompe las barreras del hardware y permite acceder a todos los contenidos de la memoria, que deberían ser inaccesibles. Es decir, derrite cualquier barrera de seguridad entre los programas y el núcleo. Un caso posible de ejecución sería que alguien alquilara un espacio en la nube, en un hosting compartido y se hiciera con las credenciales de todos los demás (de una casa de cambio de criptomonedas por ej.). Servicios como Amazon, ya están recomendando a sus clientes que actualicen su software para solucionar este fallo

Vía: La Mirada del Replicante

Saludos, Fer.

Organización de Fotografías por Fecha.

Este post es para quien:

  • ¿Tienes muchas fotografías?
  • ¿Ya no sabes ni de que fecha son?
  • ¿Son tantas que te da flojera verlas por que no están organizadas?
  • ¿Quieres imprimir algunas pero sabes ni por donde empezar a buscar cuales?
  • ¿Crees que tienes demasiadas fotos duplicadas?

Bien, te ofrezco la organización de tus fotografías por un módico precio, se te entregan ordenadas por año, mes incluso día.

Esto es muy sencillo:

  1. Me entregas las fotografías que quieres ordenar en un medio extraíble (preferentemente), ya sea un pendrive (mal llamados USB), o bien, en un disco duro externo.
  2. Se concerta la forma en la que quieres ordenar el contenido, incluso el nombre del archivo y la estructura de carpetas.
  3. Dependiendo del volumen de datos, puedo tardar de uno a 2 días en entregarte la información ordenada.
  4. Si tienes duplicados y deseas conservarlos de la misma manera se agregan a tu medio extraíble ordenados.

Muy fácil ¿no?, para este servicio y otros más, así como mis datos de contacto, visita este enlace, con gusto te atiendo.

 

Sitio + Seguro TenangodelValleMX

Una de las cosas a las que se debe uno avocar cuando se decide a tener un sitio web, es que el sitio se mantenga en el top de resultados de búsqueda del público en general a través de los principales buscadores tales como google o yahoo; una de las formas de obtener esto es garantizar que el sitio es completamente seguro, de esta manera se gana uno la reputación con los buscadores, tanto así, como con el público.

Para esto hay que comprar un certificado SSL (Secure Socket Layer), con el cual, se le otorga al sitio un nivel de confianza y certeza de que los visitantes están (y se mueven) en un sitio seguro, para obtener este certificado se le debe proporcionar a la Autoridad Certificadora (CA, por sus siglas en inglés) una serie de datos, que por decirlo de algún modo, te responsabilizan por el contenido y el manejo de los datos que administras en tu sitio web.
Una vez que tienes tu certificado, hay que instalarlo y por último hacer un redireccionamiento del sitio para que envíe a los usuarios del protocolo HTTP al HTTPS.
Sencillo, realmente la complicación está en pagar el certificado, que si se ponen a revisar los precios son de miedo el más barato que encontré fue $83.75 por oferta, luego $1063.99 el segundo año y después $1329.99 la renovación, que la verdad aunque están caros, hay que considerar que si se monetiza el contenido, más vale pagar que perder clientes potenciales.
Hoy fué implementada esta mejora de seguridad para el sitio, con la finalidad de entregar contenido, más seguro y con mayor impacto.
Si quisieras, asesoría profesional de como hacer esto en tu sitio, con gusto te puedo ayudar, en el apartado de servicios encuentras toda la información para contactarme, considera que puedes estar perdiendo clientes simplemente por no aparecer en google.
Saludos, Fer

System Administrator Appreciation Day (aka Sysadmin Day)

Así es niños y niñas, damas y caballeros… hoy como todos los últimos viernes de julio desde el año 2000, se celebra orgullosamente el Día de Apreciación a los Administradores de sistemas (por 24 horas); desafortunadamente, no es algo que en mi glorioso país (México) esté muy difundido, más bien por un tema cultural, creo.

Ahora bien, que es un administrador de sistemas?

microsoft system admin day cartoon 05 dark blue_2

¿No enciende tu computadora?, ¿No puedes imprimir?, ¿No funciona tu extensión telefónica? ¿La red esta “lenta”?, ¿No puedes acceder al servidor?, ¿Tu impresión no sale como debiera?, ¿”No sirve” el internet”?, ¿No te puedes conectar a la “inalámbrica” ?, ¿No sabes usar una fórmula de excel?, ¿Tu “USB” tiene virus?, ¿No saben ni como migrar sus contactos de teléfono móvil?…

Podría seguir, pero las personas que te ayudan a resolver estas preguntas en tu trabajo día a día, son administradores de sistemas y penosamente lo complicado no es resolver estos problemas por que amamos nuestro trabajo, lo penoso (y mucho) es aguantarlos a ustedes, los usuarios, por que seamos honestos el %70 de estos problemas resultan ser de capa 8 y eso esta completamente fuera de nuestro alcance.

No se crean, son un amor, amamos que todos los días en vez de saludarnos nos digan que las líneas de teléfono están “muertas”, o que nos llamen en fin de semana por que “no hay red” o que nos culpen de su ineficiencia “por que el sistema esta lento”.

Además amamos mucho también que nos lleven a casa a arreglar sus aparatejos y piensen que llevan 6 meses de asesoría incluidas, o que se compren gadgets y no sepan ni como usarlos… no hay bronca ustedes pregunten sin pagar.

sysadmin_day_chart

Pero bueno, no quisiera que esto se convierta en un foro de mis frustraciones, así que los invito de la manera más atenta, a que valoren a su personal de TI pero sobre todo a ese LIA, ISC, ITC, TI (perdón si me falta alguno) que es el todológo, que saben que puden confiar su computadora e información a ojos cerrados  por que todo va a salir bien (miento, siempre que nos acerquemos  a su computadora guarden todo); regálenle un pastel, paguen su comida o una cena, cómprenle una mac, algun smartphone de gama alta, un pack de pokébolas… no sé, sean imaginativos no somos muy exigentes, pero entre más caro el regalo mejor ;).

Restan pocas horas, para celebrar a esa persona que desde el oscuro Site, (centro de datos o masmorra, da igual), hace que su mundo, sea un mundo tecnológico mejor.

En hora buena a todos los colegas, es quincena, y el PS4 lo sabe, un abrazo.


Imágenes

Sysadmin cbtnuggets
Sysadmin MS
Sysadmin The Register

4 Libros Sobre Desarrollo de Videojuegos

Igual a nadie le importa, pero una disculpa por abandonarlos (si, no importa que sean 3 personas las que leen este blog), es bien complicado hacerme tiempo para escribir.

Una vez la disculpa, lo importante: a varios de nosotros nos gustan los videojuegos y pues yo soy del old school, igual comencé por Megaman, Pacman, Contra, Mario Bros… y actualmente tengo una ligera adicción por Mortal Kombat X (MKX), bueno, el caso es que poco o nada sabemos lo que realmente implica el fabricar un videojuego y que viéndolo como un proyecto de desarrollo de software, pues tiene implicaciones técnicas bastante específicas, que comentaba no conocemos.

El motivo de está entrada es compartir una serie de E-Books en formato PDF para aquellos que quieren conocer cual es el proceso de creación de un videojuego, cual es el scope y target, la serie es constituida íntegramente por la Universidad de Castilla – La Mancha y se titula “Desarrollo de VideoJuegos”, a juicio personal, para estudiantes del área de informática, sistemas computacionales, desarrollo de software y ciencias de la computación, puede interesarles bastante el tema, o incluso, de soporte para alguna investigación o entusiastas empedernidos.

Sin mas palabrería les dejo el link de descarga: DESCARGA AQUÍ

El password del archivo es tenangodelvalle.mx si tuvieran algún problema en abrirlo no duden en avisarme, por los comentarios de la entrada o e-mail.

Ojalá les sirva.

Linux, un día normal (Top Apps que uso)

Antes que nada una disculpa por pasar tanto tiempo sin escribir, igual hay gente que si se interesa por el contenido de este blog y pues honestamente los he olvidado.

Estoy en aras de concluir un proyecto de formación académica, tengo un proyecto muy grande profesional y pues varios personales… he tenido poco tiempo para sentarme a escribir.

Esta entrada se avoca al conjunto de aplicaciones que uso a diario, sobre plataforma linux; he usado varias distros: empecé con Ubuntu Warty Whardog allá por el 2004, pasando por SuSe, Fedora, Mandriva, Red Hat, Kali (antes Backtrack), Ubuntu Studio, Kubuntu, Mint y finalmente Elementary… No soy un gurú, pero definitivamente me defiendo.

Empezamos por el inicio:

Recién en la empresa donde trabajo se realizo la migración de GApps a Office 365, entonces como imaginarán somos Windows Lovers por lo que como reemplazo tengo Libre Office para poder trabajar con documentos de office, que finalmente es un estándar que aunque quiera no podré quitar, cumple la expectativa, realmente yo no soy un usuario que esté pegado a las apps de ofimática.Libre Office

Thuderbird – Mi cliente de correo eléctronico, si bien no es tán bonito como Outlook 2013, la verdad es que en funcionalidad, utilidad y poder, no tiene nada absolutamente nada que envidiarle, incluso con un buzón de 30GB, ni siquiera puja por para levantarlo sin mermar el rendimiento del equipo, parte de la familia Mozilla.Thunderbird

La principal herramienta de trabajo Remmina, es un app que permite el acceso de manera remota a equipos bajo diversos protocolos, VNC, RDP, SSH, básicamente la uso para administración de plataformas Win Server, dentro de la VPN y Azure.Remmina

Team Viewer – para temas de soporte remoto, herramienta bastante conocida sin mucho que decir al respecto.

Sky – es un app de mensajería instantánea reemplazo para skype empresarial (antes Lync), como imaginarán pues sirve de comunicación interna con la ventaja de poder incluir usuarios de externos de skype y office 365. Antes usaba Pidgin (cuando teníamos gapps), pero para el cambio a O365 simplemente no pude configurar de manera correcta el protocolo SIP.Sky

GIMP e Inkscape – no soy diseñador sin embargo es un trabajo que se hacer y estas con las principales herramientas de edición de gráfico.GIMP & Inkscape

GEdit – tampoco soy integrador de software sin embargo tengo que pegarle al SQL, Shell Script, X++ y curiosamente aunque en la plataforma Linux es un simple editor de texto (vaya como el notepad en windows), pues tiene varios addons que permiten trabajar con codigo y scripting de manera satisfactoria. Ando probando algunos otros, en cuanto tenga una opinión (y tiempo) la subo.Gedit

Firefox – he usado bastantes navegadores, uno de ellos por mucho fué Chrome, sin embargo es un devorador de RAM y por eso regresé con este viejo conocido, no pienso regresar en mucho tiempo.Firefox

Angry IP Scanner, Ettercap, DSniff, NMap, Wireshark– todas ellas son herramientas de análisis de trafico, redes de datos y de vulnerabilidades, y he de aceptarlo, travesuras.

Bleachbit – indispensable para tener linux como mantequilla, es una herramienta de analisis y limpieza de todo aquello que pudiera “alentar” el SO.Bleachbit

Audacity – Pequeña pero sumamente poderosa, es una app que nos permite edición de audio y conversión de formatos, sumamente útil.Audacity

Hotot – La verdad es que no he encontrado otro cliente de Twitter mejor, o unos son completamente feos a nivel IU, o faltos de funcionalidad.Hotot

Deluge – No soy usuario P2P, pero para descargar torrents en grandes volúmenes, me quedo con esta aplicaciónDeluge

VLC – Por mucho el mejor reproductor de video para diversas plataformas, lo realmente bueno es el soporte para streaming y cantidad y calidad de códecs para reproducir formatos libres y privativos, además de su addon para conectar a TuneIn.VLC

Clementine – El reproducto de música que uso de cabecera, he usado Banshee, Rithymbox, Tomahawk y no se cuantos otros y siempre regreso aqui, lo que me gusta es su soporte para Spotify, tal vez una nimiedad.Clementine

Pues lo que más uso a diario, sé que no hay tanta gente que use Linux en cualquiera de sus sabores y que esta información va a tender a perder relevancia, sin embargo, una vez que comprendes que es el software libre, los beneficios que te trae a ti como usuario en cuanto a confiabilidad, operabilidad y funcionalidad, sin necesidad de usar software pirata, todo adquiere mucho más sentido.

Cabe aclarar que en la laptop tengo un dual boot con Windows 10 Pro a 64 Bits y Elementary OS Freya, sin embargo, el 97% del tiempo uso Elementary y Windows lo arranco para cosas muy, muy específicas y puntuales, por ejemplo, usar visual studio para actualizar un worker roler a azure.

Espero los sea útil, y cualquier ayuda que les pueda brindar, coméntenlo.