Una nueva amenaza

Cyber Security
Estándar

El viernes pasado, el ransomware llamado WannaCry usó herramientas de hackeo  robadas de la NSA (National Security Agency) para atacar a más de 200.000 computadoras en 150 países. El lunes, los investigadores dijeron que el mismo kit de ataque de grado militar fue utilizado en un hackeo mucho más antigo y posiblemente a mayor escala que hizo que las computadoras infectadas formaran parte de una botnet que minaba la criptomonedas.

Al igual que con WannaCry, este ataque usó una vulnerabilidad denominada EternalBlue y una puerta trasera llamada DoublePulsar, ambas herramientas de hacking desarrolladas por la NSA que se filtraron a mediados de abril por un grupo que se llamaba Shadow Brokers, en abril pasado. Pero en lugar de instalar ransomware, el objetivo de este trojano fue la minería de criptomonedas, este nuevo virus es conocido como Adylkuzz.

Los síntomas de este trojano incluyen la pérdida de acceso a los recursos compartidos de la red y la degradación del rendimiento del PC y del servidor. Varias grandes organizaciones han reportado este tipo de problemas de red, que originalmente fueron atribuidos a la campaña de WannaCry. Sin embargo, debido a la falta de avisos del rescate que caracterizan al ransomware, ahora se sabe que estos problemas podrían estar asociados con la actividad de Adylkuzz.

Cabe señalar que la propagación de Adylkuzz es anterior al ataque de WannaCry, comenzando por lo menos el 2 de mayo o incluso tan tempano como el 24 de abril. Este ataque es continuo y, aunque es menos llamativo que WannaCry, es potencialmente disruptivo.

El trojano actúa de la siguiente manera: existen varios servidores privados virtuales que exploran masivamente Internet en el puerto TCP 445 en busca de posibles objetivos.

Tras una explotación exitosa a través de EternalBlue, las máquinas quedan infectadas con DoublePulsar. La puerta trasera DoublePulsar luego descarga y ejecuta Adylkuzz desde otro servidor en Internet. Una vez que se está ejecutando, Adylkuzz primero detendrá cualquier posible instancia de sí mismo que ya este siendo ejecutando (es decir trata de matar posibles trojanos que compitan con él) y bloquea la comunicación SMB para evitar otras posibles infecciones a través de la misma vulnerabilidad. A continuación, determina la dirección IP pública de la víctima y descarga las herramientas necesarias para hacer la minería de la criptomoneda y además herramientas de limpieza, para borrar su reastro.

La criptomoneda que está minando Adylkuzz es el Monero, que es similar al bitcoin pero con mejoradas capacidades de anonimidad. Y de acuerdo a los investigadores que han hecho público esta nueva amenaza ya lleva recaudado más de $43,000.

En cuánto tenga más información sobre esta nueva amenaza actualizaré este post.

¿Qué es mejor anunciar en Google o anunciar en Facebook?

Estándar

Usar Facebook Advertising o Google AdWords pueden ser opciones válidas de publicidad pagada dependiendo de tus objetivos y del presupuesto de marketing que tengas tú o tu empresa. En un mundo tan saturado de información como en el que vivimos debemos de tener una forma de atraer la atención de potenciales clientes, lo primero y más barato es optimizar nuestra web para ser fácilmente indexable por motores de búsqueda usando técnicas SEO y promocionarla a través de las diversas redes sociales. Pero sólo se puede atraer público hasta cierto punto usando esas estrategias, en algún momento es necesario abrir la billetera y comprar espacios publicitarios.

Pero, si voy a gastar dinero en publicidad pagada ¿En dónde obtendré mejores resultados?. Es mejor pagar para salir en los resultados de las búsquedas de Google o por el contrario hay mejor conversión si aparecemos en los timelines de Facebook.

¿Por qué hay tanta discusión alrededor de Facebook Advertising y Google AdWords en el espacio de medios pagados de publicidad? En pocas palabras, el crecimiento continuo año tras año de Facebook Advertising no puede ser ignorado.

Según Forbes, Facebook vio un aumento del 50% en los anunciantes activos de 2015-2016 y llegó a 3 millones de anunciantes. Además, Facebook representa el 65% del total de inversión en publicidad en redes sociales que se espera alcanzará los 36,000 millones de dólares este año, los detalles del mercado de publicidad en redes sociales pueden ser leídos aquí. ¿Por qué Facebook está experimentando un crecimiento tan importante? La razón se debe principalmente a las capacidades de segmentación de la plataforma y al crecimiento explosivo de los smartphones.

Pero Google también vio un aumento de 17% en los ingresos de publicidad año tras año, comparando 2014/2015 según AdAge. El crecimiento de los ingresos de AdWords se atribuye principalmente al crecimiento del formatos de anuncios para dispositivos móviles y otros plataformas.

Por lo tanto, cuando se debe seleccionar un canal de publicidad sobre el otro, ¿cuál debería elegir para obtener el mejor costo/beneficio? Deseo aclarar que en este post, cuando hablamos de Google AdWords vamos a hablar principalmente a su producto de publicidad en búsqueda (así que tenga esto en cuenta), no estamos incluyendo anuncios dentro de websites de terceros (AdSense).

