Introducción a JavaScript, historia del lenguaje, evolución, frameworks (en especial jQuery) y futuro del lenguaje gracias a la combinación con HTML5 y CSS3
Presentación realizada en Camon a través de ADWE.
9 de Junio de 2011
Introducción a JavaScript, historia del lenguaje, evolución, frameworks (en especial jQuery) y futuro del lenguaje gracias a la combinación con HTML5 y CSS3
Presentación realizada en Camon a través de ADWE.
9 de Junio de 2011
En esta presentación te encuentras información sobre javascript, nos define la historia, el significado y quien fue l creador, el vídeo en youtube :https://www.youtube.com/watch?v=dletMGYT-Lo
Páginas del libro:
1.1. ¿Qué es JavaScript? ............................................................. 5
1.2. Breve historia......................................................................... 5
1.3. Especificaciones oficiales..................................................... 6
Introducción al framework Angular 2 para el desarrollo de aplicaciones Web. Revisión a sus conceptos principales y su alineación con el estándar Web Components.
Charla impartida el 26 de enero de 2017 para SevillaJS.
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4Rodolfo Finochietti
La nueva versión de Visual Studio incorpora funcionalidades, algunas de las cuales veremos en esta sesión, haciendo hincapié en el desarrollo Web. También veremos las nuevas características de ASP.NET MVC 4 que ayudan a desarrollar sitios Web de alta performance.
Ponencia ofrecida por Oier Blasco en DroidconMAD2013. Sinopsis: La programación reactiva es un paradigma de programación que se centra en los flujos de datos. La presentación trata de cómo podemos usar la programación reactiva para simplificar la programación de tareas asíncronas en android (principalmente las aplicaciones que consumen datos de servicios remotos). Para ello comenzaremos la presentación con una introducción sobre los motivos y los fundamentos de la programación reactiva y como los implementa RxJava (El port open-source hecho por Netflix de la Rx extensions de microsoft). El la segunda para parte de la presentación veremos algunos ejemplos concreto de cómo podemos aplicar estos principios a problemas cotidianos en android.
Un vistazo al ecosistema JavaScript, sus frameworks, librerías, herramientas, etc...
Presentación utilizada en la charla "Game of Framework" dentro de la CodeWeek organizada por GDG Cáceres (España)
En esta presentación te encuentras información sobre javascript, nos define la historia, el significado y quien fue l creador, el vídeo en youtube :https://www.youtube.com/watch?v=dletMGYT-Lo
Páginas del libro:
1.1. ¿Qué es JavaScript? ............................................................. 5
1.2. Breve historia......................................................................... 5
1.3. Especificaciones oficiales..................................................... 6
Introducción al framework Angular 2 para el desarrollo de aplicaciones Web. Revisión a sus conceptos principales y su alineación con el estándar Web Components.
Charla impartida el 26 de enero de 2017 para SevillaJS.
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4Rodolfo Finochietti
La nueva versión de Visual Studio incorpora funcionalidades, algunas de las cuales veremos en esta sesión, haciendo hincapié en el desarrollo Web. También veremos las nuevas características de ASP.NET MVC 4 que ayudan a desarrollar sitios Web de alta performance.
Ponencia ofrecida por Oier Blasco en DroidconMAD2013. Sinopsis: La programación reactiva es un paradigma de programación que se centra en los flujos de datos. La presentación trata de cómo podemos usar la programación reactiva para simplificar la programación de tareas asíncronas en android (principalmente las aplicaciones que consumen datos de servicios remotos). Para ello comenzaremos la presentación con una introducción sobre los motivos y los fundamentos de la programación reactiva y como los implementa RxJava (El port open-source hecho por Netflix de la Rx extensions de microsoft). El la segunda para parte de la presentación veremos algunos ejemplos concreto de cómo podemos aplicar estos principios a problemas cotidianos en android.
Un vistazo al ecosistema JavaScript, sus frameworks, librerías, herramientas, etc...
Presentación utilizada en la charla "Game of Framework" dentro de la CodeWeek organizada por GDG Cáceres (España)
Esta presentación nos muestra qué es la programación reactiva, en qué consiste, qué nos permite hacer y por qué está tan de moda. Además, podemos ver el uso concreto de esta programación utilizando RxJava.
Autor: Juan Pablo González de Gracia.
La programación funcional está cogiendo fuerte tracción en los últimos años dentro de la comunidad de desarrollo. Tal vez ello se deba al surgimiento de nuevas arquitecturas que demandan cotas de escalabilidad, resistencia y flexibilidad en el marco de soluciones centradas en procesos de transformación. Pero más allá de una simple moda, como trataremos de mostrar en este taller, la programación funcional conduce a soluciones de código robustas, versátiles y expresivas que difícilmente son comparables con las propias de la orientación a objetos.
Además JavaScript, como la mayoría de los lenguajes de scripting es un lenguaje idiomático que invita a pensar en términos funcionales. De hecho muchas veces, cuando programamos en Javascript, desarrollamos soluciones funcionales casi sin darnos cuenta. Pero para trabajar correctamente en el marco de este paradigma debemos saber, qué es exactamente la programación funcional, cuáles son sus ventajas y principios fundacionales, de qué mecanismos se sirve, qué técnicas de programación se utilizan, qué patrones de diseño funcional existen a nuestra disposición y qué estilos arquitectónicos emergen.
Este taller trata de dar una introducción a la programación funcional que comienza desde lo más básico y va pasando progresivamente hacia conceptos más avanzados. A continuación se resume una relación del programa de contenidos para que os hagáis una idea de lo que se va a abordar.
- Diseño de Funciones I. Recursión
- Diseño de Funciones II. Inmersion
- Orden Superior I. Famila map & reduce
- Orden Superior II. Evaluación Partial
- Orden Superior III. Closures & Retentión Léxica
- Composición I. compose & sequence
- Composición II. Inversión de control
- Composición III. Streams
- Diseño sin Estado I. Fundamentos
- Diseño sin Estado II. Mónadas
- Conceptos Avanzados I. Optimización
- Conceptos Avanzados II.Inmutabilidad
Todos estos temas se abordan en 12 ficheros `.js` que se encuentran en [https://goo.gl/YwXtkV], en la carpeta `code/`. Para falilitar la realización y autoevaluación, el material de este taller se ha dividido en dos carpetas. En `code/problems` puede encontrarse una descripción de cada ejercicio planteado junto con una plantilla de código que ayuda a escribir la solución y probarla. En la carpeta `code/solutions` se ofrece una propuesta de solución para cada ejercicio planteado. Se anima al lector a no consultar la solución hasta haber intentando cada ejercicio por si mismo.
Frameworks y herramientas para la web del futuroBBVA API Market
El futuro de la web está más vivo que nunca. Si quieres conocer las librerías y herramientas esenciales para crear la web del futuro, descárgate este ebook. Más información en http://bbva.info/2t1NEv7
Se presenta breve explicación de que son las tecnologías cliente así mismo como las tecnologías servidor. Ademas de saber como y cuando se usan cualquiera de estas.
Charla presentada para la Universidad Cenfotec, en el Colegio de Informáticos de Costa Rica. Marzo, 2014. La charla presenta una introducción a Ruby on Rails y cómo integrarlo con AngularJS
Inteligencia Artificial y Ciberseguridad.pdfEmilio Casbas
Recopilación de los puntos más interesantes de diversas presentaciones, desde los visionarios conceptos de Alan Turing, pasando por la paradoja de Hans Moravec y la descripcion de Singularidad de Max Tegmark, hasta los innovadores avances de ChatGPT, y de cómo la IA está transformando la seguridad digital y protegiendo nuestras vidas.
2. ¿Qué es?
“La programación reactiva es un paradigma de
programación orientado a flujos de datos y la
propagación de cambios”
(Wikipedia)
Manifiesto de Programación Reactiva:
http://www.reactivemanifesto.org/
3. Javascript Isomorfo
Antes: Desde los labores de la Web, la navegación la experiencia ha trabajado de esta manera:
Un navegador web pediría una página en particular (por ejemplo, “ http://www.geocities.com/ ")
-Causando un servidor en algún lugar en la Internet para generar una página HTML y enviarlo de
vuelta.
Esto ha funcionado bien porque los navegadores no eran muy poderosos y las páginas HTML
representaban documentos que eran en su mayoría estáticos y autónomos.
JavaScript, fue creada para permitir que las páginas web fuerán más dinámicas, no permitía mucho
más que presentaciones de imágenes y la era del diseño Jquery y efectos prettys.
4. Javascript Isomorfo
Traducción parcial del Post http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/ por Spike Brehm
Después de años de avances en la computación personal, tecnólogos creativos han llevado a la
web a sus límites , y los navegadores web han evolucionado para mantenerse al día.
Ahora, la Web se ha convertido en una plataforma de aplicaciones con todas las funciones, y
tiempos de ejecución de JavaScript rápida y estándares HTML5 ha permitido a los
desarrolladores crear aplicaciones ricas en las que antes sólo eran posibles en las plataformas
nativas.
¿Aplicaciones ricas en el navegador?
6. Luego llegaron las Apps
Single Page
No pasó mucho tiempo antes de que los desarrolladores comenzaron a construir aplicaciones
enteras en el navegador usando JavaScript, aprovechando estas nuevas capacidades.
Aplicaciones como Gmail, el clásico ejemplo de la aplicación de una sola página, pueden
responder inmediatamente a las interacciones del usuario, ya no tener que hacer una ida y
vuelta al servidor acaba de hacer una nueva página.
Las bibliotecas como Backbone . js, Ember.js y Angular.js se conocen como cliente MVC (Modelo-
Vista-Controlador) o MVVM (Modelo-Vista-ViewModel) bibliotecas a menudo. La arquitectura MVC
del lado del cliente típico es como la siguiente:
7. Problemas en el paraíso
En la práctica, sin embargo, hay algunos defectos fatales con este enfoque que le impiden ser
adecuado para muchos casos de uso.
SEO
Una aplicación que sólo se puede ejecutar en el lado del cliente no puede servir de HTML para
los rastreadores, por lo que tienen mala SEO by default. Web crawlers función haciendo una
petición a un servidor web y la interpretación de los resultados, pero si el servidor devuelve una
página en blanco, no es de mucho valor. Hay soluciones, pero no sin saltar a través de algunos
aros.
8. Rendimiento
Por la misma razón, si el servidor no hace que una página de HTML, sino que espera a JavaScript
del lado del cliente para hacerlo, los usuarios experimentarán unos segundos críticos de la
página en blanco o spinner carga antes de ver el contenido de la página. Hay muchos estudios
que muestran el efecto drástico un sitio lento tiene en los usuarios, y por lo tanto los ingresos.
Amazon afirma que cada reducción de http://venturebeat.com/2013/11/08/the-future-of-web-
apps-is-ready-isomorphic-javascript/00 ms en el tiempo de carga de página obtiene ingresos por
el uno por ciento. Twitter pasó un año y 40 ingenieros de la reconstrucción de su sitio para hacer
en el servidor en lugar del cliente, reclamando una mejora de 5 veces en el tiempo de carga
percibida.
9. Mientras que el caso ideal puede conducir a una bonita y clara separación de las preocupaciones,
inevitablemente, algunos trozos de lógica de la aplicación o la vista lógica terminan duplicado
entre el cliente y el servidor, a menudo en diferentes idiomas.
Los ejemplos más comunes son la fecha y el formato de moneda, validaciones de formulario y la
lógica de enrutamiento. . Esto hace que el mantenimiento sea una pesadilla, especialmente para
las aplicaciones más complejas.
Algunos desarrolladores, incluido yo mismo, nos sentimos mordidos por este enfoque que es a
menudo sólo después de haber invertido tiempo y esfuerzo para construir una aplicación de una
sola página que empezamos a encontrar sus inconvenientes.
Mantenibilidad
11. A medida que más organizaciones se sienten cómodos con Node.js para correr en producción,
es inevitable que cada vez más aplicaciones web empezarán a compartir código entre su cliente y
el código del servidor.
Es importante recordar que JavaScript isomorfo es un espectro - puede comenzar con sólo
compartir las plantillas, el progreso va desde la capa vista completa de la aplicación, hasta el final
llegando a la mayoría de la lógica de negocio de la aplicación. Exactamente qué y cómo el código
JavaScript se comparte entre el entorno depende por completo de la aplicación que se está
construyendo y su conjunto único de restricciones.
La vista desde aquí
12. En Airbnb, se empezo a rediseñar todo el cliente en proceso de construcción de usar Node.js
herramientas basadas en como Gruntjs y Browserify. Nuestra aplicación principal Rails puede
nunca ser totalmente sustituida por una aplicación de Node.js, pero al adoptar estas
herramientas se hace cada vez más fácil de compartir ciertos trozos de JavaScript y plantillas
entre entornos
Lo escuchaste aquí primero -.
Dentro unos años, será raro ver una aplicación web avanzada que no ejecuta algo de JavaScript
en el servidor.
La vista desde aquí
15. Mojito
Mojito es un framework para el desarrollo de aplicaciones web usando JavaScript o HTML5 que Yahoo! ha
decidido liberar con la idea de crear una comunidad de desarrolladores alrededor de este framework para que,
gracias a su adopción, el proyecto crezca y se termine convirtiendo en un estándar. Gracias a Mojito, los
desarrolladores podrán trabajar a alto nivel y abstraerse de la plataforma destino, evitando la necesidad de
conocer la programación en Android, iOS o BlackBerry y obteniendo una versión de la aplicación para cada una
de las plataformas destino.
De hecho, una de las ventajas de usar este framework es que éste está optimizado para generar aplicaciones muy
optimizadas para trabajar en movilidad, es decir, para superar las adversidades del uso de conexiones de datos
móviles (cortes, caída del nivel de señal, etc) gracias a la flexibilidad de realizar la ejecución de los procesos tanto
desde el lado del servidor como el del cliente.
http://developer.yahoo.com/cocktails/mojito/ Official Page
16. Derby incluye un potente motor de sincronización de datos llamada Racer. A pesar de que funciona de forma
diferente , Racer es en Derby algo así como ActiveRecord es a Rails. Racer sincroniza automáticamente los datos
entre navegadores , servidores y bases de datos. Suscribciones a modelos y a los cambios en los objetos y
consultas específicas , lo que permite un control granular de la propagación de datos sin definir canales. Racer es
compatible con la resolución de conflictos “Out of the box”, lo que simplifica enormemente la creación de
aplicaciones multi-usuario.
Muy bueno para hacer aplicaciones REST, Derby está basado en Express.js el cual tiene un excelente soporte para
aplicaciones REST y si estas buscando un framework para una aplicación REST y NO html mejor usar librerías
como Express.js y no Derby, de igual forma si no estás pensando en apps con funcionalidades “multiusuario” o
“realtime” es mejor no usar Derby.
Ejemplos con Derby: http://todos.derbyjs.com/derby → Todos
http://chat.derbyjs.com/lobby → chat
Derbyjs
18. ¿Qué es MeteorJS?
Meteor es una plataforma para crear aplicaciones web en tiempo real construida sobre Node.js.
Meteor se localiza entre la base de datos de la aplicación y su interfaz de usuario y se asegura de
que ambas partes estén sincronizadas.
Como Meteor usa Node.js, se utiliza JavaScript en el cliente y en el servidor. Y más aún, Meteor es
capaz de compartir código entre ambos entornos.
hot code pushes baby!, gracias al canal que dejamos abierto cada vez que se actualiza el código
cliente en el servidor este lo sirve directamente a los clientes que estén conectados.
¿No es maravilloso? olvídate de esas eternas tensas esperas a que se limpien las caches de los
servidores para ver el efecto de tu pase a producción, tu éxito o tu fracaso sin esperas.
19. ¿Por qué gastar tiempo aprendiendo Meteor en lugar de otro framework web? Dejando a un lado
las características de Meteor, creemos que todo se reduce a una sola cosa: Meteor es fácil de
aprender.
Meteor permite crear una aplicación web en tiempo real en cuestión de horas. Y si ya hemos
hecho desarrollo web, estaremos familiarizados con JavaScript, y ni siquiera tendremos que
aprender un nuevo lenguaje.
Meteor podría ser el marco ideal para nuestras necesidades, quizás no. Pero ¿por qué no
probarlo y descubrirlo por nosotros mismos?.
¿Porque Meteorjs?
21. Llegando un tantico lejos...
- Si hay seguridad de los datos
- Es posible tener upload de archivos reactivo, roles y control sobre el “Hot code”
- Gran comunidad...Fast-render, Iron-router, Atmosphere, Roles…
- Una app controlada en producción, sin miedo a seguir desarrollando sobre ella
- No es magia sino al principio, buena curva de aprendizaje y enfoque sobre todo en la seguridad
de la información (Publicaciones, suscripciones y métodos)
- Muchos retos en el camino, pero siempre con una comunidad dispuesta a aportar en el proceso
- Facil deploy en desarrollo y gratis!!, múltiples opciones para deploys en producción.
22. -http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/ → Javascript Isomorfo
https://www.meteor.com/ → Oficial Page Meteorjs
http://es.discovermeteor.com/ → El mejor recurso actual para aprender Meteorjs en Español
Porque Fibers en Meteorjs?
-http://meteorhacks.com/fibers-eventloop-and-meteor.html
-https://modulus.io/ → Excelente Cloud para aplicaciones Nodejs y Meteorjs, Incribete y recibe 15
dolares para probarla!
Links recomendados
23. - http://www.goodui.org/ → Una de las mejores guías de Ux, simple y al grano.
- https://www.smartfile.com/ → Un CDN que utilizamos, es excelente :D.
- http://meteorhacks.com/pro-meteor/ → Production Users' Guide To Meteor
- https://atmospherejs.com/ → Sistema de paquetes de MeteorJs(Yo compartí el de gráficas
“nvd3js” y mi hermano el de validaciones en el servidor “Nice”) Hay excelentes paquetes!!
- http://nvd3.org/ → Reusable charts for D3, lo utilizamos bastante, no tiene muchas gráficas y
opciones pero esta bueno.
- https://university.mongodb.com/ → Para los que quieran aprender Mongodb :D!
Y bueno, posteen más, queremos que la comunidad siga creciendo, muchas gracias!
Otros links(Ux, Dbs,...whatever)