20 sitios para aprender en la red

Cursos recomendados

  1. Coursera: cursos y especializaciones gratuitos y en tu idioma ofrecidos por algunas de las instituciones educativas más prestigiosas del mundo.
  2. MicrosoftVirtualAcademy: Sitio para aprender a desarrollar o administrar plataformas de Microsoft.
  3. Code School: una de las mejores escuelas de programación en linea. Cursos interactivos y retos para aprender código, escribiendo código.
  4. Class Central: cursos masivos en linea y abiertos (MOOCs) sobre cualquier tema que imagines: programación, ciencias, negocios, medicina, etc.
  5. Babbel: una de las mejores plataformas en linea para aprender un nuevo idioma.
  6. Degreed: una comunidad de profesionales universitarios en la que el objetivo es convertirte en un experto en tu materia.
  7. Curious: un sitio en el que aprender algo nuevo todos los días dedicando una pequeña cantidad de tiempo para ello: 5, 15 o 30 minutos diraios para invertir en cualquiera de las más de 20 mil lecciones virtuales.
  8. Craftsy: aprende a hacer cosas con tus manos. Desde cocina, hasta pintura o costura, gracias a más de 1000 clases de los mejores instructores.
  9. One Month: un sitio que promete enseñarte una nueva habilidad en solo 30 días.
  10.  Hackerrank : Un sitio para aprender a solucionar problemas de algoritmia escribiendo codigo en el sitio web.
  11. Codecademy: cursos de programación para principiantes. Tiene muchas lecciones básicas en español.
  12. BigThink: vídeos, artículos y consejos de expertos en muchos temas para que aprendas a ser exitoso.
  13. PhotographyCourse: cursos de fotografías especializados y para principiantes tanto gratuitos como de pago.
  14. AllTheRecipes: la escuela de cocina del popular sitio web de recetas, en la que te enseñan todo tipo de habilidades básicas para que cocines los mejores platos en casa.
  15. CodeProject: Sitio de excelentes tutoriales para aprender sobre diferentes tecnologias, los casos practicos y tutoriales son faciles de entender.
  16. W3Schools: Esta pagina te permite aprender algunos los principales estandares web, muy util para aprender las etiquetas HTML y sintaxis WEB.
  17. Pluralsight: Videotutoriales de diferentes tenologias, excelente acompañamiento de expertos y miembros reconocidos de cada especialidad.
  18. Lynda: Pagina especializada y con larga trayectorioa enseñando en multiples areas de negocio, programacion y creatividad.
  19. LearnDevNow: plataforma para aprender Programacion en freameworks corporativos
  20. Platzi: Plataforrma Latinoamerica enfocada en enseñar diseño, marketing y programacion.

Articulo original Fuente Original

Frameworks de Front-end en MVC

Un framework de Front-end tiene la finalidad de proporcionar los estilos, fuentes, iconos y recursos visuales para ser utilizados en las paginas web. Por ejemplo si se quiere cambiar el estilo de los botones tradicionales en una pagina web se puede hacer una referencia a bootstrap y el botón de la pagina cambia su estilo y presentación de acuerdo a los estilos definidos.