Hay varios factores a considerar al decidir qué canal publicitario es el mejor para tu negocio u organización.

En la mayoría de los casos, el costo por click (CPC) será significativamente mayor para Google AdWords que para los anuncios de Facebook. Según AdEspresso, el CPC promedio para anuncios de Facebook en los EE.UU. fue de 0.28 dólares en el tercer trimestre del 2016. Por el contrario, el costo promedio de búsqueda de Google AdWords CPC fue de 2.32 dólares de acuerdo con WordStream. Por lo tanto, en promedio, los anuncios en Facebook eran aproximadamente 88% más baratos que AdWords durante el año 2016. Esto quiere decir, que si se tiene un presupuesto de publicidad mensual muy pequeño (por ejemplo, entre $ 500 y $ 1,000), sería mucho más rentable publicar anuncios de Facebook, ya que te permitiria llegar a más audiencia por el mismo dinero. Pero la conversión de esos clicks en ventas es otra historia.

Por supuesto, los clicks no lo son todo y hay casos en los que puede hacer que AdWords funcione con presupuestos más pequeños, aunque no es común. Sin embargo, a veces los anunciantes simplemente no tienen presupuestos suficientemente grandes para competir en AdWords y pueden ver mejores resultados en canales más baratos, como Facebook.

El primer punto que se debe considerar es el sector en el que se encuentra ubicado tu negocio u organización y tu competencia al momento de tomar una decisión. Hay ciertos sectores o subsectores que en los cuales el CPC es desmedidamente elevado. Por ejemplo, si estás considerando publicar alguna de esas costosas palabras clave en Google y no tienes un presupuesto increíblemente grande, pues quizás desees reconsiderar. En los EE.UU. por ejemplo en los sectores de educación superior, finanzas, legal y cuidado médico; los CPS son extremadamente altos debido a que son sectores muy competitivos dentro de AdWords y por lo tanto es muy difíciles de tener éxito anunciando allí. Una vez más, no estoy recomendando no usar AdWords, pero a igualdad de presupuesto los anuncios de Facebook podrían ser una alternativa más económica con más potentes capacidades de segmentación para muchos sectores.

Una vez que haya determinado el presupuesto que su negocio u organización puede pagar y que ha considerado el sector en que se encuentra y a su competencia competencia, entonces debe considerar lo que espera lograr con esta iniciativa de marketing que tiene en mente. Si su objetivo es aumentar el conocimiento de marca o la generación de demanda, los anuncios de Facebook sería su mejor opción. Sin embargo, si está buscando generar ventas o clientes potenciales, es posible que AdWords sea la mejor alternativa. Con AdWords, un usuario está buscando lo que su negocio está vendiendo. Por lo tanto, su intención de compra es generalmente mucho mayor. Pero tendrá que considerar una vez más los costos generales. Así dependiendo de lo que desee hacer ambos canales pueden complementarse y alimentar el crecimiento de su negocio u organización.

Un punto clave y que muchas veces es pasado por alto, es que si su negocio tiene un nuevo producto o servicio que ofrecer y hay muy poco o ningún volumen de búsqueda, entonces Google AdWords probablemente no generará una tonelada de tráfico y por lo tanto es poco probable que le resulte rentable.

Espero que toda esta información les haya sido de utilidad y espero sus comentarios.

Todo lo que necesita saber del ransomware WannaCrypt

Estándar

El viernes pasado (12 de Mayo de 2017), un ataque de ransomware golpeó decenas de miles de ordenadores en todo el mundo antes de que fuera (al menos temporalmente) detenido por un investigador de seguridad que encontró y activó un killswitch para dicho malware. Pero es posible que el desarrollador del malware pueda modificar el código e intentarlo de nuevo, por lo que la mejor protección es asegurarse de que el software su computadora esté actualizado. El gusano utiliza para su propagación una vulnerabilidad de Windows llamada EternalBlue, que fue parchada en Marzo de este año.

El virus ha demostrado ser tan efectivo que  Microsoft lanzó una actualización de emergencia para versiones de Windows que ya oficialmente no están soportadas cómo Windows XP, Windows 8 y Windows Server 2003.

Describamos ahora cuáles eran las demandas de los hackers autores del gusano informático. Luego de que este malware encripta todos los archivos de una computadora muestra un mensaje en el que exige un pago de $ 300 (en bitcoins) y se tienes 3 días para pagar antes de que el pago se duplique a $ 600. Si no se paga en una semana, entonces el ransomware amenaza con borrar los archivos por completo. Obsérvese también el aspecto de la ingeniería social: se crea un sentido de urgencia para impulsar a las personas a actuar, esto ha hecho que los autores del malware logre recaudar un estimado de $36,000. Un sentido de la esperanza se concede en virtud de la capacidad de descifrar una muestra de selección de los archivos. (Tenga en cuenta el título «Wana Decrypt0r» en la imagen destacada de este post, los tres términos: WannaCry, Wcry y WannaCrypt se refieren a la misma pieza de malware, son meras representaciones del mismo nombre).

El malware se difunde a través de SMB (Server Message Block), es decir el protocolo  utilizado típicamente por los equipos Windows para compartir sistemas de archivos a través de una red local. Una máquina infectada propagaría entonces la infección a otras computadoras que no esten actualizadas en la misma red.

