El Libro del Día: 2016-12-27
Titulo: WebGL Insights
Editor: Patrick Cozzi
Publicador: CRC Press
Nro Paginas: 416
Capítulos:
Section I WebGL Implementations
1 ANGLE: A Desktop Foundation for WebGL
2 Mozilla’s Implementation of WebGL
3 Continuous Testing of Chrome’s WebGL Implementation
Section II Moving to WebGL
4 Getting Serious with JavaScript
5 Emscripten and WebGL
6 Data Visualization with WebGL: From Python to JavaScript
7 Teaching an Introductory Computer Graphics Course with WebGL
Section III Mobile
8 Bug-Free and Fast Mobile WebGL
Section IV Engine Design
9 WebGL Engine Design in Babylon.js
10 Rendering Optimizations in the Turbulenz Engine
11 Performance and Rendering Algorithms in Blend4Web
12 Sketchfab Material Pipeline: From File Variations to Shader Generation
13 glslify: A Module System for GLSL
14 Budgeting Frame Time
Section V Rendering
15 Deferred Shading in Luma
16 HDR Image-Based Lighting on the Web
17 Real-Time Volumetric Lighting for WebGL
18 Terrain Geometry - LOD Adapting Concentric Rings
Section VI Visualization
19 Data Visualization Techniques with WebGL
20 hare3d - Rendering Large Models in the Browser
21 The BrainBrowser Surface Viewer: WebGL-Based Neurological Data Visualization
Section VII Interaction
22 Usability of WebGL Applications
23 Designing Cameras for WebGL Applications
Descarga:
WebGL_Insights
Blog de Luis Dueñas dedicado a la difusión del Desarrollo en Microsoft .NET, Visual Studio, WinForms, WebForms, MVC, ASP .NET, jQuery, AJAX, HTML5, JavaScript, Móviles, etc. Encontrarás Libros, Demos, Artículos Técnicos, Entrenamiento.
Mostrando las entradas con la etiqueta Mobile. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Mobile. Mostrar todas las entradas
martes, 27 de diciembre de 2016
El Libro del Día: WebGL Insights
Etiquetas:
ANGLE,
Babylon.js,
Blend4Web,
Chrome,
CRC Press,
Emscripten,
Engine Design,
glslify,
HDR,
Insights,
Javascript,
Libros,
Luma,
Mobile,
Mozilla,
Patrick Cozzi,
Python,
Shader,
Turbulenz,
WebGL
sábado, 24 de diciembre de 2016
El Libro del Día: Learning Virtual Reality
El Libro del Día: 2016-12-24
Titulo: Learning Virtual Reality
Autor: Tony Parisi
Editorial: O'Reilly
Nro Paginas: 128
Capítulos:
1. Introduction
2. Virtual Reality Hardware
3. Going Native: Developing for Oculus Rift on the Desktop
4. Going Mobile: Developing for Gear VR
5. WebVR: Browser-Based Virtual Reality in HTML5
6. VR Everywhere: Google Cardboard for Low-Cost Mobile Virtual Reality
Descarga:
Learning_Virtual_Reality
Titulo: Learning Virtual Reality
Autor: Tony Parisi
Editorial: O'Reilly
Nro Paginas: 128
Capítulos:
1. Introduction
2. Virtual Reality Hardware
3. Going Native: Developing for Oculus Rift on the Desktop
4. Going Mobile: Developing for Gear VR
5. WebVR: Browser-Based Virtual Reality in HTML5
6. VR Everywhere: Google Cardboard for Low-Cost Mobile Virtual Reality
Descarga:
Learning_Virtual_Reality
Etiquetas:
Browser-Based,
Cardboard,
Desktop,
Developing,
Gear VR,
Going Native,
Google,
Hardware,
HTML5,
Introduction,
Javascript,
Learning,
Libros,
Mobile,
O'Reilly,
Oculus Rift,
Tony Parisi,
Virtual Reality,
VR,
WebVR
sábado, 22 de octubre de 2016
Entrenamiento - Seminarios de JavaScript
Seminarios de JavaScript
Como muchos saben ya no pienso dictar Cursos ni Talleres Semanales de ASP.NET MVC & JavaScript, pero en el último Taller que acaba mañana Domingo 23 de Octubre hay temas que no pudimos ver que me gustaría tratarlos detalladamente por lo cual los voy a tocar a manera de Seminarios.
Temas de los Seminarios
1. WebRTC
2. WebGL
3. Maps (Google, Yahoo, Bind, etc)
4. Asynchronous & Parallel Programming (Promises, WebWorkers y ServiceWorkers)
5. Web Components (Polymer)
6. Functional Programming: map, filter, reduce (Elm, ReactiveX)
7. Reactive Programming (React, Flux y Redux)
8. Chrome Apps & Progressive Web Apps (Google)
9. Mobile Native Apps (iOS, Andorid, Xamarin)
10. Hybrid Mobile Apps (Titanium, NativeScript, PhoneGap)
11. Security (Obfuscation, XSS, CSRF, etc)
12. Image File Formats (BMP, JPG, PNG, WebP)
13. Native Data Export (XLSX, DOCX, PPTX, PDF)
14. High Performance Web Site (The Definitive Rules)
Observación
Todos los temas son de nivel avanzado, sobre todo los 4 últimos.
Como muchos saben ya no pienso dictar Cursos ni Talleres Semanales de ASP.NET MVC & JavaScript, pero en el último Taller que acaba mañana Domingo 23 de Octubre hay temas que no pudimos ver que me gustaría tratarlos detalladamente por lo cual los voy a tocar a manera de Seminarios.
Temas de los Seminarios
1. WebRTC
2. WebGL
3. Maps (Google, Yahoo, Bind, etc)
4. Asynchronous & Parallel Programming (Promises, WebWorkers y ServiceWorkers)
5. Web Components (Polymer)
6. Functional Programming: map, filter, reduce (Elm, ReactiveX)
7. Reactive Programming (React, Flux y Redux)
8. Chrome Apps & Progressive Web Apps (Google)
9. Mobile Native Apps (iOS, Andorid, Xamarin)
10. Hybrid Mobile Apps (Titanium, NativeScript, PhoneGap)
11. Security (Obfuscation, XSS, CSRF, etc)
12. Image File Formats (BMP, JPG, PNG, WebP)
13. Native Data Export (XLSX, DOCX, PPTX, PDF)
14. High Performance Web Site (The Definitive Rules)
Observación
Todos los temas son de nivel avanzado, sobre todo los 4 últimos.
Información
Frecuencia: 1 vez al mes
Día: Último Domingo de cada mes
Horario: 9:00 am a 2:00 pm.
Inicio: 27 de Noviembre del 2016
Duración: 5 horas
Inversión: 100 Soles cada Seminario
Día: Último Domingo de cada mes
Horario: 9:00 am a 2:00 pm.
Inicio: 27 de Noviembre del 2016
Duración: 5 horas
Inversión: 100 Soles cada Seminario
Inscripciones: Luis.duenash@gmail.com
Mínimo de Participantes: 15
Máximo de Participantes: 30
Lugar: Por confirmar (se enviará una semana antes a los registrados)
Comentario Final
Los interesados en participar en el Taller tienen que registrarse enviándome un correo con el Asunto: "Seminarios de JavaScript" e indicar su Nombre Completo y si es ex-alumno o no.
Además quiero resaltar que es obligatorio participar en todos los seminarios, no se puede faltar a ninguno, el que falta quedará retirado para los siguientes seminarios y se le dará la oportunidad a otros interesados.
Los que nunca han llevado algún curso conmigo, es su oportunidad para que vean la diferencia de nivel y profundidad de los temas tratados.
Cada seminario tendrá su PPT y sus respectivos demos o ejemplos muy interesantes y reales.
Para los que estaban pidiendo participar en algún curso o taller solo queda estos Seminarios una vez al mes con lo cual estaría cubriendo casi todo el "Desarrollo Web Desconectado con JavaScript orientado a Performance" que iniciamos hace unos años y donde cubrimos casi todas las APIs hasta la actualidad.
Etiquetas:
Asynchronous,
Components,
Data Export,
Entrenamiento,
Functional,
High Performance,
Hybrid,
Images,
Javascript,
Maps,
Mobile,
Parallel,
Progressive,
Promises,
reactive,
Security,
WebGL,
WebRTC,
WebWorkers
viernes, 1 de julio de 2016
Articulo - Full Stack Developer
Full Stack Developer
1. Introducción
En los últimos años, en los requerimientos de desarrolladores para las grandes empresas, sobre todo en Estados Unidos, piden perfiles como "Back-End Developer", "Front-End Developer" y "Full Stack Developer". La mayoría conocemos los 2 primeros pero este último no mucho, sobre todo en detalle.
El "Full Stack Developer", traducido al castellano sería algo como: "Programador de Soluciones Completas", en este artículo conoceremos un poco más de que se trata.
El termino "Full Stack Developer" empezó a ser usado en el Departamento de Ingenieria de Facebook en el 2010 para referirse a un profesional que conoce todo el proceso de desarrollo de software moderno, cuyo perfil va mas allá que un Ingeniero Senior o un Arquitecto de Software, los cuales son especialistas, en cambio, el Full Stack es mas completo.
2. Artículos
2.1. What is a Full Stack developer (Laurence Gellert)
Uno de los primeros artículos en la web sobre el tema fué: "What is a Full Stack developer?" escrito por Laurence Gellert en Agosto del 2012 en su Blog (http://www.laurencegellert.com/2012/08/what-is-a-full-stack-developer/) donde especifica los conocimientos que debe tener un Full Stack Developer:
1. Servidores, Redes y Hosting
2. Modelado de Datos
3. Lógica de Negocios
4. Capa de APIs, Capa de Acciones, MVC
5. Interface de Usuario (UI)
6. Experiencia de Usuario (UX)
7. Entiende lo que el cliente y el negocio necesitan (requerimientos)
8. Otros: Pruebas Unitarias, Documentación, Distribución, Seguridad
2.2. Being a Full Stack Developer (George Fekete)
Otro artículo llamado: "Being a Full Stack Developer" fue escrito por George Fekete en Setiembre del 2014 en el sitio web de SitePoint (https://www.sitepoint.com/full-stack-developer/) donde podemos resumir lo siguiente:
1. Full Stack en el 2000
- LAMP (Linux – Apache – MySQL – Perl/PHP)
2. Administracion de Sistemas
- Linux: Shell Scripting
- Computación en la Nube: Amazon, Rackspace, etc.
- Procesamiento de Fondo: Gearman, Redis
- Búsqueda: Elasticsearch, Sphinx, Solr
- Caching: Varnish, Memcached, APC / OpCache
- Monitoreo: Nagios
3. Herramientas de Desarrollo Web
- Control de Versiones: Git, Mercurial, SVN
- Virtualización: VirtualBox, Vagrant, Docker
4. Back-end
- Servidores Web: Apache, Nginx
- Lenguajes de Programación: PHP, NodeJS, Ruby
- Bases de Datos: MySQL, MongoDB, Cassandra, Redis, SQL/JSON
5. Front-end
- HTML & HTML5: Semantica Web
- CSS & CSS3: LESS, SASS, Media Queries
- JavaScript: jQuery, AngularJS, Knockout, etc.
- Compatibilidad entre Navegadores
- Diseño Web Adaptativo
- AJAX, JSON, XML, WebSocket
6. Diseño
- UI, UX
7. Móviles
- Apps Nativas: iOS y Android
- Hibridas: PhoneGap, Appcelerator
2.3. Front-end Vs Back-end Vs Full-stack Web Developers (Michael Wales)
Aunque hay más artículos sobre el tema, voy a mencionar un último: "Front-end Vs Back-end Vs Full-stack Web Developers" escrito por Michael Wales en Diciembre del 2014 en el Blog de Udacity (http://blog.udacity.com/2014/12/front-end-vs-back-end-vs-full-stack-web-developers.html) donde podemos resumir lo siguiente:
1. Front-End Developer
- Lenguajes: HTML, CSS, JavaScript
- Frameworks: Bootstrap, Foundation, Backbone, AngularJS, EmberJS
- Librerias: jQuery, LESS
- Técnicas: AJAX
2. Back-End Developer
- Lenguajes: PHP, Ruby, Python, Java, .NET
- Bases de Datos: MySQL, Oracle, SQL Server
- Frameworks PHP: Zend, Symfony, CakePHP
- Control de Versiones: SVN, CVS, GIT
- Sistemas Operativos: Linux, Windows
3. Full Stack Developer
- Conocimiento de Back-End y Front-End
- Lenguajes: HTML5, CSS3, JavaScript
- Machine Learning, Amazon
- MongoDB, Scala
- Sistemas Operativos: Android, iOS, Windows, Linux
3. Conocimientos de un Full Stack Developer
Un Full Stack Developer debe conocer todos los componentes de una solución de software, por ejemplo si se trata de una aplicación web, los elementos a conocer serían:
3.1. Servidor (Back-End)
- Sistemas Operativos
-) Linux, Windows, Unix, etc.
- Servidores Web
-) Apache, NginX, Microsoft IIS, Oracle WebLogic, IBM WebSphere, etc.
- Bases de Datos
-) Relacionales (RDBMS): MySQL, PostgreSQL, SQL Server, Oracle, etc.
-) NoSQL: Cassandra, Redis, MongoDB, CouchDB, RavenDB, ObjectDB, GemStone, etc.
-) RealTime (RTDBS): RethinkDB, FireBaseDB, MemSQL, etc.
- Lenguajes de Programación
-) PHP, Perl, Python, Ruby, Java, JavaScript (NodeJS), C#, etc.
- Frameworks de Programación
-) PHP: Zend, Symfony, CakePHP, Lavarel, CodeIgniter, etc.
-) Perl: Catalyst, Dancer, Mason, Maypole, Mojolicious, etc.
-) Python: Django, Flask, Tornado, Pylons, Pyramic, Zope 2, etc.
-) Ruby: Camping, Padrino, Ruby on Rails, Sinatra, PureMVC, etc.
-) Java: Struts, Grails, ADF, Spring, Play, Dropwizard, Spark, etc.
-) .NET: Enterprise Libraries, ADO.NET Entity Framework, LINQ, etc.
-) ASP.NET: Dynamic Data, BFC, CSLA, MonoRail, OpenRasta, etc.
3.2. Cliente (Front-End)
- Lenguajes de Programación
-) HTML5 (HTLM), CSS3 (CSS), JavaScript
- APIs de JavaScript
-) Gráficos: Canvas, SVG, WebGL
-) Almacenamiento: File API, File System API, IndexedDB, Web Storage
-) Conectividad: Web Sockets, Messaging, WebRTC
-) Acceso: Drag And Drop (D&D), FullScreen
-) Estilos: CSS Object Model, Selectors
-) Multimedia: Animation Timing, Media, Pointer Lock, Web Audio
-) Performance: Browser, Shadow DOM, Typed Arrays, Web Workers
-) Seguridad: WebCryptography
-) Comunicación Asíncrona con el Servidor: Unidireccional (XHR) y Bidireccional (Web Sockets)
- Preprocesadores CSS
-) Less, Sass, Stylus, Myth, etc.
- Frameworks Clientes
-) HTML5: HTML5 Boilerplate, HTML5 KickStart, Kendo UI, Montage, 52Framework, etc.
-) CSS3: Bootstrap, Material Design, Foundation, Skeleton, Schema, Less, Compass, etc.
-) JavaScript: Angular, Knockout, Backbone, Ember, Express, Meteor, Sails, React, etc.
- Librerías JavaScript (simplifica las APIs)
-) Iniciales: Dojo, jQuery, MooTols, Prototype, YUI, UnderScore, etc.
-) Visualización de Datos: D3.js, Chart.js, Highcharts.js, Flot.js, jqPlot.js, etc.
-) SVG: Raphael.js, Snap.svg, Svg.js, Fabric.js, Bonsai.js, Polymaps.js, etc.
-) WebGL (3D): Three.js, BabylonJS, SceneJS, OSG.js, PlayCanvas, etc.
-) Seguridad: Google CryptoJS, Stanford Javascript Crypto Library (SJCL.js), jscrypto, etc.
-) Comunicación Asíncrona con el Servidor: Unidireccional (AJAX) y Bidireccional (Sockets.io)
3.3. Comunicación Cliente y Servidor
- Protocolos
-) Internet: TCP/IP, HTTP, HTTP2, FTP
-) Servicios: RPC, SOAP, REST (HTTP)
-) Señales: STUN, TURN, ICE, NAT
-) Correo electrónico: IMAP, POP3, SMTP
-) Mensajería: AMQP, MQTT, STOMP
- Formatos de Datos
-) Binario: ArrayBuffer, BLOB, etc.
-) Texto: HTML, XML, JSON, BSON, CSV, etc.
3.4. Computación en la Nube (Cloud Computing)
- Tipos de Servicios
-) Software como Servicio (SaaS)
-) Plataforma como Servicio (PaaS)
-) Infraestructura como Servicio (IaaS)
- Tipos de Nubes
-) Nubes Públicas
-) Nubes Privadas
-) Nubes Hibridas
- Plataformas Populares
-) Amazon Web Services (AWS)
-) Microsoft Azure
-) Google Cloud Platform
- Aplicaciones Populares
-) Box (Box Inc), Dropbox (Dropbox)
-) Drive (Google), iCloud (Apple)
-) OneDrive (Microsoft), SalesForce.com (SalesForce Inc)
3.5. Rendimiento de un Sitio Web (Performance Web Site)
- Características mas Importantes de un Sitio Web
-) Rendimiento (Ancho de banda)
-) Tiempo de Respuesta (latencia)
-) Escalabilidad
-) Disponibilidad
-) Seguridad
-) Métricas para medir la Performance de una página
-) Tiempo de carga (Load Time)
-) Tiempo del primer byte recibido (First Byte)
-) Índice de velocidad (Speed Index)
-) Elementos del Modelo de Objetos del Documento (DOM Elements)
- Principales Reglas de Performance
-) Hacer la menor cantidad de solicitudes (pocos archivos)
-) Enviar la menor cantidad de datos posible (reducir tamaño)
-) Hacer llamadas asíncronas (XHR, AJAX)
-) Trabajar en forma desconectada (JavaScript, HTML)
- Herramientas para Pruebas de Performance Web (Performance Tools)
-) YSlow: URL: http://yslow.org/
-) PageSpeed Insights: https://developers.google.com/speed/pagespeed/insights/
-) WebPageTest: http://www.webpagetest.org/
- Herramientas para reducir el tamaño de las imagenes (Images Tools)
-) Sprites: CSS Sprite Generator, Sprite Creator, Instant Sprite, SpritePad, etc.
-) JPG: jpeg Optimizer, jpeg Reducer, Compress JPEG, etc.
-) PNG: pngOptimizer, Tiny png, PunyPNG, etc.
-) JPG, PNG, GIF: Trimage, image Optim, image Optimizer, Kraken.io, CompressNow, etc.
3.6. Seguridad de Sitios Web
- Principales Riesgos de Seguridad según OWASP Top 10
-) Riesgo 1: Inyección
-) Riesgo 2: Pérdida de Autenticación y Gestión de Sesiones
-) Riesgo 3: Secuencia de Comandos en Sitios Cruzados (XSS)
-) Riesgo 4: Referencia directa insegura a objetos
-) Riesgo 5: Configuración de seguridad incorrecta
-) Riesgo 6: Exposición de datos sensibles
-) Riesgo 7: Inexistente control de acceso a nivel de funcionalidades
-) Riesgo 8: Falsificación de Peticiones en Sitios Cruzados (CSRF)
-) Riesgo 9: Uso de componentes con vulnerabilidades conocidas
-) Riesgo 10: Redirecciones y reenvíos no válidos
- Herramientas para Probar Seguridad (Security Testing Tools)
-) OWASP: Zed Attack Proxy (ZAP), WebScarab (Framework), Mantra (Framework), etc.
-) Otros: SPIKE, Burp Proxy, FireBug, Odysseus Proxy, WATOBO, etc.
-) DOM XSS: DOMinator Pro
-) AJAX: OWASP Sprajax Project
-) SQL Injection: OWASP SQLiX, SqlNinja, SQLInjector, etc.
-) SSL: O-Saft, sslyze, TestSSLServer, SSLScan, SSLLabs, etc.
-) Fuerza Bruta Claves: THC Hydra, Brutus, Medusa, Ncat, etc.
-) Sobrecarga de Memoria: OllyDbg, Spike, BFB, Metasploit, etc.
3.7. Aplicaciones Móviles (Mobile)
- Sistemas Operativos
-) Nativos: Android, iOS, Windows Mobile
-) Web: WebOS, FireFoxOS, Tizen, etc.
- Lenguajes de Programación
-) Nativos: Java, Objetive-C (Swift), C#/XAML
-) Web: HTML5, CSS3, JavaScript
- Frameworks Hibridos
-) Apache Cordova (Ex Phonegap), React Native, Ionic, Meteor, Xamarin, Titanium, Famo.us,
-) Sencha Touch, Kendo UI, Onsen UI, JQuery Mobile, Mobile Angular UI, Trigger.io, etc.
3.8. Otros Conocimientos
- Diseño
-) Degradación agraciada (Degrade Gracefully)
-) Mejora Progresiva (Progressive Enhancement)
-) Diseño Web Adaptativo (Responsive Web Design)
-) Interface de Usuario (UI)
-) Experiencia de Usuario (UX)
- Herramientas de Control y Distribución
-) Control de Versiones: GIT, Mercurial, SVN
-) Virtualization: VirtualBox, Vagrant, Docker
- Motores de Búsqueda (Search Engines)
-) Search Engine Optimization (SEO)
-) Search Engine Marketing (SEM)
- Tecnologías
-) Realidad Virtual (VR, WebVR)
-) Internet de las Cosas (IoT)
-) Machine Learning (ML)
-) Cognitive Services (CS)
-) Business Inteligence (BI)
-) Big Data, Analytics, etc.
1. Introducción
En los últimos años, en los requerimientos de desarrolladores para las grandes empresas, sobre todo en Estados Unidos, piden perfiles como "Back-End Developer", "Front-End Developer" y "Full Stack Developer". La mayoría conocemos los 2 primeros pero este último no mucho, sobre todo en detalle.
El "Full Stack Developer", traducido al castellano sería algo como: "Programador de Soluciones Completas", en este artículo conoceremos un poco más de que se trata.
El termino "Full Stack Developer" empezó a ser usado en el Departamento de Ingenieria de Facebook en el 2010 para referirse a un profesional que conoce todo el proceso de desarrollo de software moderno, cuyo perfil va mas allá que un Ingeniero Senior o un Arquitecto de Software, los cuales son especialistas, en cambio, el Full Stack es mas completo.
2. Artículos
2.1. What is a Full Stack developer (Laurence Gellert)
Uno de los primeros artículos en la web sobre el tema fué: "What is a Full Stack developer?" escrito por Laurence Gellert en Agosto del 2012 en su Blog (http://www.laurencegellert.com/2012/08/what-is-a-full-stack-developer/) donde especifica los conocimientos que debe tener un Full Stack Developer:
1. Servidores, Redes y Hosting
2. Modelado de Datos
3. Lógica de Negocios
4. Capa de APIs, Capa de Acciones, MVC
5. Interface de Usuario (UI)
6. Experiencia de Usuario (UX)
7. Entiende lo que el cliente y el negocio necesitan (requerimientos)
8. Otros: Pruebas Unitarias, Documentación, Distribución, Seguridad
2.2. Being a Full Stack Developer (George Fekete)
Otro artículo llamado: "Being a Full Stack Developer" fue escrito por George Fekete en Setiembre del 2014 en el sitio web de SitePoint (https://www.sitepoint.com/full-stack-developer/) donde podemos resumir lo siguiente:
1. Full Stack en el 2000
- LAMP (Linux – Apache – MySQL – Perl/PHP)
2. Administracion de Sistemas
- Linux: Shell Scripting
- Computación en la Nube: Amazon, Rackspace, etc.
- Procesamiento de Fondo: Gearman, Redis
- Búsqueda: Elasticsearch, Sphinx, Solr
- Caching: Varnish, Memcached, APC / OpCache
- Monitoreo: Nagios
3. Herramientas de Desarrollo Web
- Control de Versiones: Git, Mercurial, SVN
- Virtualización: VirtualBox, Vagrant, Docker
4. Back-end
- Servidores Web: Apache, Nginx
- Lenguajes de Programación: PHP, NodeJS, Ruby
- Bases de Datos: MySQL, MongoDB, Cassandra, Redis, SQL/JSON
5. Front-end
- HTML & HTML5: Semantica Web
- CSS & CSS3: LESS, SASS, Media Queries
- JavaScript: jQuery, AngularJS, Knockout, etc.
- Compatibilidad entre Navegadores
- Diseño Web Adaptativo
- AJAX, JSON, XML, WebSocket
6. Diseño
- UI, UX
7. Móviles
- Apps Nativas: iOS y Android
- Hibridas: PhoneGap, Appcelerator
2.3. Front-end Vs Back-end Vs Full-stack Web Developers (Michael Wales)
Aunque hay más artículos sobre el tema, voy a mencionar un último: "Front-end Vs Back-end Vs Full-stack Web Developers" escrito por Michael Wales en Diciembre del 2014 en el Blog de Udacity (http://blog.udacity.com/2014/12/front-end-vs-back-end-vs-full-stack-web-developers.html) donde podemos resumir lo siguiente:
1. Front-End Developer
- Lenguajes: HTML, CSS, JavaScript
- Frameworks: Bootstrap, Foundation, Backbone, AngularJS, EmberJS
- Librerias: jQuery, LESS
- Técnicas: AJAX
2. Back-End Developer
- Lenguajes: PHP, Ruby, Python, Java, .NET
- Bases de Datos: MySQL, Oracle, SQL Server
- Frameworks PHP: Zend, Symfony, CakePHP
- Control de Versiones: SVN, CVS, GIT
- Sistemas Operativos: Linux, Windows
3. Full Stack Developer
- Conocimiento de Back-End y Front-End
- Lenguajes: HTML5, CSS3, JavaScript
- Machine Learning, Amazon
- MongoDB, Scala
- Sistemas Operativos: Android, iOS, Windows, Linux
Un Full Stack Developer debe conocer todos los componentes de una solución de software, por ejemplo si se trata de una aplicación web, los elementos a conocer serían:
3.1. Servidor (Back-End)
- Sistemas Operativos
-) Linux, Windows, Unix, etc.
- Servidores Web
-) Apache, NginX, Microsoft IIS, Oracle WebLogic, IBM WebSphere, etc.
- Bases de Datos
-) Relacionales (RDBMS): MySQL, PostgreSQL, SQL Server, Oracle, etc.
-) NoSQL: Cassandra, Redis, MongoDB, CouchDB, RavenDB, ObjectDB, GemStone, etc.
-) RealTime (RTDBS): RethinkDB, FireBaseDB, MemSQL, etc.
- Lenguajes de Programación
-) PHP, Perl, Python, Ruby, Java, JavaScript (NodeJS), C#, etc.
- Frameworks de Programación
-) PHP: Zend, Symfony, CakePHP, Lavarel, CodeIgniter, etc.
-) Perl: Catalyst, Dancer, Mason, Maypole, Mojolicious, etc.
-) Python: Django, Flask, Tornado, Pylons, Pyramic, Zope 2, etc.
-) Ruby: Camping, Padrino, Ruby on Rails, Sinatra, PureMVC, etc.
-) Java: Struts, Grails, ADF, Spring, Play, Dropwizard, Spark, etc.
-) .NET: Enterprise Libraries, ADO.NET Entity Framework, LINQ, etc.
-) ASP.NET: Dynamic Data, BFC, CSLA, MonoRail, OpenRasta, etc.
3.2. Cliente (Front-End)
- Lenguajes de Programación
-) HTML5 (HTLM), CSS3 (CSS), JavaScript
- APIs de JavaScript
-) Gráficos: Canvas, SVG, WebGL
-) Almacenamiento: File API, File System API, IndexedDB, Web Storage
-) Conectividad: Web Sockets, Messaging, WebRTC
-) Acceso: Drag And Drop (D&D), FullScreen
-) Estilos: CSS Object Model, Selectors
-) Multimedia: Animation Timing, Media, Pointer Lock, Web Audio
-) Performance: Browser, Shadow DOM, Typed Arrays, Web Workers
-) Seguridad: WebCryptography
-) Comunicación Asíncrona con el Servidor: Unidireccional (XHR) y Bidireccional (Web Sockets)
- Preprocesadores CSS
-) Less, Sass, Stylus, Myth, etc.
- Frameworks Clientes
-) HTML5: HTML5 Boilerplate, HTML5 KickStart, Kendo UI, Montage, 52Framework, etc.
-) CSS3: Bootstrap, Material Design, Foundation, Skeleton, Schema, Less, Compass, etc.
-) JavaScript: Angular, Knockout, Backbone, Ember, Express, Meteor, Sails, React, etc.
- Librerías JavaScript (simplifica las APIs)
-) Iniciales: Dojo, jQuery, MooTols, Prototype, YUI, UnderScore, etc.
-) Visualización de Datos: D3.js, Chart.js, Highcharts.js, Flot.js, jqPlot.js, etc.
-) SVG: Raphael.js, Snap.svg, Svg.js, Fabric.js, Bonsai.js, Polymaps.js, etc.
-) WebGL (3D): Three.js, BabylonJS, SceneJS, OSG.js, PlayCanvas, etc.
-) Seguridad: Google CryptoJS, Stanford Javascript Crypto Library (SJCL.js), jscrypto, etc.
-) Comunicación Asíncrona con el Servidor: Unidireccional (AJAX) y Bidireccional (Sockets.io)
3.3. Comunicación Cliente y Servidor
- Protocolos
-) Internet: TCP/IP, HTTP, HTTP2, FTP
-) Servicios: RPC, SOAP, REST (HTTP)
-) Señales: STUN, TURN, ICE, NAT
-) Correo electrónico: IMAP, POP3, SMTP
-) Mensajería: AMQP, MQTT, STOMP
- Formatos de Datos
-) Binario: ArrayBuffer, BLOB, etc.
-) Texto: HTML, XML, JSON, BSON, CSV, etc.
3.4. Computación en la Nube (Cloud Computing)
- Tipos de Servicios
-) Software como Servicio (SaaS)
-) Plataforma como Servicio (PaaS)
-) Infraestructura como Servicio (IaaS)
- Tipos de Nubes
-) Nubes Públicas
-) Nubes Privadas
-) Nubes Hibridas
- Plataformas Populares
-) Amazon Web Services (AWS)
-) Microsoft Azure
-) Google Cloud Platform
- Aplicaciones Populares
-) Box (Box Inc), Dropbox (Dropbox)
-) Drive (Google), iCloud (Apple)
-) OneDrive (Microsoft), SalesForce.com (SalesForce Inc)
3.5. Rendimiento de un Sitio Web (Performance Web Site)
- Características mas Importantes de un Sitio Web
-) Rendimiento (Ancho de banda)
-) Tiempo de Respuesta (latencia)
-) Escalabilidad
-) Disponibilidad
-) Seguridad
-) Métricas para medir la Performance de una página
-) Tiempo de carga (Load Time)
-) Tiempo del primer byte recibido (First Byte)
-) Índice de velocidad (Speed Index)
-) Elementos del Modelo de Objetos del Documento (DOM Elements)
- Principales Reglas de Performance
-) Hacer la menor cantidad de solicitudes (pocos archivos)
-) Enviar la menor cantidad de datos posible (reducir tamaño)
-) Hacer llamadas asíncronas (XHR, AJAX)
-) Trabajar en forma desconectada (JavaScript, HTML)
- Herramientas para Pruebas de Performance Web (Performance Tools)
-) YSlow: URL: http://yslow.org/
-) PageSpeed Insights: https://developers.google.com/speed/pagespeed/insights/
-) WebPageTest: http://www.webpagetest.org/
- Herramientas para reducir el tamaño de las imagenes (Images Tools)
-) Sprites: CSS Sprite Generator, Sprite Creator, Instant Sprite, SpritePad, etc.
-) JPG: jpeg Optimizer, jpeg Reducer, Compress JPEG, etc.
-) PNG: pngOptimizer, Tiny png, PunyPNG, etc.
-) JPG, PNG, GIF: Trimage, image Optim, image Optimizer, Kraken.io, CompressNow, etc.
3.6. Seguridad de Sitios Web
- Principales Riesgos de Seguridad según OWASP Top 10
-) Riesgo 1: Inyección
-) Riesgo 2: Pérdida de Autenticación y Gestión de Sesiones
-) Riesgo 3: Secuencia de Comandos en Sitios Cruzados (XSS)
-) Riesgo 4: Referencia directa insegura a objetos
-) Riesgo 5: Configuración de seguridad incorrecta
-) Riesgo 6: Exposición de datos sensibles
-) Riesgo 7: Inexistente control de acceso a nivel de funcionalidades
-) Riesgo 8: Falsificación de Peticiones en Sitios Cruzados (CSRF)
-) Riesgo 9: Uso de componentes con vulnerabilidades conocidas
-) Riesgo 10: Redirecciones y reenvíos no válidos
- Herramientas para Probar Seguridad (Security Testing Tools)
-) OWASP: Zed Attack Proxy (ZAP), WebScarab (Framework), Mantra (Framework), etc.
-) Otros: SPIKE, Burp Proxy, FireBug, Odysseus Proxy, WATOBO, etc.
-) DOM XSS: DOMinator Pro
-) AJAX: OWASP Sprajax Project
-) SQL Injection: OWASP SQLiX, SqlNinja, SQLInjector, etc.
-) SSL: O-Saft, sslyze, TestSSLServer, SSLScan, SSLLabs, etc.
-) Fuerza Bruta Claves: THC Hydra, Brutus, Medusa, Ncat, etc.
-) Sobrecarga de Memoria: OllyDbg, Spike, BFB, Metasploit, etc.
3.7. Aplicaciones Móviles (Mobile)
- Sistemas Operativos
-) Nativos: Android, iOS, Windows Mobile
-) Web: WebOS, FireFoxOS, Tizen, etc.
- Lenguajes de Programación
-) Nativos: Java, Objetive-C (Swift), C#/XAML
-) Web: HTML5, CSS3, JavaScript
- Frameworks Hibridos
-) Apache Cordova (Ex Phonegap), React Native, Ionic, Meteor, Xamarin, Titanium, Famo.us,
-) Sencha Touch, Kendo UI, Onsen UI, JQuery Mobile, Mobile Angular UI, Trigger.io, etc.
3.8. Otros Conocimientos
- Diseño
-) Degradación agraciada (Degrade Gracefully)
-) Mejora Progresiva (Progressive Enhancement)
-) Diseño Web Adaptativo (Responsive Web Design)
-) Interface de Usuario (UI)
-) Experiencia de Usuario (UX)
- Herramientas de Control y Distribución
-) Control de Versiones: GIT, Mercurial, SVN
-) Virtualization: VirtualBox, Vagrant, Docker
- Motores de Búsqueda (Search Engines)
-) Search Engine Optimization (SEO)
-) Search Engine Marketing (SEM)
- Tecnologías
-) Realidad Virtual (VR, WebVR)
-) Internet de las Cosas (IoT)
-) Machine Learning (ML)
-) Cognitive Services (CS)
-) Business Inteligence (BI)
-) Big Data, Analytics, etc.
4. Programas para un Conjunto de Soluciones (Software Stack)
Existen "paquetes" de programas que usan comunmente los Full Stack Developers a los cuales se les conoce como "Software Stack", entre los mas conocidos tenemos:
4.1. LAMP
- Sistema Operativo: Linux
- Servidor Web: Apache
- Base de Datos: MySQL o MariaDB
- Lenguajes de Programación: PHP, Perl y/o Python
4.2. LYME y LYCE
- Sistema Operativo: Linux
- Servidor Web: Yaws (Erlang)
- Base de Datos: Mnesia (LYME) o CouchDB (LYCE)
- Lenguaje de Programación: Erlang
4.3. GLASS
- Servidor de Aplicaciones y Base de Datos: GemStone
- Sistema Operativo: Linux
- Servidor Web: Apache
- Framework Web: Seaside
- Lenguaje de Programación: Smalltalk
4.4. LEAP
- Sistema Operativo: Linux
- Servicio Almacenamiento en la Nube: Eucalyptus (alternativa a EC2 o Amazon Elastic Compute Cloud)
- Framework en la Nube: AppScale (alternativa a Google App Engine)
- Lenguaje de Programación: Python
4.5. LNOJ
- Sistema Operativo: Linux
- Servidor Web: NginX
- Base de Datos: OracleDB
- Lenguaje de Programación: Java
4.6. WISN
- Sistema Operativo: Windows
- Servidor Web: IIS
- Base de Datos: SQL Server
- Lenguajes de Programación: .NET (C#, VB.NET, F#, etc)
4.7. RAPB
- Lenguaje de Programación: Ruby on Rails
- AngularJS
- Base de Datos: PostgreSQL
- Bootstrap
4.8. MEAN (Full Stack JavaScript)
- Base de Datos: MongoDB
- Framework Web para Node.js: ExpressJS
- Framework Aplicaciones Web: AngularJS
- Lenguaje de Programación: NodeJS
Existen muchas mas combinaciones de programas que un Full Stack Developer puede usar para resolver un problema, pero hemos descrito las mas usadas.
5. Comentario Final
Aunque el artículo es un poco extenso era necesario detallar todo lo referente a este tipo muy importante de desarrollador que como vemos debe ser una persona con muchos años de experiencia, ya que conocer bien el Back-End aunque sea de un tipo por ejemplo LAMP (Linux, Apache, MySQL, PHP) o WISN (Windows, IIS, SQL Server, .NET) requiere de mucho tiempo. También es lo mismo si nos inclinamos por un Full Stack JavaScript como MEAN (MongoDB, ExpressJS, AngularJS, NodeJS).
Un Full Stack Developer podría reemplazar a muchos desarrolladores especialistas de varios campos: Front-End, Back-End, Mobiles, etc. Aunque lo recomendable que dicho reemplazo sea para proyectos pequeños, pero para proyectos grandes mas bien este debe trabajar de la mano con un grupo de especialistas.
Finalmente, creo que siempre se necesitarán de especialistas, pero ahora mas que nunca necesitamos "expertos en todo" es decir "Full Stack Developers" que ayuden a solucionar problemas de una forma integral incluyendo no solo temas de Programación (Sistemas Operativos, Lenguajes, Base de Datos, Frameworks), sino Diseño (Design), Rendimiento (Performance), Seguridad (Security), etc.
Espero que les guste el artículo, que después de tiempo vuelvo a escribir y que mejor, regresar con algo que resume muchas cosas: perfiles, programas, tecnologías, etc.
Etiquetas:
.NET,
Apache,
Back-End,
Cloud Computing,
CSS3,
Front-End,
Full Stack Developer,
HTML5,
Javascript,
LAMP,
Laurence Gellert,
Linux,
MEAN,
Mobile,
OWASP,
Performance,
PHP,
Security,
Software Stack,
UI/UX
jueves, 7 de abril de 2016
El Libro del Día: Mastering PhoneGap Mobile Application Development
El Libro del Día: 2016-04-07
Titulo: Mastering PhoneGap Mobile Application Development
Autor: Kerri Shotts
Editorial: Packt
Nro Paginas: 392
Capítulos:
Chapter 1: Task Automation
Chapter 2: ECMAScript 2015 and Browserify
Chapter 3: Sassy CSS
Chapter 4: More Responsive Design
Chapter 5: Hybrid Application Accessibility
Chapter 6: Testing and UI Automation
Chapter 7: IndexedDB
Chapter 8: Web SQL Database
Chapter 9: Transferring Files
Chapter 10: Performance
Chapter 11: Graphical Assets
Chapter 12: Deployment
Descarga:
Mastering_PhoneGap_Mobile_Application_Development
Titulo: Mastering PhoneGap Mobile Application Development
Autor: Kerri Shotts
Editorial: Packt
Nro Paginas: 392
Capítulos:
Chapter 1: Task Automation
Chapter 2: ECMAScript 2015 and Browserify
Chapter 3: Sassy CSS
Chapter 4: More Responsive Design
Chapter 5: Hybrid Application Accessibility
Chapter 6: Testing and UI Automation
Chapter 7: IndexedDB
Chapter 8: Web SQL Database
Chapter 9: Transferring Files
Chapter 10: Performance
Chapter 11: Graphical Assets
Chapter 12: Deployment
Descarga:
Mastering_PhoneGap_Mobile_Application_Development
Etiquetas:
Accessibility,
Assets,
Automation,
Browserify,
CSS,
Deployment,
ECMAScript,
Files,
Graphical,
IndexedDB,
Kerri Shotts,
Libros,
Mastering,
Mobile,
Packt,
Performance,
PhoneGap,
Responsive,
Testing,
Web SQL
martes, 2 de febrero de 2016
El Libro del Día: Beginning Hybrid Mobile Application Development
El Libro del Día: 2016-02-02
Titulo: Beginning Hybrid Mobile Application Development
Autor: Mahesh Panhale
Editorial: Apress
Nro Paginas: 229
Capítulos:
Chapter 1: Introduction to Mobile Application Development Ecosystems
Chapter 2: Native vs Hybrid Mobile Applications
Chapter 3: Building Blocks of HMAD
Chapter 4: Creating Your First Hybrid Application
Chapter 5: HMAD: Internals
Chapter 6: Data Access in HMAD
Chapter 7: UI for HMAD
Chapter 8: Using Device Features in HMAD
Chapter 9: How to Advertise with HMAD
Chapter 10: Working with Third-Party Services in HMAD
Chapter 11: Setup and Deployment
Chapter 12: XAMARIN vs HMAD
Chapter 13: Case Study: A Practical Approach
Descarga:
Beginning_Hybrid_Mobile_Application_Development
Titulo: Beginning Hybrid Mobile Application Development
Autor: Mahesh Panhale
Editorial: Apress
Nro Paginas: 229
Capítulos:
Chapter 1: Introduction to Mobile Application Development Ecosystems
Chapter 2: Native vs Hybrid Mobile Applications
Chapter 3: Building Blocks of HMAD
Chapter 4: Creating Your First Hybrid Application
Chapter 5: HMAD: Internals
Chapter 6: Data Access in HMAD
Chapter 7: UI for HMAD
Chapter 8: Using Device Features in HMAD
Chapter 9: How to Advertise with HMAD
Chapter 10: Working with Third-Party Services in HMAD
Chapter 11: Setup and Deployment
Chapter 12: XAMARIN vs HMAD
Chapter 13: Case Study: A Practical Approach
Descarga:
Beginning_Hybrid_Mobile_Application_Development
Etiquetas:
Application,
Apress,
Beginning,
Data Access,
Deployment,
Development,
Device,
Ecosystems,
HMAD,
Hybrid,
Internals,
Libros,
Mahesh Panhale,
Mobile,
Native,
Services,
Setup,
Third-Party,
UI,
Xamarin
lunes, 1 de febrero de 2016
El Libro del Día: Mobile Web Performance Optimization
El Libro del Día: 2016-02-01
Titulo: Mobile Web Performance Optimization
Autor: S. S. Niranga
Editorial: Packt
Nro Paginas: 151
Capítulos:
Chapter 1: Pillars of Mobile Web Performance Optimization
Chapter 2: Mobile Web Optimization Essentials
Chapter 3: How to Optimize Your Mobile Website
Chapter 4: Caching and Optimizing
Chapter 5: Monitoring and Debugging Our Website
Chapter 6: Managing Third-Party Components
Chapter 7: Tips and Tricks
Descarga:
Mobile_Web_Performance_Optimization
Titulo: Mobile Web Performance Optimization
Autor: S. S. Niranga
Editorial: Packt
Nro Paginas: 151
Capítulos:
Chapter 1: Pillars of Mobile Web Performance Optimization
Chapter 2: Mobile Web Optimization Essentials
Chapter 3: How to Optimize Your Mobile Website
Chapter 4: Caching and Optimizing
Chapter 5: Monitoring and Debugging Our Website
Chapter 6: Managing Third-Party Components
Chapter 7: Tips and Tricks
Descarga:
Mobile_Web_Performance_Optimization
Etiquetas:
Caching,
Components,
Debugging,
Essentials,
Javascript,
Libros,
Mobile,
Monitoring,
Optimization,
Optimize,
Optimizing,
Packt,
Performance,
Pillars,
S. S. Niranga,
Third-Party,
Tips,
Tricks,
Web,
Website
lunes, 25 de enero de 2016
El Libro del Día: Learning Node.js for Mobile Application Development
El Libro del Día: 2016-01-25
Titulo: Learning Node.js for Mobile Application Development
Autor: Stefan Buttigieg, Milorad Jevdjenic
Editorial: Packt
Nro Paginas: 248
Capítulos:
Chapter 1: Setting Up Your Workspace
Chapter 2: Configuring Persistence with MongoDB
Chapter 3: Creating an API
Chapter 4: Securing Your Backend
Chapter 5: Real-Time Data and WebSockets
Chapter 6: Introducing Ionic
Chapter 7: Building User Interfaces
Chapter 8: Making Our App Interactive
Chapter 9: Accessing Native Phone Features
Chapter 10: Working with APIs
Chapter 11: Working with Security
Chapter 12: Working with Real-Time Data
Chapter 13: Building an Advanced Chat App
Chapter 14: Creating an E-Commerce Application Using the Ionic Framework
Descarga:
Learning_Node.js_for_Mobile_Application_Development
Titulo: Learning Node.js for Mobile Application Development
Autor: Stefan Buttigieg, Milorad Jevdjenic
Editorial: Packt
Nro Paginas: 248
Capítulos:
Chapter 1: Setting Up Your Workspace
Chapter 2: Configuring Persistence with MongoDB
Chapter 3: Creating an API
Chapter 4: Securing Your Backend
Chapter 5: Real-Time Data and WebSockets
Chapter 6: Introducing Ionic
Chapter 7: Building User Interfaces
Chapter 8: Making Our App Interactive
Chapter 9: Accessing Native Phone Features
Chapter 10: Working with APIs
Chapter 11: Working with Security
Chapter 12: Working with Real-Time Data
Chapter 13: Building an Advanced Chat App
Chapter 14: Creating an E-Commerce Application Using the Ionic Framework
Descarga:
Learning_Node.js_for_Mobile_Application_Development
Etiquetas:
APIs,
Application,
Chat,
Development,
Interactive,
Ionic,
Learning,
Libros,
Milorad Jevdjenic,
Mobile,
MongoDB,
Native Phone,
Node.js,
Packt,
Real-time,
Securing,
Security,
Stefan Buttigieg,
WebSockets,
Workspace
viernes, 22 de enero de 2016
El Libro del Día: Xamarin Mobile Development for Android Cookbook
El Libro del Día: 2016-01-22
Titulo: Xamarin Mobile Development for Android Cookbook
Autor: Matthew Leibowitz
Editorial: Packt
Nro Paginas: 456
Capítulos:
Chapter 1: Working with Xamarin.Android
Chapter 2: Showing Views and Handling Fragments
Chapter 3: Managing App Data
Chapter 4: Presenting App Data
Chapter 5: Communicating with the Outside World
Chapter 6: Using Background Tasks
Chapter 7: Notifying Users
Chapter 8: Interacting with Other Apps
Chapter 9: Presenting Multimedia
Chapter 10: Responding to the User
Chapter 11: Connecting to Wearables
Chapter 12: Adding In-App Billing
Chapter 13: Publishing Apps
Descarga:
Xamarin_Mobile_Development_for_Android_Cookbook
Titulo: Xamarin Mobile Development for Android Cookbook
Autor: Matthew Leibowitz
Editorial: Packt
Nro Paginas: 456
Capítulos:
Chapter 1: Working with Xamarin.Android
Chapter 2: Showing Views and Handling Fragments
Chapter 3: Managing App Data
Chapter 4: Presenting App Data
Chapter 5: Communicating with the Outside World
Chapter 6: Using Background Tasks
Chapter 7: Notifying Users
Chapter 8: Interacting with Other Apps
Chapter 9: Presenting Multimedia
Chapter 10: Responding to the User
Chapter 11: Connecting to Wearables
Chapter 12: Adding In-App Billing
Chapter 13: Publishing Apps
Descarga:
Xamarin_Mobile_Development_for_Android_Cookbook
Etiquetas:
Android,
App Data,
Apps,
Background,
Billing,
Cookbook,
Development,
Fragments,
Libros,
Matthew Leibowitz,
Mobile,
Multimedia,
Packt,
Publishing,
Tasks,
Users,
Views,
Wearables,
Xamarin,
Xamarin.Android
lunes, 18 de enero de 2016
El Libro del Día: PhoneGap 4 Mobile Application Development Cookbook
El Libro del Día: 2016-01-18
Titulo: PhoneGap 4 Mobile Application Development Cookbook
Autor: Zainul Setyo Pamungkas, Matt Gifford
Editorial: Packt
Nro Paginas: 357
Capítulos:
Chapter 1: Welcome to PhoneGap 3
Chapter 2: Movement and Location – Using the Accelerometer and Geolocation Sensors
Chapter 3: Filesystems, Storage, and Local Databases
Chapter 4: Working with Audio, Images, and Video
Chapter 5: Working with Your Contacts List
Chapter 6: Hooking into Native Events
Chapter 7: Working with XUI
Chapter 8: Working with the Ionic Framework
Chapter 9: Ionic Framework Development
Chapter 10: User Interface Development
Chapter 11: Extending PhoneGap with Plugins
Chapter 12: Development Tools and Testing
Descarga:
PhoneGap_4_Mobile_Application_Development_Cookbook
Titulo: PhoneGap 4 Mobile Application Development Cookbook
Autor: Zainul Setyo Pamungkas, Matt Gifford
Editorial: Packt
Nro Paginas: 357
Capítulos:
Chapter 1: Welcome to PhoneGap 3
Chapter 2: Movement and Location – Using the Accelerometer and Geolocation Sensors
Chapter 3: Filesystems, Storage, and Local Databases
Chapter 4: Working with Audio, Images, and Video
Chapter 5: Working with Your Contacts List
Chapter 6: Hooking into Native Events
Chapter 7: Working with XUI
Chapter 8: Working with the Ionic Framework
Chapter 9: Ionic Framework Development
Chapter 10: User Interface Development
Chapter 11: Extending PhoneGap with Plugins
Chapter 12: Development Tools and Testing
Descarga:
PhoneGap_4_Mobile_Application_Development_Cookbook
Etiquetas:
Application,
Audio,
Cookbook,
Databases,
Development,
Filesystems,
Geolocation,
Images,
Ionic,
Libros,
Matt Gifford,
Mobile,
Packt,
PhoneGap,
Plugins,
Sensors,
Storage,
Video,
XUI,
Zainul Setyo Pamungkas
miércoles, 13 de enero de 2016
El Libro del Día: Learning Material Design
El Libro del Día: 2016-01-13
Titulo: Learning Material Design
Autor: Kyle Mew
Editorial: Packt
Nro Paginas: 187
Capítulos:
Chapter 1: Getting Started with Material Design
Chapter 2: Building a Mobile Layout
Chapter 3: Common Components
Chapter 4: Sliding Drawers and Navigation
Chapter 5: Lists, Cards, and Data
Chapter 6: Animations and Transitions
Chapter 7: Material on Other Devices
Chapter 8: Material Web Frameworks
Chapter 9: The Materialize Framework
Chapter 10: Material Design Lite
Descarga:
Learning_Material_Design
Titulo: Learning Material Design
Autor: Kyle Mew
Editorial: Packt
Nro Paginas: 187
Capítulos:
Chapter 1: Getting Started with Material Design
Chapter 2: Building a Mobile Layout
Chapter 3: Common Components
Chapter 4: Sliding Drawers and Navigation
Chapter 5: Lists, Cards, and Data
Chapter 6: Animations and Transitions
Chapter 7: Material on Other Devices
Chapter 8: Material Web Frameworks
Chapter 9: The Materialize Framework
Chapter 10: Material Design Lite
Descarga:
Learning_Material_Design
Etiquetas:
Animations,
Cards,
Components,
CSS,
Data,
Design Lite,
Devices,
Drawers,
Kyle Mew,
Layout,
Learning,
Libros,
Lists,
Material Design,
Materialize,
Mobile,
Navigation,
Packt,
Transitions,
Web Frameworks
miércoles, 9 de diciembre de 2015
Artículo - Pruebas de Performance
Pruebas de Performance
En este artículo veremos un caso práctico de pruebas del software: las pruebas de performance, que son las más necesarias en los sistemas web, debido al creciente incremento de usuarios y sobre todo de dispositivos que se pueden conectar a una aplicación web.
1. Criterios para Medir la Performance
Primero debemos entender que la medición de la performance de un sitio web se realiza a nivel de cada página, es decir, para medir la performance de todo el sitio web debemos medir la performance de cada página y luego hacer un promedio.
Entre las principales métricas para medir la performance de una página tenemos:
Además cada archivo debe tener la menor cantidad de datos, es decir, solo lo que se va a usar; en el caso de CSS las clases, en el caso de JavaScript las funciones y en el caso de las imágenes y las fuentes tienen que estar optimizadas.
Descarga del documento completo
Pruebas_Performance
En este artículo veremos un caso práctico de pruebas del software: las pruebas de performance, que son las más necesarias en los sistemas web, debido al creciente incremento de usuarios y sobre todo de dispositivos que se pueden conectar a una aplicación web.
1. Criterios para Medir la Performance
Primero debemos entender que la medición de la performance de un sitio web se realiza a nivel de cada página, es decir, para medir la performance de todo el sitio web debemos medir la performance de cada página y luego hacer un promedio.
Entre las principales métricas para medir la performance de una página tenemos:
- Tiempo de carga (Load Time)
- Tiempo del primer byte recibido (First Byte)
- Índice de velocidad (Speed Index)
- Elementos del Modelo de Objetos del Documento (DOM Elements)
- La primera vez (First View)
- Las demás veces (Repeat View)
- Cantidad de solicitudes hechas por la página (Request)
- Cantidad de datos enviados al cliente (Bytes)
Además cada archivo debe tener la menor cantidad de datos, es decir, solo lo que se va a usar; en el caso de CSS las clases, en el caso de JavaScript las funciones y en el caso de las imágenes y las fuentes tienen que estar optimizadas.
2. Herramientas para Pruebas de Performance
Existen muchas herramientas para medir la performance, entre las más usadas en el mundo tenemos:
2.1. YSlow
Esta herramienta fue la primera en medir la performance y la primera versión fue creada por Steve Souders en Yahoo en el 2007, actualmente está disponible la versión 2.0 mantenida por Marcel Duran de Twitter.
YSlow es un complemento que se agrega al navegador (Browser) y está disponible para casi todos los navegadores (Firefox, Chrome, Safari, Opera, etc.) menos para Microsoft Internet Explorer.
URL: http://yslow.org/
Página Web de YSlow
Esta herramienta, identifica 34 criterios claves de los cuales actualmente usa 23 criterios para medir la performance de la página, los cuales se muestran en la siguiente figura.
Criterios para Medir Performance de YSlow V2.0
2.2. PageSpeed Insights
Esta herramienta desarrollada por Google en el 2013, inicialmente estaba disponible como una extensión para los navegadores, pero actualmente está disponible como una página web dentro del sitio de desarrolladores de Google.
Una de las ventajas de esta herramienta es que analiza la performance tanto para Desktop como para dispositivos móviles.
URL: https://developers.google.com/speed/pagespeed/insights/
Página Web de PageSpeed Insights
2.3. WebPageTest
Es una herramienta inicialmente desarrollada por AOL en el 2008 y actualmente mantenida por Google.
Es una de las más usadas actualmente ya que muestra información completa de todas las métricas de performance vistas anteriormente.
URL: http://www.webpagetest.org/
Página Web de WebPageTest
3. Página de Prueba: Login del Sistema
Para las pruebas con las 3 herramientas hemos tomado la página de login de un sistema ubicado en la siguiente dirección.
URL: http://red.hteperu.com/test/Incentivos.Appweb/
Página Web de Prueba
Solo hay que resaltar que la página está en ASP.NET MVC y se compone de lo siguiente:
- 1 archivo html para la página
- 1 archivo de hoja de estilo: Login.css
- 2 archivos de JavaScript: md3.js y Login.js
- 2 archivos de fuentes: regular.woff y regular.woff2
Las pruebas se harán usando Google Chrome V46.0.2490.86 m (64 bits)
4. Pruebas de Performance usando YSlow
Después de descargar el complemento YSlow V2.0 abrir la herramienta y realizar los siguientes pasos:
- Ir a la dirección URL: http://red.hteperu.com/test/Incentivos.Appweb/.
- Clic al botón “Run Test” de la ficha “Home” similar a lo mostrado en la figura.
Ficha Inicio de YSlow V2.0
- Automáticamente se irá a la ficha “Grade” similar a lo mostrado en la figura.
Ficha Grado de YSlow V2.0
- En esta ficha se aprecia el puntaje obtenido por la página, en este caso “93 puntos” obteniendo el grado “A” que significa un buen resultado.
- Para mejorar el puntaje necesitamos usar CDN (grado C), usar cabeceras de expiración (grado E), configurar Entity Tags (grado D).
- Si deseamos ver el detalle por tipo de archivos seleccionamos la ficha “Components” y se mostrará algo similar a la siguiente figura.
Ficha Componentes de YSlow V2.0
- En la figura notamos que aparece un mensaje de color rojo indicando que No se encuentra el archivo favicon (icono de la página web).
- Si deseamos ver una estadística de archivos por tipos seleccionamos la ficha “Statistics” y se mostrará algo similar a la siguiente figura.
Ficha Estadística de YSlow V2.0
Finalmente, en esta ficha podemos darnos cuenta de que solo se está guardando en cache los archivos de hojas de estilos (css) y de JavaScript (js) pero no la página principal y el icono de inicio (ya que éste no existe).
En términos generales, diremos que hemos pasado la prueba de performance usando YSlow V2.0 de Yahoo.
5. Pruebas de Performance usando PageSpeed Insights
Para realizar las pruebas con esta herramienta realizar los siguientes pasos:
- Ir a la dirección URL:
https://developers.google.com/speed/pagespeed/insights/.
- Ingresar la dirección de la página web con el login:
http://red.hteperu.com/test/Incentivos.Appweb/
- Clic al botón “Analize” tal como se muestra en la siguiente figura.
Página principal de PageSpeed Insights
- Automáticamente aparecerá los resultados de la ficha “Mobile” que tiene 2 partes: Velocidad y Experiencia de Usuario.
- A continuación se muestra un gráfico con la sección de “Velocidad” de la ficha “Mobile”.
Sección Velocidad de la ficha Mobile de PageSpeed Insights
- Aquí se aprecia que se ha fallado en 2 reglas y se ha pasado 8 reglas. Los 2 temas a mejorar son cargar asíncronamente el archivo CSS y el otro es usar cabeceras de expiración para guardar en cache los archivos JS y CSS.
- A continuación se muestra un gráfico con la sección de “Experiencia de Usuario” de la ficha “Mobile”.
Sección Experiencia de Usuario de la ficha Mobile de PageSpeed Insights
- En esta se aprecia que no hay ningún problema de experiencia de usuario si la página se ve en un dispositivo móvil.
- Si cambiamos a la ficha “Desktop” ésta tiene solo la parte de Velocidad que es exactamente la misma que la de la ficha Mobile.
- A continuación se muestra un gráfico con la sección de “Velocidad” de la ficha “Desktop”.
Sección Velocidad de la ficha Desktop de PageSpeed Insights
- En términos generales, podemos decir que también hemos pasado la prueba de performance usando PageSpeed Insights de Google.
6. Pruebas de Performance usando WebPageTest
Para realizar las pruebas con esta herramienta realizar los siguientes pasos:
- Ir a la dirección URL:
- Ingresar la dirección de la página web con el login:
- Clic al botón “Start Test” tal como se muestra en la siguiente figura.
Página principal de WebPageTest
- Aparece un mensaje de probando (Testing) y luego se muestra el resultado del test similar al de la siguiente figura.
Página de Resultado de la Prueba en WebPageTest
- Nuevamente apreciamos que la página web está casi bien excepto que debe usar Cache para archivos JS y CSS (F) y usar CDN (X).
- Podemos analizar la primera ficha “Summary” que muestra un resumen con una tabla con los tiempos de carga y un par de gráficos con la primera vista y la vista repetida, similar a la siguiente figura.
Ficha Resumen del Resultado de WebPageTest
- La segunda ficha “Details” muestra mayor detalle de los tiempos de carga, un gráfico de cascada, un gráfico de conexiones y una tabla con las solicitudes realizadas por la página.
- El gráfico de cascada o “Waterfall View” muestra los tiempos de carga por cada recurso de la página, similar a la siguiente figura.
Vista Cascada de la Ficha Detalle del Resultado de WebPageTest
- El gráfico de conexión o “Connection View” muestra los tiempos de carga por conexiones realizadas al servidor, similar a la siguiente figura.
Vista Conexión de la Ficha Detalle del Resultado de WebPageTest
- Finalmente en la sección de Detalles la tabla “Request Details” muestra los detalles de las solicitudes realizadas por la página, similar a la siguiente figura.
Detalles de Solicitud de la Ficha Detalle del Resultado de WebPageTest
- Las filas pintadas de color rojo indican peligro, en este caso, el archivo de fuentes woff2 no ha sido registrado en el servidor como extensión conocida (MIME) y el otro problema es que la página no cuenta con un icono de inicio.
- La tercera ficha “Performance Review” permite mostrar una revisión de las métricas de performance, para lo cual presenta una tabla con la lista de verificación a mejorar, el detalle y un glosario.
Lista de verificación de la Ficha Revisión del Resultado de WebPageTest
- En el “CheckList” se aprecia claramente los temas que se pueden mejorar (color rojo), el archivo de fuente woff2 y el archivo de icono, además de usar caché para contenido estático (CSS, JS) y usar un servidor CDN.
Detalles de la Ficha Revisión del Resultado de WebPageTest
Glosario de la Ficha Revisión del Resultado de WebPageTest
- La cuarta ficha “Content Breakdown” permite desglosar el contenido por tipo de recurso, mostrando 4 gráficos: por tipo MIME y por Conexión, tanto para la primera vista como para las vistas repetidas.
Gráfico por Tipo MIME (Primera Vista) de la Ficha Desglosar Contenido del Resultado de WebPageTest
Gráfico por Conexión (Primera Vista) de la Ficha Desglosar Contenido del Resultado de WebPageTest
Gráfico por Tipo MIME (Vista Repetida) de la Ficha Desglosar Contenido del Resultado de WebPageTest
Gráfico por Conexión (Vista Repetida) de la Ficha Desglosar Contenido del Resultado de WebPageTest
- La quinta ficha “Domains” muestra 2 gráficos de desglose de contenido pero por dominio, tanto para la primera vista como para las vistas repetidas.
- Solo hay que mencionar que No es necesario tenar varios Dominios (incluyendo CDN) cuando el número de archivos es poco, por ejemplo en nuestro caso, la página de login tiene solo 6 archivos.
- A continuación se muestra los gráficos de la ficha “Domains” conteniendo el desglose de contenidos para la primera vista y para las vistas repetidas.
Gráfico de desglose de contenido (Primera Vista) de la Ficha Dominio del Resultado de WebPageTest
Gráfico de desglose de contenido (Vista Repetida) de la Ficha Dominio del Resultado de WebPageTest
- Finalmente, revisaremos la sexta y última ficha llamada “Screen Shot” que muestra 2 gráficos con las pantallas de la página totalmente cargada y otra con el Documento Completado, además también los mensajes de consola del Log.
- A continuación se muestra los gráficos de la ficha “Screen Shot” y los mensajes del Log.
Gráfico de la Pantalla Totalmente Cargada de la Ficha Captura de Pantalla del Resultado de WebPageTest
Gráfico de la Pantalla con Documento Completado de la Ficha Captura de Pantalla del Resultado de WebPageTest
Gráfico de Log de la Ficha Captura de Pantalla del Resultado de WebPageTest
- En términos generales, podemos decir que también hemos pasado la prueba de performance usando WebPageTest de Google.
Descarga del documento completo
Pruebas_Performance
Etiquetas:
Artículos,
CDN,
Chrome,
CSS,
Fuentes,
Google,
HTML,
Javascript,
Lduenas,
Login,
Métricas,
MIME,
Mobile,
PageSpeed,
Performance,
Pruebas,
Vista,
WebPageTest,
Yahoo,
YSlow
miércoles, 28 de octubre de 2015
El Libro del Día: D3.js in Action
El Libro del Día: 2015-10-28
Titulo: D3.js in Action
Autor: Elijah Meeks
Editorial: Manning
Nro Paginas: 354
Capítulos:
PART 1 D3.JS FUNDAMENTALS
1 An introduction to D3.js
2 Information visualization data flow
3 Data-driven design and interaction
PART 2 THE PILLARS OF INFORMATION VISUALIZATION
4 Chart components
5 Layouts
6 Network visualization
7 Geospatial information visualization
8 Traditional DOM manipulation with D3
PART 3 ADVANCED TECHNIQUES
9 Composing interactive applications
10 Writing layouts and components
11 Big data visualization
12 D3 on mobile (online only)
Descarga:
D3.js_in_Action
Titulo: D3.js in Action
Autor: Elijah Meeks
Editorial: Manning
Nro Paginas: 354
Capítulos:
PART 1 D3.JS FUNDAMENTALS
1 An introduction to D3.js
2 Information visualization data flow
3 Data-driven design and interaction
PART 2 THE PILLARS OF INFORMATION VISUALIZATION
4 Chart components
5 Layouts
6 Network visualization
7 Geospatial information visualization
8 Traditional DOM manipulation with D3
PART 3 ADVANCED TECHNIQUES
9 Composing interactive applications
10 Writing layouts and components
11 Big data visualization
12 D3 on mobile (online only)
Descarga:
D3.js_in_Action
Etiquetas:
Big Data,
Chart,
Components,
D3.js,
Data Flow,
Data-driven,
DOM,
Elijah Meeks,
Fundamentals,
Geospatial,
in Action,
Interaction,
Javascript,
Layouts,
Libros,
Manning,
Mobile,
Network,
Visualization
miércoles, 14 de octubre de 2015
El Libro del Día: The Responsive Web
El Libro del Día: 2015-10-14
Titulo: The Responsive Web
Autor: Matthew Carver
Editorial: Manning
Nro Paginas: 193
Capítulos:
PART 1 THE RESPONSIVE WAY
1 Learning to work responsively
2 Design for mobile first
PART 2 DESIGNING FOR THE RESPONSIVE WEB
3 Using style tiles to communicate design
4 Responsive user experience design patterns
5 Responsive layouts
6 Adding content modules and typography
PART 3 EXPANDING THE DESIGN WITH CODE
7 Adding graphics in the browser with CSS
8 Progressive enhancement and obsolescence control with Modernizr
9 Testing and optimization for responsive websites
Descarga:
The_Responsive_Web
Titulo: The Responsive Web
Autor: Matthew Carver
Editorial: Manning
Nro Paginas: 193
Capítulos:
PART 1 THE RESPONSIVE WAY
1 Learning to work responsively
2 Design for mobile first
PART 2 DESIGNING FOR THE RESPONSIVE WEB
3 Using style tiles to communicate design
4 Responsive user experience design patterns
5 Responsive layouts
6 Adding content modules and typography
PART 3 EXPANDING THE DESIGN WITH CODE
7 Adding graphics in the browser with CSS
8 Progressive enhancement and obsolescence control with Modernizr
9 Testing and optimization for responsive websites
Descarga:
The_Responsive_Web
Etiquetas:
Browser,
CSS,
Design,
Graphics,
Layouts,
Libros,
Manning,
Matthew Carver,
Mobile,
Modernizr,
Modules,
Optimization,
Patterns,
Responsive Web,
Style,
Testing,
Typography
viernes, 18 de septiembre de 2015
El Libro del Día: OpenGL Data Visualization Cookbook
El Libro del Día: 2015-09-18
Titulo: OpenGL Data Visualization Cookbook
Autor: Raymond CH Lo, William CY Lo
Editorial: Packt
Nro Paginas: 298
Capítulos:
Chapter 1: Getting Started with OpenGL
Chapter 2: OpenGL Primitives and 2D Data Visualization
Chapter 3: Interactive 3D Data Visualization
Chapter 4: Rendering 2D Images and Videos with Texture Mapping
Chapter 5: Rendering of Point Cloud Data for 3D Range sensing Cameras
Chapter 6: Rendering Stereoscopic 3D Models using OpenGL
Chapter 7: An Introduction to Realtime Graphics Rendering on a Mobile Platform using OpenGL ES 3.0
Chapter 8: Interactive Realtime Data Visualization on Mobile Devices
Chapter 9: Augmented Reality based Visualization on Mobile or Wearable Platforms
Descarga:
OpenGL_Data_Visualization_Cookbook
Titulo: OpenGL Data Visualization Cookbook
Autor: Raymond CH Lo, William CY Lo
Editorial: Packt
Nro Paginas: 298
Capítulos:
Chapter 1: Getting Started with OpenGL
Chapter 2: OpenGL Primitives and 2D Data Visualization
Chapter 3: Interactive 3D Data Visualization
Chapter 4: Rendering 2D Images and Videos with Texture Mapping
Chapter 5: Rendering of Point Cloud Data for 3D Range sensing Cameras
Chapter 6: Rendering Stereoscopic 3D Models using OpenGL
Chapter 7: An Introduction to Realtime Graphics Rendering on a Mobile Platform using OpenGL ES 3.0
Chapter 8: Interactive Realtime Data Visualization on Mobile Devices
Chapter 9: Augmented Reality based Visualization on Mobile or Wearable Platforms
Descarga:
OpenGL_Data_Visualization_Cookbook
Etiquetas:
2D,
3D,
Cameras,
Cookbook,
Data Visualization,
Graphics,
Images,
Libros,
Mapping,
Mobile,
Models,
OpenGL,
Packt,
Primitives,
Raymond CH Lo,
Realtime,
Rendering,
Texture,
Videos,
William CY Lo
martes, 15 de septiembre de 2015
El Libro del Día: Learning React Native
El Libro del Día: 2015-09-15
Titulo: Learning React Native
Autor: Bonnie Eisenman
Editorial: O'Reilly
Nro Paginas: 104
Capítulos:
1. Introduction
2. Getting Started
3. Components for Mobile
4. Styles
Descarga:
Learning_React_Native
Titulo: Learning React Native
Autor: Bonnie Eisenman
Editorial: O'Reilly
Nro Paginas: 104
Capítulos:
1. Introduction
2. Getting Started
3. Components for Mobile
4. Styles
Descarga:
Learning_React_Native
Etiquetas:
Android,
APIs,
Bonnie Eisenman,
Components,
DOM,
HTML,
Introduction,
iOS,
Javascript,
Learning,
Libros,
Mobile,
Native,
O'Reilly,
React,
Styles
miércoles, 19 de agosto de 2015
El Libro del Día: JavaScript JSON Cookbook
El Libro del Día: 2015-08-19
Titulo: JavaScript JSON Cookbook
Autor: Ray Rischpater
Editorial: Packt
Nro Paginas: 192
Capítulos:
Chapter 1: Reading and Writing JSON on the Client
Chapter 2: Reading and Writing JSON on the Server
Chapter 3: Using JSON in Simple AJAX Applications
Chapter 4: Using JSON in AJAX Applications with jQuery and AngularJS
Chapter 5: Using JSON with MongoDB
Chapter 6: Using JSON with CouchDB
Chapter 7: Using JSON in a Type-safe Manner
Chapter 8: Using JSON for Binary Data Transfer
Chapter 9: Querying JSON with JSONPath and LINQ
Chapter 10: JSON on Mobile Platforms
Descarga:
JavaScript_JSON_Cookbook
Titulo: JavaScript JSON Cookbook
Autor: Ray Rischpater
Editorial: Packt
Nro Paginas: 192
Capítulos:
Chapter 1: Reading and Writing JSON on the Client
Chapter 2: Reading and Writing JSON on the Server
Chapter 3: Using JSON in Simple AJAX Applications
Chapter 4: Using JSON in AJAX Applications with jQuery and AngularJS
Chapter 5: Using JSON with MongoDB
Chapter 6: Using JSON with CouchDB
Chapter 7: Using JSON in a Type-safe Manner
Chapter 8: Using JSON for Binary Data Transfer
Chapter 9: Querying JSON with JSONPath and LINQ
Chapter 10: JSON on Mobile Platforms
Descarga:
JavaScript_JSON_Cookbook
Etiquetas:
AJAX,
AngularJS,
Binary Data,
Client,
Cookbook,
CouchDB,
Javascript,
jQuery,
JSON,
JSONPath,
Libros,
LINQ,
Mobile,
MongoDB,
Packt,
Ray Rischpater,
Reading,
Server,
Type safe,
Writing
jueves, 16 de julio de 2015
El Libro del Día: Xamarin Mobile Application Development
El Libro del Día: 2015-07-16
Titulo: Xamarin Mobile Application Development
Autor: Dan Hermes
Editorial: Apress
Nro Paginas: 425
Capítulos:
Chapter 1: Mobile Development Using Xamarin
Chapter 2: Building Mobile User Interfaces
Chapter 3: UI Design Using Layouts
Chapter 4: User Interaction Using Controls
Chapter 5: Making a Scrollable List
Chapter 6: Navigation
Chapter 7: Data Access with SQLite and Data Binding
Chapter 8: Custom Renderers
Chapter 9: Cross-Platform Architecture
Epilogue: The Art of Xamarin App Development
Descarga:
Xamarin_Mobile_Application_Development
Titulo: Xamarin Mobile Application Development
Autor: Dan Hermes
Editorial: Apress
Nro Paginas: 425
Capítulos:
Chapter 1: Mobile Development Using Xamarin
Chapter 2: Building Mobile User Interfaces
Chapter 3: UI Design Using Layouts
Chapter 4: User Interaction Using Controls
Chapter 5: Making a Scrollable List
Chapter 6: Navigation
Chapter 7: Data Access with SQLite and Data Binding
Chapter 8: Custom Renderers
Chapter 9: Cross-Platform Architecture
Epilogue: The Art of Xamarin App Development
Descarga:
Xamarin_Mobile_Application_Development
Etiquetas:
Application,
Apress,
Architecture,
C#,
Controls,
Cross Platform,
Dan Hermes,
Data Access,
Data Binding,
Development,
Libros,
List,
Mobile,
Navigation,
Renderers,
Scrollable,
SQLite,
UI,
Xamarin,
Xamarin.Forms
martes, 2 de junio de 2015
Personajes de la Computación - Dino Esposito
Personajes de la Computación - Dino Esposito
Dino Esposito es un Consultor, Arquitecto y Especialista en Desarrollo Microsoft. Es uno de los principales evangelistas de .NET de Italia, autor de varios libros, columnista del MSDN Magazine de la sección Cutting Edge y expositor en diferentes conferencias.
Actualmente trabaja como CTO de la empresa Crionet y su especialidad es la Arquitectura y las Aplicaciones Móviles, pero es nuestro personaje de la semana por su aporte a la difusión de ASP.NET del cual ha escrito numerosos libros y conferencias que a continuación comparto.
Libros
Microsoft Press 2003 - Applied XML Programming For Microsoft NET
Microsoft Press 2009 - Microsoft ASP.NET and AJAX. Architecting Web Applications
Microsoft Press 2010 - Programming Microsoft ASP .NET MVC
Microsoft Press 2011 - Programming Microsoft ASP.NET 4
Microsoft Press 2012 - Architecting Mobile Solutions For The Enterprise
Microsoft Press 2013 - Start Here Build Windows 8 Apps with HTML5 and JavaScript
Dino Esposito es un Consultor, Arquitecto y Especialista en Desarrollo Microsoft. Es uno de los principales evangelistas de .NET de Italia, autor de varios libros, columnista del MSDN Magazine de la sección Cutting Edge y expositor en diferentes conferencias.
Actualmente trabaja como CTO de la empresa Crionet y su especialidad es la Arquitectura y las Aplicaciones Móviles, pero es nuestro personaje de la semana por su aporte a la difusión de ASP.NET del cual ha escrito numerosos libros y conferencias que a continuación comparto.
Libros
Microsoft Press 2003 - Applied XML Programming For Microsoft NET
Microsoft Press 2009 - Microsoft ASP.NET and AJAX. Architecting Web Applications
Microsoft Press 2010 - Programming Microsoft ASP .NET MVC
Microsoft Press 2011 - Programming Microsoft ASP.NET 4
Microsoft Press 2012 - Architecting Mobile Solutions For The Enterprise
Microsoft Press 2013 - Start Here Build Windows 8 Apps with HTML5 and JavaScript
Videos de Conferencias
BASTA Spring 2013 - How to Write Code That Others Can Read
Codemotion 2013 - Android for .NET Developers
DevDay 2013 - Mobile is over: Start Planning Multi-Device Web sites Today
Software Architect 2013 - The executive summary of Android development for the busy architect
DevWeek 2014 - What's new in ASP.NET MVC 5
DevWeek 2014 - A first look at ASP.NET Identity
Software Architect 2014 - DDD misconceptions
Next 2014 Moscow - Challenges, Pains and Points of Software Development Today
Next 2014 Moscow - ASP.NET vNext: What it means to you and what it means to Microsoft
Code Fest 2015 - CQRS: A More Effective Way of Writing the Same Applications
Code Fest 2015 - Challenges, Pains and Points of Software Development Today
Comentario Final
En este post he compartido 8 libros de Dino Esposito, desde el 2003 hasta el 2014, de XML, ASP.NET, MVC, Windows 8 y Arquitectura de Aplicaciones, además de 11 Videos de Conferencias dadas entre el 2013 y 2015.
Gracias Dino por compartir tu experiencia con la Comunidad de Desarrollo Microsoft.
Etiquetas:
AJAX,
Arquitectura,
ASP.NET,
BASTA,
Code Fest,
Codemotion,
Crionet,
Cutting Edge,
DevDay,
DevWeek,
Dino Esposito,
Italia,
Microsoft,
Mobile,
MSDN Magazine,
MVC,
Next,
Personajes,
Window 8,
XML
Suscribirse a:
Entradas (Atom)






















