La idea de este proyecto (https://github.com/mariobot/UiFrameworks) es buscar entusiastas y personas que quieran participar para seguir aportando buenas practicas al momento de desarrollar un proyecto ASP MVC con frameworks de presentación.

El proyecto esta dividido en diferentes subproyectos, nombrados con el framework de presentación que se va a aplicar. (Por ejemplo) El proyecto Materialized utiliza el framework Materialized y se muestra como aplicar desde un botón, una tarjeta, un panel, etc en un proyecto MVC. A continuación adjunto la pagina con los proyectos que se encuentran en el repositorio:

Arquitectura

Cada uno de los proyectos se maneja en un puerto diferente con la finalidad de poder instalar los paquetes de nuget necesarios para cada framework, como también con la finalidad de poder manipular cada proyecto desde una aplicación diferente.

El proyecto HOME es el que hace referencia a todos los proyectos.

Home (bootstrap)

Home

El proyecto Materialized utiliza este framework de material design y hace la referencia a como se puede implementar en un proyecto ASP.Net MVC

Materialized

Materialized

El proyecto HTML5 utiliza solamente etiquetas html5 y una referencia a una cascada de estilos.

HTML5

HTML5

El proyecto Skeleton utiliza este framework, el cual destaca por su sencillez y minimalismo.

Skeleton

Skeleton

Sean todos bienvenidos a descargar el repositorio en https://github.com/mariobot/UiFrameworks y empezar a hacer sus aportes y subirlos a este git.

Origen de la fabula del ingeniero y el tornillo

El origen de la fabula del ingeniero y el tornillo tiene su origen cuando Charles P. Steinmetz, un excéntrico ingeniero que de aquellas trabajaba en General Electrics y que junto a Thomas Edison o Nikola Tesla es considerado uno de los padres de la electricidad, cobró a Henry Ford 10.000 dólares por realizar una marca de tiza en un enorme generador eléctrico averiado.

Dicha marca de tiza era el punto de referencia para eliminar 16 vueltas de la bobina del generador.  Henry Ford reaccionó con el mismo estupor que el empresario de la fábula, mientras que Charles P. Steinmetz detalló la factura del mismo modo. “Hacer una marca de tiza: $1. Saber dónde hacer la marca: $9.999″. Una anécdota que fue contada por Jack B. Scott, hijo de un antiguo empleado de Ford, en una carta que envió a los editores de la revista Life en mayo de 1965.

Enviar mensajes de texto con Twilio

Twilio

El dia de hoy quiero compartirles este recurso para enviar mensajes de texto con Twilio. Esta es una plataforma que nos permite enviar mensajes de texto, hacer llamadas, gestionar llamadas. integrar procesos de autenticacion entre otras funcionalidad. Lo bueno de esta herramienta es que ofrece una integrqacion muy facil con tus proyectos, ya sea implementando las librerias que tienen diseñadas para .Net como otras plataformas como PHP, Ruby, Phyton, Java, Node.js.

A continuación explicare el proceso para enviar los mensajes desde un proycto en asp.net mvc.

Primero necesitamos crear una cuenta en Twilio en la siguiente direccion https://www.twilio.com/try-twilio . Recuerda que debes adicionar tu telefono con el indicativo +57 (para el caso de Colombia) para hacer el proceso de validación de tu cuenta.

Una vez registrada tu linea podrás hacer todas las pruebas que quieras con la linea celular registrada. La versión free no permite registrar números de terceros. para esto es necesario comprar el paquete de mensajes.
Una vez registrado entramos a la siguiente dirección para consultar nuestras credenciales que utilizaremos en la API https://www.twilio.com/user/account/settings  (Hacer clic en el candadito para mostrar el Token)
La sección de documentación de la api de Twilio la puedes encontrar en la siguiente dirección https://www.twilio.com/user/account/developer-tools/api-explorer/message-create En esta se encuentra todo el instructivo para utilizar la api.
En la siguiente dirección encontraras el paquete en nuget para adicionarlo al proyecto en . Net https://www.nuget.org/packages/Twilio
Hay que tener en cuenta que Twilio asigna un teléfono a tu cuenta. este teléfono asignado se tiene que utilizar al momento de enviar el mensaje, si no se utiliza la api no permite enviar mensajes. el teléfono que te asignan lo puedes encontrar en la siguiente dirección https://www.twilio.com/user/account/voice-sms-mms
Con todo listo para utilizar la api creamos un nuevo proyecto MVC en Visual studio y adicionamos el paquete de twilio. Una vez adicionado ya podremos utilizar la librería. recordar hacer la referencia a la librería en tu controlador. using Twilio;

// Download the twilio-csharp library from twilio.com/docs/csharp/install
using System;
using Twilio;
class Example
{
static void Main(string[] args)
{
// Find your Account Sid and Auth Token at twilio.com/user/account
string AccountSid = "yourAccountSid";
string AuthToken = "yourToken";
var twilio = new TwilioRestClient(AccountSid, AuthToken);
var message = twilio.SendMessage("el numero asignado por Twilio", "+57 Tu   telefono el que esta registrado", "Aqui va el mensaje de texto", null, null);
Console.WriteLine(message.Sid);
}
}

Un Buen PM Project Manager

Son 13 percepciones que en su momento hablamos durante una charla tecnica con un colega.

  1. Tratar las personas como personas y no como recursos.
  2. Jamás calcular tiempos con sobre-estimaciones, o pensando que se puede trabajar extra-horario.
  3. Nunca definir personas al 100% en un proyecto (uno va al baño, tiene llamadas, trancones, etc).
  4. Delegar tareas de acuerdo al nivel de cada dev.
  5. Aplicar las metodologías, si es scrum entonces hacer lo que ellos promueven.
  6. Involucrar a todo el equipo en las reuniones de entendimiento.
  7. El líder tecnico idealmente solo debe estar en 1 proyecto.
  8. Involucrar la parte de qa desde el inicio de la aplicación.
  9. Asegurarse que todos entienden de la misma forma los requerimientos.
  10. El PM (Project Manager) no debe ser un secretario, sino un facilitador (el pm no debe joder pq si).
  11. Siempre estimar tiempo para imprevistos (vacaciones, renuncias, incapacidades, problemas con x implementación, falta de hardware).
  12. Tener claro que las persones nuevas no producen al sigueinte día y afectan el desempeño de los demás.
  13. Dejar tanto correo y usar herramientas de seguimiento (como VSO – Assembla – Trello)

24 Rápidos tips para impulsar tu carrera como ingeniero este año.

Cada Punto esta explicado y analizado en ingles mas puntualmente en el blog de Jhon Sonmez

Soft Skills
Soft Skills, Libro recomendado