De todo lo que se ha publicado, se desprende que la propagación de WannaCry ha sido a través del protocolo SMB por lo que cuando estamos hablando de máquinas detrás de los firewalls que han sido afectadas, implica que los puertos 139 y 445 han estado abiertos y por lo tanto todas las computadoras en la red local que eran vulnerables potencialmente han podido ser infectadas por las conexiones entrantes desde Internet. Sólo se necesitaría una máquina infectada detrás del firewall para para luego poner a otros en riesgo debido a que se propagaba por sí mismo. Debido a la naturaleza de la web y la amplia gama de máquinas sin actualizar, las tasas de infección se extendieron rápidamente a decenas de miles de máquinas en todo el mundo.

El New York Times ha creado un mapa animado en base a los datos obtenidos, en dónde muestra lo rápido que se propagó el gusado en todo y mundo y que prácticamente no quedo un país incólume a su ataque.

Cómo habíamos mencionado antes, este gusano informático tenía un killswitch, o lo que solemos llamar en español botón de autodestrucción. Este fue descubierto accidentalmente por los investigadores de MalwareTech, que en un blog post han descrito la experiencia. Básicamente el gusano lo que hace antes de continuar infectando otras computadoras es chequear si el dominio iuqerfsodp9ifjaposdfjhgosurijfaewrwergwea.com existe. Los investigadores de MalwareTech registraron dicho dominio y levantaron una simple página web y es así como la infección fue detenida.

Probablemente los autores del malware pusieron dicho killswitch alli en caso de que necesiten ponerlo a dormir en caso de que llame demasiado la atención. Pues al parecer este virus ha sido mucho más exitoso que lo esperado por sus creadores y es por ello que desistieron en registrar el dominio, ya que si lo hicieran se pondrían en evidencia.

Los pagos que se exigían eran recibidos en tres diferentes billeteras de bitcoin, que aunque anónimas, se puede saber cuánto dinero ha recibido cada una de estos monederos electrónicos:

  1. 13AM4VW2dhxYgXeQepoHkHSQuy6NgaEb94 – 47 transactions totalling $11,990.33
  2. 12t9YDPgwueZ9NyMgw519p7AA8isjr6SMw – 50 transactions totalling $16,019.18
  3. 115p7UMMngoj1pMvkpHijcRdfJNXj6LrLn – 38 transactions totalling $8,051.64

Es decir al momento de escribir este post, los hackers habían acumulado un botín de U.S.$ 36,061.15 al cambio. Si desean hacer la matemática por Uds. mismos, pues Google ofrece una herramienta que permite convertir de bitcoins a dólares americanos.

Recordemos que este malware amenzada con doblar el precio del rescate para hoy y borrar archivos definitivamente para el próximo viernes, así que es de esperar que la desesperación haga que muchos de los miles de propietarios de computadoras afectadas por este ransomware paguen y por lo tanto el botín de estos cyberdelincuentes aumente.

Y finalmente, ¿qué tiene que ver la NSA con esto?, Pues la vulnerabilidad de SMB que Microsoft solucionó en un parche de seguridad en Marzo de este año fue conocida por la NSA y no notificó a Microsoft del problema. Esto lo sabemos porque el hacker llamado ShadowBrokers el mes pasado se refirió específicamente a este problema y lo llamó «ETERNALBLUE», un exploit de SMBv2.

Y qué hacer ahora?

Bueno, estamos en modo de limpieza en este momento. Los vendedores de antivirus están lanzando actualizaciones de sus firmas digitales para identificar el malware y los especialistas estan evaluando cuál será el daño total a la espera de nuevas variantes de este ransomware. Pero las lecciones más grandes, que debemos sacar en claro de todo esto son las que refuerzan lo que la comunidad de seguridad ha estado diciendo a la gente durante tanto tiempo, entre ellas tenemos:

  • Mantenga sus sistemas operativos actualizados.
  • Aplique los parches de seguridad lo antes posible.
  • Tener una estrategia de copia de seguridad sólida.
  • No abra correos electrónicos o archivos adjuntos sospechosos o de fuentes que Ud. no conozca.
  • Restringir el acceso a los recursos que comparte en la red (el ransomware sólo puede cifrar lo que puede acceder o a las máquinas a las que puede acceder).
  • Bloquee puertos innecesarios (por ejemplo bloquear accesos externos a el puerto SMB).
  • Los antivirus tradicional son malos en la identificación de este tipo de amenazas. Así que no se sienta seguro sólo por tener un antivirus en su computadora.

Todo esto es mucho más importante que el gusano WannaCry en sí mismo y hasta que estas lecciones no sean interiorizadas, otras variantes subsecuentes de este malware podrían golpear a todos aquellos que no esten preparados.

Microsoft anunció que Windows 10 para ARM correría aplicaciones Win32

Windows 10
Estándar

Todo el mundo ha criticado al recientemente anunciado Windows 10 S por sólo permitir ejecutar aplicaciones universales (UWP), es decir aquellas que se descargan del Microsoft Store. Sin embargo algo que muy pocos han comentado es el reciente anuncio de Microsoft en el BUILD 2017 sobre el nuevo Windows 10 para ARM y la posibilidad que tendría este de poder ejecutar aplicaciones Win32 (las aplicaciones que todos conocemos).

Aquí un video de Channel 9, dónde podemos ver la exposición de Hari Pulapaka y Arun Kishan, sobre cómo el nuevo Windows 10 par ARM será capaz de correr aplicaciones Win32 sobre procesadores Qualcomm Snapdragon:

 

 

Esta no es la primera versión de Windows que funciona en arquitectura ARM. El difunto Windows RT fue diseñado para trabajar en hardware ARM de bajo costo, pero tenía grandes problemas. El primero de ellos es que fue parte del gran fiasco que fue Windows 8 y terminó siendo condenado por los pecados de su hermano mayor. Además estaba en desventaja porque Microsoft restringía lo que se podría utilizar en el sistema operativo. Se podía ejecutar Office y algunas otras aplicaciones que Microsoft había pre-instalado, pero después de eso la única opción para instalar aplicaciones era el Microsoft Store y sus apps, que en aquella época eran conocidas como aplicaciones Metro, fuera de eso no existía nada. El gran problema con el Microsoft Store es hasta ahora la falta de aplicaciones ya que los desarrolladores no son atraídos a esta plataforma por su pobre adopción. Dado todo lo anterior, no es de extrañar que Windows RT fallara miserablemente.

Se puede decir que Windows 10 S ha recusitado el espíritu de Windows RT, en el sentido de que aunque es una version completa de Windows 10, limita a sus usuarios a instalar aplicaciones sólo desde el Microsoft Store, de la misma forma que el Windows RT original. Todavía no sabemos si esto será algo que desanime a los usuarios que andan en búsqueda de alternativa de bajo costo. Sin embargo la verdadera sorpresa es que Windows 10 para ARM ha resucitado Windows RT con un giro inesperado y que le otorga más posibilidades, el poder ejecutar en la arquitectura ARM aplicaciones Win32.

Lo que esto significa es que en teoría se podría comprar una tablet ARM con Windows 10 para ARM y utilizarla para ejecutar aplicaciones estándar de Win32. Lo que es más, las aplicaciones no tienen que ser modificados de ninguna manera. Simplemente las instalamos de la manera habitual y el software del sistema operativo hace la magia. Se afirma que esto funciona porque las instrucción x86 son traducidas a la arquitectura ARM64 en tiempo de ejecución. Para acelerar las cosas se almacenan en una copia de caché en el disco para futuros usos.

Lo que está claro es que este proyecto se basa en el supuesto de que aparecerán en el futuro próximo procesadores ARM más potentes, como el Qualcomm Snapdragon 835, que debería estar disponible a finales de este año y ofrecerían la suficiente potencia para que Windows 10 para ARM ejecute las aplicaciones lo suficientemente rápido. En el video se afirma que los dispositivos basados en el Snapdragon 835 y Windows 10 para ARM estarían disponibles más adelante en el año.

Si estas computadoras aparecen en el mercado más adelante en el año y además ofrecen un rendimiento aceptable, es posible que este tipo de computadoras vendan más unidades que las basadas en Intel con Windows 10 S. Interesantes tiempos los que vivimos.

Amazon permite crear chatbots con Lex

Estándar

Lex es el servicio de voz a texto y texto a voz que está detras del asistente Alexa, que ha permitido a Amazon capturar el 70% del mercado de los parlantes controlados por voz. Y ahora todos podemos usarlo para agregar estas capacidades de voz a nuestras aplicaciones y dispositivos sin restricciones.

Lex es un ASR (Automatic Speech Recognition), que en español sería Reconocimiento Automático de la Voz y es tambien a la vez un NLU (Nature Language Understanding) como servicio.

Lex es ahora un nuevo servicio de AWS que se integra con AWS Lambda. No se trata de un sistema general de voz a texto y texto a voz. Está organizado como un sistema para construir chatbots, aunque por el momento el único idioma con el que trabaja adecuadamente es el inglés. El sistema utiliza el mismo enfoque que tendríamos que seguir para crear una aplicación de Alexa. Debemos definir las acciones a realizar (que son llamadas intents y slots) y los enunciados asociados a ellas. Los enunciados son las frases escritas o habladas que invocan las acciones a ser realizadas (intents) y los «slots» definen los datos que la intent necesita para completar las acciones que deseamos.

Se puede enviar hasta 15 segundos de voz a Lex y debe asegurarse de que el micrófono que se está utilizando sea el apropiado para el trabajo. Amazon ofrece ahora un kit que consiste en una matriz de siete micrófonos (far field mic) que son los mismos que utiliza el Amzon Echo sólo está disponible para desarrolladores invitados, me he registrado y estoy a la espera de recibir la invitación, si eso sucede se los hare saber. Los formatos de entrada soportados por el momento son LPCM y Opus. Los formatos de audio de salida soportados son: MPEG, OGG y PCM. La salida de voz no puede usar la voz de Alexa, por razones de copyright, pero se puede elegir entre otras siete voces.

Otro trabajo que el desarrollador debe realizar es encontrar un reemplazo para la palabra de activación, el sistema no arrancar cuando usted diga Alexa o cualquier otra cosa. Depende de usted implementar el mecanismo que dispara el micrófono.
Amazon ofrece SDKs para iOS y Android que admiten voz y texto. Pero también se pueden desarrollar webapps con esta tecnología ya que hay SDKs para node.js, PHP, Python y .NET. La interacción con el servicio es a través de llamadas REST con sólo dos acciones: PostContent y PostText. La respuesta está determinada por el bot que usted ha construido.

A primera vista esto se parece mucho a desarrollar un app para Alexa, pero hay algunas diferencias importantes. La primera es que Amazon no tiene que certificar tu aplicación. Puedes desarrollar lo que quieras. Esto le da más flexibilidad a los desarrolladores de lo que está permitido en Alexa. Sin embargo, debemos de considerar de que Amazon tiene acceso a todos los datos que intercambies usando este servicio y mantiene la grabación de entrada de voz con el objetivo de usarlos para mejorar el reconocimiento de voz.
Finalmente, la mayor diferencia entre crear un app para Alexa y usar Lex es que el servicio de Alexa es gratuito, pero Lex es un servicio pagado:

El servicio se factura en base al número de solicitudes de texto o de voz procesadas por tu bot, los precios inician en $ 0.004 por solicitud de voz y $ .00075 por solicitud de texto. Por ejemplo, el costo de procesar 1,000 solicitudes de voz sería $ 4.00 y el de procesar 1,000 solicitudes de texto sería $ 0.75.

La potencialidad de esta tecnología es muy grande, no me extrañaría que en los próximos meses los makers de todo el mundo produzcan interesantes dispositivos que hagan uso de Lex.

Finalmente MP3 es gratis

Estándar

Una de las limitaciones que tenía instalar cualquier distribución principal de Linux era que no podía incluír el codec de MP3, porque este estaba protegido por patentes. Claro, siempre era posible descargar por cuenta propia un codec e instalarlo en nuestra PC; ya que es imposible que las autoridades hagan auditoría de todas las máquinas Linux domésticas en búsqueda de software que esté infringiendo patentes. Sin embargo esto es muy fácil de hacer en el ISO de una distribución.

De acuerdo a este extenso y detallado artículo de OSNews, las patentes de estas tecnologías: MP3, MPEG-2, H.264 expiraron el pasado mes de abril. Con lo cuál RedHat ha anunciado que la próxima versión de Fedora incluirá el codificador/decodificador de MP3.

El formato de compresión de audio MP3 revolucionó, o mató dependiendo a quién le preguntemos, el negocio de la música. Pero usarlo en un proyecto ha sido un campo minado desde el punto de vista legal. Muchos proyectos pequeños sencillamente ignoraron cualquier problema de patentes y siguieron adelante. Si por azares del destino un proyecto de este tipo tuvieran éxito, entonces los tiburones de patentes lo notarían e iniciarían una querella legal para tomar una parte de su fortuna.

Es debido a lo anterior que los proyectos de código abierto como Fedora no tenían otra opción que no enviar decodificadores o codificadores MP3 en sus distribuciones ya que enfrentarían a estos avaros abogados de patentes.

Otra consecuencia importante del hecho de que MP3 ya puede ser usado sin estar pagando royalties es que ahora cualquier proyecto de software/hardware puede usar esta tecnología como base para el desarrollo de su modelo de negocio sin temer que cuándo luego de tanto esfuerzo el emprendimiento empiece a dar frutos, no tendrá que compartir su éxito con el propietario de la pante.

Sin embargo, muchos podrían argumentar que la era del MP3 ya había terminado con la llegada de servicios de streaming de audio como Pandora o Spotify. Pero digale eso a cualquier entusiasta de la música con una biblioteca de pistas extraídas de CDs y convertidas a formato MP3 e incluso de LPs digitalizados, todos almacenados en su NAS, probablemente no te creería que el MP3 ha muerto.

Windows 10 S, ¿es una buena idea?

Estándar

La semana pasada ha sido anunciada una nueva versión de Windows, si desean ver todo el keynote de Microsoft, está publicado en YouTube. La pregunta que todos nos hacemos ahora es si un Windows con funcionalidades limitadas y orientado al segmento educativo puede revertir la tendencia de la rápida pérdida de mercado en el sector educativo del gigante de Redmond .

En lo personal creo que uno de los objetivos de Microsoft detras de forzar la instalación de aplicaciones sólo desde el Microsoft Store y que no se pueda cambiar el motor de búsqueda es recuperar la cuota de mercado que tanto Edge como Bing han sufrido a pesar de las mil millonarias inversiones. Sin, embargo esta es una apuesta muy arriesgada ya que los usuarios pueden sentir que adoptar Windows 10 S limita lo que pueden hacer con sus computadoras.

Otro de los potenciales problemas de Windows 10 S, es que Microsoft desea que sea el Sistema Operativo de una generación de laptops baratas de $189. A ese nivel de precio no se puede poner mucho hardware en un equipo, y es sabido que Windows 10 por más optimizado que esté en comparación con versiones anteriores, no funciona bien en equipos de características limitadas. Si se asocia una probre performance con la limitada capacidad de intalar software, pues nos encontramos ante una combinación tóxica difícil de superar.

Muchos ya están llamando a Windows 10 S, un Windows RT 2.0. Cómo todos recordamos esa fue una terrible apuesta de Microsoft por un Windows limitado que pudiera correr en dispositivos ARM. Windows debido a su filosofía es difícil (sino imposible) de portar con todas sus librerías a una arquitectura que no sea Intel, esa es la razón por la cual RT no tuvo éxito. Sin embargo en Windows 10 S, se sigue en la arquitectura Intel, sólo que se apunta a la gama baja en dónde las Google Chrome OS han hecho un gran avance en el sector educativo. Si además consideramos el hecho de que Microsoft dice que por un pago adicional de $50, Windows 10 S se puede actualizar a Windows 10 Pro, pues al parecer lo que está claro es que Microsoft ha puesto alguna limitación por software que remueve cuándo se actualiza la licencia. Entonces por qué las personas tendrían que comprar máquinas de $189 con un Windows 10 S limitado, si por el mismo precio existen en el mercado actualmente versiones con Windows 10 Home Edition.

Sólo el tiempo nos dirá si esta nueva apuesta de Microsoft de reempaquetar un producto existente con algunos cambios y restricciones arbitrarias tendrá éxito.

¿Es aún relevante PHP?

Estándar

¿Si Mark Zuckerberg tuviera que crear facebook este año 2017, volvería a utilizar el LAMP stack para construir su red social? Lo mismo nos podríamos preguntar sobre otros importantes proyectos que usan PHP como Wikipedia, Flickr, Tumblr or WordPress. Lo cierto es que PHP tiene entre nosotros 21 años y ha pasado por varias encarnaciones hasta llegar al actual PHP 7.

En un principio era la opción obvia para aquellos que deseaban desarrollar aplicaciones del lado del servidor de forma rápida y no querían lidiar con la criptica sintaxis de Perl o extensos programas escritos en C/C++. Sin embargo en nuestros días contamos con un gran número de alternativas a PHP como son Ruby, Python or node. Pero, ¿por qué este veterano lenguaje es aún uno de los más usados en la web?

Las estadísticas no mienten, PHP está presente en más del 82.6% de todos los sitios web, según W3Tech, aquí el cuadro comparativo a la fecha de hoy:

Lo llamativo de PHP el lenguaje que se niega a morir, es que a pesar de las críticas de sus detractores cada día PHP sigue evolucionando y añadiendo características nuevas a la par de que trata de mantener lo más posible una compatibilidad hacia atrás que lenguajes más modernos no pueden ofrecer.

Uno de los factores que contribuyen a su omnipresencia en la web es el gran número de CMS (Content Management System) que han sido desarrollados con él, entre ellos podemos mencionar: WordPress, Drupal, Joomla, Magento, Concrete5, TYPO3 entre otros. La comunidad de usuarios es tan grande y tiene tanto peso que hasta Google que se negó en un principio a ofrecer PHP como opción en su servicio AppEngine, ha tenido que ofrecerlo al lado de Go, Python y Java, que eran los lenguajes que deseaba promocionar.

No hay servicio de hosting compartido o servicio PaaS (ejemplo Heroku), que no tenga a PHP entra las opciones. El mercado lo demanda a pesar de que las instituciones educativas lo han desechado para ser enseñado en las aulas. Los programadores PHP son en su gran mayoría autodidactas que aprenden el leguaje tratando de modificar un CMS, ya sea a través de la creación de un plugin, editando directamente parte del código del CMS o creando una webapp usando alguno de sus múltiples frameworks.

La fortaleza de PHP, no es su sintaxis limpia, su consistencia o su paradigma de desarrollo, por el contrario, PHP como lenguaje adolece de todos los defectos posibles. Pero sin embargo, es hasta la fecha lo más rápido que existe del lado del servidor y si has entendido lo más básico de programación estructurada u orientada a objetos, puedes convertirte en un desarrollador PHP muy rápidamente.

PHP no aspira a la perfección, por el contrario sólo quiere ser lo suficientemente bueno para resolver problemas de la vida real. Si este no fuera el caso, el lenguaje ahora estaría enterrado y no sería la envidia de los lenguajes «perfectos». Aquellos creados en las aula universitarias, con las mejores prácticas en mente y consistentes en su sintaxis.

En un mundo como en el que vivimos, los errores no se perdonan. Cada gran empresa tiene su propio lenguaje que trata de promocionar para tomar la web, por ejemplo Microsoft apuesta con todo a ASP.NET y C#, Oracle lo hace con Java y todo su ecosistema, Google nos ofrece Go. Sin embargo PHP no tiene a nadie detras, más que a sus millones de programadores que a lo largo de todos estos años han aprendido a convivir con sus defectos.

Si vas a aprender a programar, no te recomiendo PHP como tu primer lenguaje. Mejor sigue lo que el programa de estudio de tu universidad o instituto tiene. Pero luego de eso, si es que quieres tener un trabajo, te recomiendo que estudies PHP por tu cuenta, como casi todos los demás desarroolladores de PHP han hecho.

PHP no ha muerto, no está agonizando y si prestamos atención a las estadísticas es muy posible que el primer trabajo que tengas como desarrollador web tenga que ver con este lenguaje. Así que en lugar de hacer campañas para matar un lenguaje que mueve más del 80% de la web que conoces, mejor aprendelo.

No todos los discos SSD son iguales

Estándar

Los discos de estado sólido (SSD=Solid-State Drive) están cayendo rápidamente en precio y la promesa de revitalizar viejas computadoras por una módica inversión está atrayendo a gran cantidad de usuarios a reemplazar sus discos electromecánicos por estos nuevos dispositivos 100% electrónicos. Aunque pudiera parecer que todos son iguales, las tecnologías usadas para su construcción son importantes al considerar la compra de una de estas unidades ya que impactará tanto el rendimiento como la vida útil de estos dispositivos.

Un disco SSD se parece a una memoria flash típica, ya que comprende como esta una matriz de memoria, que incluye un gran número de células o celdas. Cada una de estas celdas de memoria incluye un transistor de efecto de campo de puerta flotante capaz de sostener una carga. Los datos en una celda se determinan por la presencia o ausencia de la carga eléctrica en la puerta flotante.

Las celdas se suelen agrupar en secciones llamadas «erase blocks» ó «bloques de borrado». Cada una de las celdas dentro de un bloque de borrado puede ser programada eléctricamente de una manera aleatoria cargando la puerta flotante. La carga se puede eliminar de la puerta flotante mediante una operación de borrado de todo el bloques. Ya que sólo se puede borrar una celda borrando a todas las del mismo bloque, de alli proviene su nombre.

Un término utilizado frecuentemente para categorizar «vida útil» de este tipo de meorias es P/E. El P/E (Program/Erase) hace referencia a un ciclo de programación/borrado, cuando los datos se escriben en una celda, se borran y se vuelven a escribir. Los diferentes tipos de memorias flash tienen vidas diferentes o limitan el número de ciclos P/E soportados antes de que la celda falle.

Las limitaciones del ciclo P/E son inherentes a este tipo de memorias flash, y se refieren a los números máximos del ciclo de programación/borrado antes de que la información no pueda ser leida o sea imposible escribir sobre las celdas. Esta es la limitación principal de las memorias flash. Como con cualquier memoria, varias características del semiconductor, densidad fab y el control, determinan la vida útil, velocidad, costo y tasas de transferencia de P/E.

MLC vs. eMLC vs. SLC vs. TLC

Hay cuatro tipos de memorias flash del tipo NAND, que difieren en número de ciclos P/E por ciclo de vida y definen su construcción:

SLC – Celda de un solo nivel (Single-Level Cell): la más cara, la de más larga vida (alto P/E) y generalmente más rápida. Los bits se almacenan sólo como 2 niveles de voltaje. Un «1» o «0.» En SLC se almacenan menos datos por celda, por lo que el coste de almacenamiento por unidad es mayor.
MLC – Celdas multi-nivel (Multi-Level Cell): son las más usadas para el consumo masivo y se utiliza en teléfonos, cámaras y pendrive USB. La carga almacenada en MLC puede interpretarse como una variedad de valores, 0 a 3, o 4 estados posibles, y puede almacenar 2 bits por celda. Con tiempos de vida más cortos, por lo general diez veces menores que los del tipo SLC. La ventaja de esta memoria es que el costo es entre la mitad y la cuarta parte de lo que cuestan los SLC. Pero con velocidades de escritura más bajas. Las memorias del tipo MLC por lo general utilizan algún tipo de código de corrección de errores por bloque.
EMLC – Celdas multi-nivel de grado empresarial (Enterprise Multi-Level Cell): es una celda MLC con vida más larga, generalmente debido a un controlador avanzado que opera las celdas y técnicas de recuperación de errores, densidad de construcción, o alguna combinación de estos dos factores.
TLC – Celdas de triple-nivel (Triple Level Cell): este tipo de memorias es defendida por Samsung, TLC tiene mayores requerimientos de corrección de potencia y error. Además de mayores niveles de desgaste. La TLC está dirigida a entornos con usos de lectura predominantes y no ha sido de uso común. Sin embargo, muchos discos SSD de bajo costo están usando este tipo de memoria.

Arquitecturas NOR vs NAND

Las celdas de memoria de una matriz de memoria EEPROM (memoria de sólo lectura programable y borrable eléctricamente) y una matriz de memoria flash se disponen típicamente en una arquitectura «NOR» o «NAND»:

En la arquitectura NOR, cada celda directamente se acopla a una línea de bits, permitiendo un verdadero acceso aleatorio.
En cambio en la arquitectura NAND, las celdas se acoplan en «cadenas» de celdas, de manera que cada celda se acopla indirectamente a una línea de bits y requiere activar las otras celdas de la cadena para tener acceso a la lectura o escritura.
La memoria flash es un tipo de EEPROM, pero el término EEPROM generalmente se refiere a EEPROM sin flash, donde los datos pueden ser borrados en unidades pequeñas, usualmente bytes. La mayoría de las unidades de estado sólido (SSD), flash USB y tarjetas de memoria utilizan flash NAND. De alli que el borrado, sea por lo general un proceso lento. Sin embargo, es mucho más rápido en flash que en las meorias EEPROM sin flash, debido a los grandes tamaños de bloque utilizados en flash.

Trabajando en Internet

Estándar

Indudablemente el terminar la universidad con un título de ingeniero de sistemas, ingeniero informático o cualquier otro título afín es sólo el primer paso. Más allá de las aulas universitarias existe todo un mundo de posibilidades si es que deseamos tomarlas. Pero tal vez la más socorrida de todas las alternativas es la de freelancer (trabajar en Internet de forma remota) y es allí donde por primera vez muchos descubren un mundo de brutal y salvaje competencia, para el cual la gran mayoría de recién graduados están completamente desarmados.

Las causas de esta situación de indefensión son muchas y entre ellas podemos enumerar entre otras: a las limitaciones propias de las instituciones educativas dónde se estudio  que pueden ofrecer programas de estudio obsoletos, la mala calidad profesional de los catedráticos universitarios y el desconocimiento de los encargados de actualizar los planes de estudio de dichas casas de estudio de la situación del mercado laboral actual. Pero además también dentro de las causas de esta debilidad para enfrentar un mercado laboral saturado y altamente competitivo están las propias de la persona, por ejemplo: el desconocimiento del idioma inglés (hablado y escrito), la poca o casi nula capacidad de aprender por sí mismo y sobre la marcha nuevas tecnologías, la ausencia de capacidades de comunicación tanto oral como escrita y como corolario final las falsas expectativas del recién graduado que cree haber terminado exitosamente el mayor reto de su vida, cuando en realidad está sólo en la línea de partida de una carrera profesional que podría extenderse de 30 a 40 años en el futuro.

Algunos comprenden rápidamente la situación y se adaptan a la nueva realidad, pero muchos otros pasan a engrosar una larga audiencia en busca de cursos en Internet que prometen un trabajo seguro, algo que no existe en los tiempos presentes para nadie.

También están los que emprenden, la mayoría sub-capitalizados y sin un conocimiento de cómo hacer crecer un negocio y como es lógico terminan quebrando antes de los 2 años.

Pero el común denominador para casi todos es trabajar por Internet, ya que los trabajos locales por lo general están muy mal pagados y ofrecen una pobre línea de carrera. Pero trabajar por Internet significa entrar a competir en un mercado global de millones de desarrolladores de cualquiera de estos tipos según James McCaffrey:

Desarrolladores de aplicaciones de escritorio, dónde las dos principales tecnologías en competencia son .Net y Java.

Desarrolladores de aplicaciones móviles, donde las dos principales ecosistemas son iOS y Android.

Desarrolladores de aplicaciones web, dónde hay dos tipos los encargados del frontend (HTML5/CSS/Java) y los del backend donde existen una multiplicidad de lenguajes y frameworks.

Desarrolladores de sistemas, que son aquellos que desarrollan los servicios sobre los que corren otras soluciones, por ejemplo aquellos que trabajan creando sistemas operativos o motores de base de datos.

Desarrolladores de sistemas embebidos, que actualmente se conoce como Internet de la Cosas, pero que siempre ha existido y son soluciones todo en uno para problemas específicos, la domótica es tal vez la rama más conocida de este campo.

Pruebas y automatización, también conocido como QA (Quality Assurance), son los desarrolladores cuya misión es crear programas que prueban la calidad de otros programas y buscan encontrar errores que puedan ser explotados ya sea de forma remota y local. Este campo está muy involucrado en el ethical hacking y la seguridad informática.

Desarrolladores científicos, es históricamente el primer tipo de desarrollador que existió y son aún los mejor pagados. Estos desarrolladores crean sistemas de análisis de datos (Big Data), crean modelos predictivos del clima o de la bolsa de valores y son de todos los desarrolladores listados aquí los que más uso hacen de las matemáticas y otras ciencias exactas.

Desarrolladores de tecnologías emergentes, estos desarrolladores son los que no podemos clasificarlos dentro de ninguna de las categorías anteriores y están creando la siguiente nueva tecnología. Por lo general estos desarrolladores no saben que están creando la siguiente gran revolución.

Pero independientemente de dónde puedas o quieras ubicarte tú en la clasificación de los desarrolladores lo que debes considerar si deseas trabajar en Internet es lo siguiente:

  • Debes dominar el idioma inglés (hablado y escrito) ya que es la forma cómo te comunicarás en un mundo globalizado.
  • Debes de tener sólidos fundamentos teóricos de matemática, algoritmos, estructura de datos y lenguajes de programación. No son un requisito para un trabajo en sí, pero son las bases sobre las cuales puedes aprender rápidamente cualquier nueva tecnología.
  • Debes tener facilidad de palabra y redacción, recuerda que debes emplear buena parte de tu tiempo expresando ideas y consiguiendo que tus pares o jefes comprendan que es lo que propones para resolver un problema.
  • Debes de tener una idea clara de cómo funciona la economía, no es preciso que seas un economista, pero si debes de poder comprender las leyes económicas básicas y cómo estas se aplican al área en la cual decidiste entrar.

Espero que todos estos consejos les hayan sido de utilidad. De ser ese el caso, por favor comparta este post en sus redes sociales.