HTML5, CSS3, JavaScript, jQuery, Angular JS, Bootstrap, Mobile, CoffeeScript, GitHub, functional programming, Page Speed, Apache, JSON with Jackson, caching, REST, Security, load testing, profiling, Wro4j, Heroku, Cloudbees, AWS.
These are just some of the buzzwords that a Java web developer hears on a daily basis. This talk is designed to expose you to a plethora of technologies that you might've heard about, but haven't learned yet. We'll concentrate on the most important web developer skills, as well as UI tips and tricks to make you a better front-end engineer. Some of the most valuable engineers these days have front-end JS/CSS skills, as well as backend Java skills.
This presentation is from the University session I delivered at Devoxx 2013, in Antwerp. http://devoxx.be/dv13-matt-raible.html?presId=3648
Angular is one of today’s hottest JavaScript MVC Frameworks. In this session, we explore its next version: Angular 2. You’ll see how to build and test Angular 2 components with TypeScript, as well as how to develop forms with validation. Finally, you’ll learn about related Angular 2 projects and be on your way to becoming an Angular 2 Artist!
The Art of Angular in 2016 - Devoxx France 2016Matt Raible
AngularJS is one of today's hottest JavaScript MVC Frameworks. In this session, we explore its next version: Angular 2. You'll see how to build and test Angular 2 components with TypeScript, as well as how to develop forms with validation. Finally, you'll learn about related Angular 2 projects and be on your way to becoming an Angular 2 Artist!
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx UK 2016Matt Raible
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project that uses Java 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry and Heroku.
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015Matt Raible
Presentation from Angular Summit talk in September 2015. http://angularsummit.com/conference/boston/2015/09/session?id=34190
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project for you and allow you to use Java 7 or 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Grunt or Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry, Heroku and Openshift.
Play Framework vs Grails Smackdown - JavaOne 2013Matt Raible
The Play vs. Grails Smackdown. A comparison done by James Ward and Matt Raible. Includes detailed analysis from building the same webapp with these two popular JVM Web Frameworks.
See the HTML5 version of this presentation at http://www.ubertracks.com/preso.
Getting Started with Angular - Stormpath Webinar, January 2017Matt Raible
YouTube video of webinar: https://www.youtube.com/watch?v=Jq3szz2KOOs
This presentation is from a Stormpath Webinar I did on January 12, 2017. It was designed to teach developers how to build apps using Angular. Topics covered: tools needed, how to setup a project, how to run/deploy and how to deploy it to the cloud. I also talked about TypeScript, components, RxJS, routing, CSS frameworks and security.
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - GeekOut 2016Matt Raible
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project that uses Java 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or JWT. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry and Heroku.
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx 2015Matt Raible
YouTube of this talk: https://www.youtube.com/watch?v=baVOGuFIe9M
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project for you and allow you to use Java 7 or 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Grunt or Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry, Heroku and Openshift.
Angular is one of today’s hottest JavaScript MVC Frameworks. In this session, we explore its next version: Angular 2. You’ll see how to build and test Angular 2 components with TypeScript, as well as how to develop forms with validation. Finally, you’ll learn about related Angular 2 projects and be on your way to becoming an Angular 2 Artist!
The Art of Angular in 2016 - Devoxx France 2016Matt Raible
AngularJS is one of today's hottest JavaScript MVC Frameworks. In this session, we explore its next version: Angular 2. You'll see how to build and test Angular 2 components with TypeScript, as well as how to develop forms with validation. Finally, you'll learn about related Angular 2 projects and be on your way to becoming an Angular 2 Artist!
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx UK 2016Matt Raible
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project that uses Java 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry and Heroku.
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Angular Summit 2015Matt Raible
Presentation from Angular Summit talk in September 2015. http://angularsummit.com/conference/boston/2015/09/session?id=34190
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project for you and allow you to use Java 7 or 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Grunt or Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry, Heroku and Openshift.
Play Framework vs Grails Smackdown - JavaOne 2013Matt Raible
The Play vs. Grails Smackdown. A comparison done by James Ward and Matt Raible. Includes detailed analysis from building the same webapp with these two popular JVM Web Frameworks.
See the HTML5 version of this presentation at http://www.ubertracks.com/preso.
Getting Started with Angular - Stormpath Webinar, January 2017Matt Raible
YouTube video of webinar: https://www.youtube.com/watch?v=Jq3szz2KOOs
This presentation is from a Stormpath Webinar I did on January 12, 2017. It was designed to teach developers how to build apps using Angular. Topics covered: tools needed, how to setup a project, how to run/deploy and how to deploy it to the cloud. I also talked about TypeScript, components, RxJS, routing, CSS frameworks and security.
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - GeekOut 2016Matt Raible
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project that uses Java 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or JWT. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry and Heroku.
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx 2015Matt Raible
YouTube of this talk: https://www.youtube.com/watch?v=baVOGuFIe9M
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project for you and allow you to use Java 7 or 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Grunt or Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry, Heroku and Openshift.
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Matt Raible
JavaScript MVC Frameworks are all the rage these days. They’ve taken the web development world by storm. This session explores the various features of the three hottest JavaScript MVC frameworks: AngularJS, Ember.js and React.js. It also compares client-side templating vs. server-side templating and how well each framework supports Isomorphic JavaScript (code that can run both client-side and server-side). Finally, it ranks each framework on 10 different criteria using Yevgeniy Brikman’s framework scorecard.
Video on InfoQ: https://www.infoq.com/presentations/comparing-angular-ember-react
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - DOSUG February 2016Matt Raible
YouTube of this presentation's JHipster Demo: https://www.youtube.com/watch?v=ZGF4gEM4FuA
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project for you and allow you to use Java 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Grunt or Gulp.js, WebSockets and Browsersync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or JWT authentication.
For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry and Heroku.
Play vs Grails Smackdown - Devoxx France 2013Matt Raible
The Play vs. Grails Smackdown. A comparison done by James Ward and Matt Raible. Includes detailed analysis from building the same webapp with these two popular JVM Web Frameworks.
See blog post about this presentation at http://raibledesigns.com/rd/entry/devoxx_france_a_great_conference.
Developing, Testing and Scaling with Apache Camel - UberConf 2015Matt Raible
Apache Camel is an integration framework that allows you to define routing and mediation rules in a number of domain-specific languages. This presentation shows how I used Apache Camel to replace IBM Message Broker on a project. It includes information on how routes were developed using Camel’s Java API and how Camel can be integrated with Spring Boot. It also covers unit, integration and load testing (using Gatling) of these services. Finally, it touches on monitoring with hawtio and New Relic.
Microservices for the Masses with Spring Boot, JHipster, and JWT - Rich Web 2016Matt Raible
Microservices are all the rage and being deployed by many Java Hipsters. If you’re working on a large team that needs different release cycles for product components, microservices can be a blessing. If you’re working at your VW Restoration Shop and running its online store with your own software, having five services to manage and deploy can be a real pain. Share your knowledge and experience about microservices in this informative and code-heavy talk.
We’ll use JHipster (a Yeoman generator) to create Angular + Spring Boot apps on separate instances with a unified front-end. I’ll also show you options for securing your API gateway and individual applications using JWT. Heroku, Kubernetes, Docker, ELK, Spring Cloud, Stormpath; there will be plenty of interesting demos to see!
Ten practical ways to improve front-end performanceAndrew Rota
Conference talk presented at PHP South Coast 2017. Ten concrete ways to improve web performance, split between quick tactical wins and longer-term overarching strategies.
#NoXML: Eliminating XML in Spring Projects - SpringOne 2GX 2015Matt Raible
Many Spring projects exist that leverage XML for their configuration and bean definitions. Most Java web applications use a web.xml to configure their servlets, filters and listeners. This session shows you how you can eliminate XML by configuring your Spring beans with JavaConfig and annotations. It also shows how you can remove your web.xml and configure your web components with Java.
Integrating React.js Into a PHP ApplicationAndrew Rota
React.js has taken the web development world by storm, and for good reason: React offers a declarative, component-oriented approach to building highly-scalable web UIs. But how can we take advantage of a JavaScript library like React in our server-side PHP applications. In this talk l cover the different ways React.js can be integrated into an existing PHP web application: from a client-side only approach to multiple techniques that support full server-side rendering with a Node.js server or PHP’s v8js. I also discuss the trade-offs in each of these designs and the challenges involved with adding React to a PHP site. Most importantly, I consider the higher-level issue of how to improve view cohesion across the client-server divide in a PHP application.
Workshop sobre React Native realizado pela Vizir Software Studio (http://www.vizir.com.br) para Natura.
OVERVIEW
Desenvolvimento nativo
Desenvolvimento híbrido
Frameworks disponíveis
Ionic
NativeScript
Xamarin
React Native
REACT & REACT NATIVE
Componentes
React Components
Lifecycle
Tudo pode ser Javascript
JSX
CSS em JSON
Virtual DOM
Benefícios
Futuro
REACT NATIVE
Componentes & APIs
Comunidade
Utilizando bibliotecas nativas
Comportamentos específicos de cada plataforma
Ferramentas
Code Push
RNPM
BOAS PRÁTICAS
Fluxo de dados da aplicação
Testando seus componentes
Como estruturamos as aplicações
GITHUB SAMPLE APP
https://github.com/Vizir/ReactNativeWorkshop
Introduction to VueJS & The WordPress REST APICaldera Labs
Slides from Josh Pollock's WordCamp Miami 2017 talk. This is a basic introduction to using VueJS with the WordPress REST API.
For live code examples and more: https://learn.calderalabs.org/josh-wordcamp-miami-vuejs
Web App Security for Java Developers - UberConf 2021Matt Raible
Web app security is not just authentication and authorization. It's also the things you do to protect your web app from attackers with their XSS (cross-site scripting), SQL injection, DoS/DDoS attacks, and CSRF (cross-site request forgery), to name a few.
Web app security is a central component of any web-based business. The internet exposes web apps to attacks from different locations and various levels of scale and complexity. Web application security deals specifically with the security surrounding websites, web applications, and web services such as APIs.
In this presentation, you'll learn seven ways to better web app security, using Spring Security for code samples. You'll also see some quick demos of Spring Boot, Angular, and JHipster with Okta.
The Modern Java Web Developer - JavaOne 2013Matt Raible
HTML5, CSS3, JavaScript, jQuery, Angular JS, Bootstrap, Mobile, CoffeeScript, GitHub, functional programming, Page Speed, Apache, JSON with Jackson, caching, REST, Security, load testing, profiling, Wro4j, Heroku, Cloudbees, AWS. These are just some of the buzzwords that a Java web developer hears on a daily basis. This talk is designed to expose you to a plethora of technologies that you might've heard about, but haven't learned yet. We'll concentrate on the most important web developer skills, as well as UI tips and tricks to make you a better front-end engineer. Some of the most valuable engineers these days have front-end JS/CSS skills, as well as backend Java skills.
Comparing JVM Web Frameworks - Devoxx France 2013Matt Raible
A comparison on JVM Web Frameworks. Includes strategies for choosing and results from research by InfoQ and devrates.com. Also, lots of pretty graphs.
See blog post about this presentation at http://raibledesigns.com/rd/entry/devoxx_france_a_great_conference and video recording at http://raibledesigns.com/rd/entry/video_of_comparing_jvm_web
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Matt Raible
JavaScript MVC Frameworks are all the rage these days. They’ve taken the web development world by storm. This session explores the various features of the three hottest JavaScript MVC frameworks: AngularJS, Ember.js and React.js. It also compares client-side templating vs. server-side templating and how well each framework supports Isomorphic JavaScript (code that can run both client-side and server-side). Finally, it ranks each framework on 10 different criteria using Yevgeniy Brikman’s framework scorecard.
Video on InfoQ: https://www.infoq.com/presentations/comparing-angular-ember-react
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - DOSUG February 2016Matt Raible
YouTube of this presentation's JHipster Demo: https://www.youtube.com/watch?v=ZGF4gEM4FuA
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project for you and allow you to use Java 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Grunt or Gulp.js, WebSockets and Browsersync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or JWT authentication.
For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry and Heroku.
Play vs Grails Smackdown - Devoxx France 2013Matt Raible
The Play vs. Grails Smackdown. A comparison done by James Ward and Matt Raible. Includes detailed analysis from building the same webapp with these two popular JVM Web Frameworks.
See blog post about this presentation at http://raibledesigns.com/rd/entry/devoxx_france_a_great_conference.
Developing, Testing and Scaling with Apache Camel - UberConf 2015Matt Raible
Apache Camel is an integration framework that allows you to define routing and mediation rules in a number of domain-specific languages. This presentation shows how I used Apache Camel to replace IBM Message Broker on a project. It includes information on how routes were developed using Camel’s Java API and how Camel can be integrated with Spring Boot. It also covers unit, integration and load testing (using Gatling) of these services. Finally, it touches on monitoring with hawtio and New Relic.
Microservices for the Masses with Spring Boot, JHipster, and JWT - Rich Web 2016Matt Raible
Microservices are all the rage and being deployed by many Java Hipsters. If you’re working on a large team that needs different release cycles for product components, microservices can be a blessing. If you’re working at your VW Restoration Shop and running its online store with your own software, having five services to manage and deploy can be a real pain. Share your knowledge and experience about microservices in this informative and code-heavy talk.
We’ll use JHipster (a Yeoman generator) to create Angular + Spring Boot apps on separate instances with a unified front-end. I’ll also show you options for securing your API gateway and individual applications using JWT. Heroku, Kubernetes, Docker, ELK, Spring Cloud, Stormpath; there will be plenty of interesting demos to see!
Ten practical ways to improve front-end performanceAndrew Rota
Conference talk presented at PHP South Coast 2017. Ten concrete ways to improve web performance, split between quick tactical wins and longer-term overarching strategies.
#NoXML: Eliminating XML in Spring Projects - SpringOne 2GX 2015Matt Raible
Many Spring projects exist that leverage XML for their configuration and bean definitions. Most Java web applications use a web.xml to configure their servlets, filters and listeners. This session shows you how you can eliminate XML by configuring your Spring beans with JavaConfig and annotations. It also shows how you can remove your web.xml and configure your web components with Java.
Integrating React.js Into a PHP ApplicationAndrew Rota
React.js has taken the web development world by storm, and for good reason: React offers a declarative, component-oriented approach to building highly-scalable web UIs. But how can we take advantage of a JavaScript library like React in our server-side PHP applications. In this talk l cover the different ways React.js can be integrated into an existing PHP web application: from a client-side only approach to multiple techniques that support full server-side rendering with a Node.js server or PHP’s v8js. I also discuss the trade-offs in each of these designs and the challenges involved with adding React to a PHP site. Most importantly, I consider the higher-level issue of how to improve view cohesion across the client-server divide in a PHP application.
Workshop sobre React Native realizado pela Vizir Software Studio (http://www.vizir.com.br) para Natura.
OVERVIEW
Desenvolvimento nativo
Desenvolvimento híbrido
Frameworks disponíveis
Ionic
NativeScript
Xamarin
React Native
REACT & REACT NATIVE
Componentes
React Components
Lifecycle
Tudo pode ser Javascript
JSX
CSS em JSON
Virtual DOM
Benefícios
Futuro
REACT NATIVE
Componentes & APIs
Comunidade
Utilizando bibliotecas nativas
Comportamentos específicos de cada plataforma
Ferramentas
Code Push
RNPM
BOAS PRÁTICAS
Fluxo de dados da aplicação
Testando seus componentes
Como estruturamos as aplicações
GITHUB SAMPLE APP
https://github.com/Vizir/ReactNativeWorkshop
Introduction to VueJS & The WordPress REST APICaldera Labs
Slides from Josh Pollock's WordCamp Miami 2017 talk. This is a basic introduction to using VueJS with the WordPress REST API.
For live code examples and more: https://learn.calderalabs.org/josh-wordcamp-miami-vuejs
Web App Security for Java Developers - UberConf 2021Matt Raible
Web app security is not just authentication and authorization. It's also the things you do to protect your web app from attackers with their XSS (cross-site scripting), SQL injection, DoS/DDoS attacks, and CSRF (cross-site request forgery), to name a few.
Web app security is a central component of any web-based business. The internet exposes web apps to attacks from different locations and various levels of scale and complexity. Web application security deals specifically with the security surrounding websites, web applications, and web services such as APIs.
In this presentation, you'll learn seven ways to better web app security, using Spring Security for code samples. You'll also see some quick demos of Spring Boot, Angular, and JHipster with Okta.
The Modern Java Web Developer - JavaOne 2013Matt Raible
HTML5, CSS3, JavaScript, jQuery, Angular JS, Bootstrap, Mobile, CoffeeScript, GitHub, functional programming, Page Speed, Apache, JSON with Jackson, caching, REST, Security, load testing, profiling, Wro4j, Heroku, Cloudbees, AWS. These are just some of the buzzwords that a Java web developer hears on a daily basis. This talk is designed to expose you to a plethora of technologies that you might've heard about, but haven't learned yet. We'll concentrate on the most important web developer skills, as well as UI tips and tricks to make you a better front-end engineer. Some of the most valuable engineers these days have front-end JS/CSS skills, as well as backend Java skills.
Comparing JVM Web Frameworks - Devoxx France 2013Matt Raible
A comparison on JVM Web Frameworks. Includes strategies for choosing and results from research by InfoQ and devrates.com. Also, lots of pretty graphs.
See blog post about this presentation at http://raibledesigns.com/rd/entry/devoxx_france_a_great_conference and video recording at http://raibledesigns.com/rd/entry/video_of_comparing_jvm_web
Java Web Application Security - Denver JUG 2013Matt Raible
During this presentation, you'll learn how to implement authentication in your Java web applications using good ol' Java EE 6 Security, Spring Security and Apache Shiro. You'll also learn how to secure your REST API with OAuth and lock it down with SSL.
After learning how to integrate security, I'll show how to use Zed Attack Proxy to pentest your app and fix vulnerabilities.
The Modern Java Web Developer - Denver JUG 2013Matt Raible
HTML5, CSS3, JavaScript, jQuery, Angular JS, Bootstrap, Mobile, CoffeeScript, GitHub, functional programming, Page Speed, Apache, JSON with Jackson, caching, REST, Security, load testing, profiling, Wro4j, Heroku, Cloudbees, AWS. These are just some of the buzzwords that a Java web developer hears on a daily basis. This talk is designed to expose you to a plethora of technologies that you might've heard about, but haven't learned yet. We'll concentrate on the most important web developer skills, as well as UI tips and tricks to make you a better front-end engineer. Some of the most valuable engineers these days have front-end JS/CSS skills, as well as backend Java skills.
Comparing JVM Web Frameworks - February 2014Matt Raible
My Comparing JVM Web Frameworks talk as presented at Denver's Open Source User Group (@dosug) and vJUG (@virtualjug). Covers the history of web frameworks as well as various methods for choosing one. Video on YouTube at https://www.youtube.com/watch?v=ygW8fJVlDxQ.
Get Hip with JHipster - Denver JUG 2015Matt Raible
My presentation as delivered at the Denver Java User Group on April 8, 2015.
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project for you and allow you to use Java 7 or 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Grunt or Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry, Heroku and Openshift.
Java Web Application Security with Java EE, Spring Security and Apache Shiro ...Matt Raible
This presentation shows you how to implement authentication in your Java web applications using Java EE 7 Security, Spring Security and Apache Shiro. It also touches on best practices for securing a REST API and using SSL.
The Art of Angular in 2016 - Devoxx UK 2016Matt Raible
Angular is one of today's hottest JavaScript MVC Frameworks. In this session, we explore its next version: Angular 2. You'll see how to build and test Angular 2 components with TypeScript, as well as how to develop forms with validation. Finally, you'll learn about related Angular 2 projects and be on your way to becoming an Angular 2 Artist!
Get Hip with JHipster: Spring Boot + AngularJS + Bootstrap - Devoxx France 2016Matt Raible
Building a modern web (or mobile) application requires a lot of tools, frameworks and techniques. This session shows how JHipster unites popular frameworks like AngularJS, Spring Boot and Bootstrap. Using Yeoman, a scaffolding tool for modern webapps, JHipster will generate a project that uses Java 8, SQL or NoSQL databases, Spring profiles, Maven or Gradle, Gulp.js, WebSockets and BrowserSync. It also supports a number of different authentication mechanisms: classic session-based auth, OAuth 2.0, or token-based authentication. For cloud deployments, JHipster includes out-of-the-box support for Cloud Foundry and Heroku.
Apache Camel Introduction & What's in the boxClaus Ibsen
Slides from JavaBin talk in Grimstad Norway, presented by Claus Ibsen in February 2016.
This slide deck is full up to date with latest Apache Camel 2.16.2 release and includes additional slides to present many of the features that Apache Camel provides out of the box.
HTML5 with Play Scala, CoffeeScript and Jade - Devoxx 2011Matt Raible
HTML5 Development with Play Scala, CoffeeScript and Jade Presentation from Devoxx 2011. Discusses these technologies, as well as my story of using them to develop an HTML5 Fitness Tracking application.
http://www.devoxx.com/display/DV11/HTML5+with+Play+Scala%2C+CoffeeScript+and+Jade
AngularJS is one of today's hottest JavaScript MVC Frameworks. In this session, we'll explore many concepts it brings to the world of client-side development: dependency injection, directives, filters, routing and two-way data binding. We'll also look at its recommended testing tools and build systems. Finally, you'll learn about my experience developing several real-world applications using AngularJS, HTML5 and Bootstrap.
Overview of JMS messaging API.
JMS (Java Messaging Service) is an API for asynchronous message based communication between Java based applications.
JMS implementations (instances that implement the JMS API) are called JMS providers.
JMS defines two messaging domains. Point-to-point queues are typically used between one or multiple message senders and a single message receiver.
Topics are multi-point queues where messages are distributed to multiple receivers. As such topics resemble a black board.
Like many other message oriented middleware technologies, JMS provides advanced functions like persistent message delivery mode or different message acknowledgment modes.
Additionally, messages can be sent and received in a transacted mode thus ensuring that either all or no messages are sent and received.
JMS integrates into EJB (Enterprise Java Beans) through message driven beans.
DEVBCN_Jakarta EE! The future of enterprise application behind the myths.
_Al...Alberto Salazar
Jakarta EE! The future of enterprise application behind the myths.
Most enterprises continue running their Application in a JEE Server. We realize that there are among of code that is not evolving. Throughout this talk, we are showing you by example some real-world experiences of moving forward Applications running JEE 5 & 7 to Jakarta EE 10. At the end of this session, you are going to understand the pitfalls and put away the concerns of updating and evolving your enterprise applications.
Yeoman AngularJS and D3 - A solid stack for web appsclimboid
This was a course given in Bangalore India for JSChannel conf 2013. It encompases the use of angular js and d3 in a harmonious way and gives an overview over each of the frameworks / libraries.
Front End Development for Back End Java Developers - Jfokus 2020Matt Raible
Are you a backend Java developer that's being pushed into front-end development? Are you frustrated with all the JavaScript frameworks and build tools you have to learn to be a good UI developer? If so, this session is for you! We'll explore the landscape of UI development, including web standards, frameworks, and what’s on the horizon (e.g., micro frontends).
The Ultimate Getting Started with Angular Workshop - Devoxx France 2017Matt Raible
These slides are from a workshop I did at Devoxx France 2017. I showed how to set up an Angular development environment from scratch, develop a simple app, test it, integrating CSS frameworks (Angular Material and Bootstrap 4), secure it with OpenID Connect, and deploy it to the cloud.
Source code and tutorial: https://github.com/mraible/ng-demo
Web is the New Mobile: Building Progressive Web Apps - Erica Stanley - Codemo...Codemotion
Progressive web apps combine the best of the web with the best of native mobile apps. These apps create increasingly more informed experiences, the more the user interacts with the app, without the need to download a native app. Progressive web apps include features like app store free installation, connectivity independent experiences, push notifications, background synching, additional security and performance gains. In this session we’ll dive into the technologies behind these next-gen web features and learn how they’re driving the evolution of the web.
From Idea to App (or “How we roll at Small Town Heroes”)Bramus Van Damme
Guestlecture I gave to the students ICT at Odisee, explaining the app development process, how we do certain things at Small Town Heroes, and how we implement QA throughout our process.
Swagger Code Generation: Cuando front encontró a back con Luis Ruiz Pavón - Software Development Engineer en Plain Concepts y MVP en Asp.Net y Carlos Bastos - Software Development Engineer en Plain Concepts
Gestire la qualità del codice con Visual Studio, SonarQube ed Azure DevopsGian Maria Ricci
Come tenere sotto controllo la qualità del proprio codice tramite gli analizzatori di Sonar Qube sia dentro visual studio, sia tramite analisi automatiche del codice fatte tramite Azure DevOps Pipeoine
Front End Development for Back End Developers - Devoxx UK 2017Matt Raible
Are you a backend developer that’s being pushed into front end development? Are you frustrated with all JavaScript frameworks and build tools you have to learn to be a good UI developer? If so, this session is for you! We’ll explore the tools of the trade for fronted development (npm, yarn, Gulp, Webpack, Yeoman) and learn the basics of HTML, CSS, and JavaScript. We’ll dive into the intricacies of Bootstrap, Material Design, ES6, and TypeScript. Finally, after getting you up to speed with all this new tech, we’ll show how it can all be found and integrated through the fine and dandy JHipster project.
Choose Your Own Adventure with JHipster & Kubernetes - Denver JUG 2020Matt Raible
Remember the choose your own adventure books that you used to read as a kid? This session is a reincarnation of a choose your own adventure book as a conference talk!
You'll learn about Spring Boot, Docker, and Kubernetes in this talk, along with the choices you make in the following areas:
* What kind of application architecture to build? Monolith or microservices?
* Would you like to use Java or Kotlin?
* MySQL, PostgreSQL, or MongoDB?
* Spring MVC or Spring WebFlux?
* Angular, React, or Vue.js?
* PWA or mobile app?
* Istio with Kubernetes or Kubernetes without Istio?
GitHub repos of demos:
* Monolith: https://github.com/mraible/healthy-hipster
* Microservices: https://github.com/mraible/djug-microservices
J2EE Getting started What is involved to be a J2EE Developer,
This presentation gives an overview of Technologies and Arch in General.
And shows where Spring,Struts,Hibernate,Webservices,MVC fit
Similar to The Modern Java Web Developer Bootcamp - Devoxx 2013 (20)
Keep Identities in Sync the SCIMple Way - ApacheCon NA 2022Matt Raible
What if keeping your user stores in sync across domains was as simple as running "java -jar"? With Apache SCIMPle, it is!
Apache SCIMple is a SCIM 2.0-compliant server powered by Spring Boot 3. You can run it standalone or embedded in your existing app. It exposes user management REST endpoints and handles the hassle of user synchronization for you. If your identity provider supports SCIM, use the simple way!
GitHub example: https://github.com/mraible/okta-scim-spring-boot-example
Demo script: https://github.com/mraible/okta-scim-spring-boot-example/blob/main/demo.adoc
Micro Frontends for Java Microservices - Belfast JUG 2022Matt Raible
You've figured out how to split up your backend services into microservices and scale your teams to the moon, right?
But what about the frontend? Are you still building monoliths for your UI?
If so, you might want to check out micro frontends—basically extensions to the microservices pattern, where the concept is extended to the frontend.
Find out how to package and deploy your microservices and their UIs in the same artifact, as well as make it possible to test and develop them independently.
In this live session, Matt will show you how to build a microservices and micro frontends architecture using Angular, Spring Boot, and Spring Cloud.
Related blog post: https://auth0.com/blog/micro-frontends-for-java-microservices
GitHub repo: https://github.com/oktadev/auth0-micro-frontends-jhipster-example
Micro Frontends for Java Microservices - Dublin JUG 2022Matt Raible
You've figured out how to split up your backend services into microservices and scale your teams to the moon, right?
But what about the frontend? Are you still building monoliths for your UI?
If so, you might want to check out micro frontends—basically extensions to the microservices pattern, where the concept is extended to the frontend.
Find out how to package and deploy your microservices and their UIs in the same artifact, as well as make it possible to test and develop them independently.
In this live session, Matt will show you how to build a microservices and micro frontends architecture using Angular, Spring Boot, and Spring Cloud.
YouTube: https://youtu.be/lKC55S-OxPQ
Related blog post: https://auth0.com/blog/micro-frontends-for-java-microservices
GitHub repo: https://github.com/oktadev/auth0-micro-frontends-jhipster-example
Micro Frontends for Java Microservices - Cork JUG 2022Matt Raible
You've figured out how to split up your backend services into microservices and scale your teams to the moon, right?
But what about the frontend? Are you still building monoliths for your UI?
If so, you might want to check out micro frontends—basically extensions to the microservices pattern, where the concept is extended to the frontend.
Find out how to package and deploy your microservices and their UIs in the same artifact, as well as make it possible to test and develop them independently.
In this live session, Matt will show you how to build a microservices and micro frontends architecture using Angular, Spring Boot, and Spring Cloud.
Related blog post: https://auth0.com/blog/micro-frontends-for-java-microservices
GitHub repo: https://github.com/oktadev/auth0-micro-frontends-jhipster-example
Comparing Native Java REST API Frameworks - Seattle JUG 2022Matt Raible
Use Spring Boot! No, use Micronaut!! Nooooo, Quarkus is the best!!! What about Helidon?
There are a lot of developers praising the hottest, and fastest, Java REST frameworks: Micronaut, Quarkus, Spring Boot, and Helidon. In this session, you'll learn how to do the following with each framework:
✅ Build a REST API
✅ Secure your API with OAuth 2.0
✅ Optimize for production with Docker and GraalVM
I'll also share some performance numbers and pretty graphs to compare community metrics.
Related blog post: https://developer.okta.com/blog/2021/06/18/native-java-framework-comparison
Helidon companion post: https://developer.okta.com/blog/2022/01/06/native-java-helidon
GitHub repo: https://github.com/oktadev/native-java-examples
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022Matt Raible
Microservice architectures are all the rage in JavaLand. They allow teams to develop services independently and deploy autonomously.
Why microservices?
IF
you are developing a large/complex application
AND
you need to deliver it rapidly, frequently, and reliably over a long period of time
THEN
the Microservice Architecture is often a good choice.
Reactive architectures are becoming increasingly popular for organizations that need to do more, with less hardware. Reactive programming allows you to build systems that are resilient to high load.
In this session, I'll show you how to use JHipster to create a reactive microservices architecture with Spring Boot, Spring Cloud, Keycloak, and run it all in Docker. You will leave with the know-how to create your own resilient apps!
Related blog post: https://developer.okta.com/blog/2021/01/20/reactive-java-microservices
YouTube demo: https://youtu.be/clkEUHWT9-M
GitHub repo: https://github.com/oktadev/java-microservices-examples/tree/main/reactive-jhipster
Comparing Native Java REST API Frameworks - Devoxx France 2022Matt Raible
Use Spring Boot! No, use Micronaut!! Nooooo, Quarkus is the best!!! What about Helidon?
There are a lot of developers praising the hottest, and fastest, Java REST frameworks: Micronaut, Quarkus, Spring Boot, and Helidon. In this session, you'll learn how to do the following with each framework:
✅ Build a REST API
✅ Secure your API with OAuth 2.0
✅ Optimize for production with Docker and GraalVM
I'll also share some performance numbers and pretty graphs to compare community metrics.
Related blog post: https://developer.okta.com/blog/2021/06/18/native-java-framework-comparison
Helidon companion post: https://developer.okta.com/blog/2022/01/06/native-java-helidon
GitHub repo: https://github.com/oktadev/native-java-examples
Lock That Sh*t Down! Auth Security Patterns for Apps, APIs, and Infra - Devne...Matt Raible
In this session, you'll learn about recommended patterns for securing your backend APIs, the infrastructure they run on, and your SPAs and mobile apps.
The world is no longer a place where you just need to secure your apps’ UI. You need to pay attention to your dependency pipeline and open-source frameworks, too. Once you have the app built, with secure-by-design code, what about the cloud it runs on? Are the servers secure? What about the accounts you use to access them?
If you lock all that sh*t down, how do you codify your solution so you can transport it cloud-to-cloud, or back to on-premises? This session will explore these concepts and many more!
Native Java with Spring Boot and JHipster - Garden State JUG 2021Matt Raible
Do you want to deploy your Spring Boot apps in a serverless environment and have them start up in milliseconds? Of course, you do!
In this talk, Josh Long and Matt Raible will introduce you to Spring Native. They'll teach you all about how it can compile Spring Boot apps into native binaries that start faster than a speeding bullet! You'll learn about native testing support with JUnit 5 and the pros and cons of native vs JVM deployments.
This talk will also highlight a customer, the JHipster project. JHipster generates Spring Boot-based monoliths and microservices. You'll learn about the project's experience with Spring Boot, Spring Cloud, Spring WebFlux, and Spring Native. It ain't easy being a Java Hipster, but the Spring ecosystem does simplify the process quite a bit.
Recording on YouTube: https://youtu.be/k6nBB8FOmQ8
Examples on GitHub: https://github.com/mraible/spring-native-examples
Writeup on LinkedIn: https://www.linkedin.com/pulse/jhipster-works-spring-native-part-2-matt-raible/
Java REST API Framework Comparison - PWX 2021Matt Raible
Use Spring Boot! No, use Micronaut!! Nooooo, Quarkus is the best!!!
There's a lot of developers praising the hottest, and fastest, Java REST frameworks: Micronaut, Quarkus, and Spring Boot. In this session, you'll learn how to do the following with each framework:
✅ Build a REST API
✅ Secure your API with OAuth 2.0
✅ Optimize for production with Docker and GraalVM
I'll also share some performance numbers and pretty graphs to compare community metrics.
Related blog post: https://developer.okta.com/blog/2021/06/18/native-java-framework-comparison
Web App Security for Java Developers - PWX 2021Matt Raible
Web app security is not just authentication and authorization. It's also the things you do to protect your web app from attackers with their XSS (cross-site scripting), SQL injection, DoS/DDoS attacks, and CSRF (cross-site request forgery), to name a few.
Web app security is a central component of any web-based business. The internet exposes web apps to attacks from different locations and various levels of scale and complexity. Web application security deals specifically with the security surrounding websites, web applications, and web services such as APIs.
In this presentation, you'll learn seven ways to better web app security, using Spring Security for code samples. You'll also see some quick demos of Spring Boot, Angular, and JHipster with Keycloak, Auth0, and Okta.
Mobile App Development with Ionic, React Native, and JHipster - Connect.Tech ...Matt Raible
Mobile development offers a lot of options. To develop native apps, you can use Java or Kotlin on Android. On iOS, you can use Objective C or Swift. There are other options, too. You can build hybrid mobile apps and Progressive Web Apps (PWAs). Hybrid mobile apps are those created with web technologies (HTML, JavaScript, and CSS) that look like native apps. PWAs have the ability to work offline and act like mobile apps.
In this talk, we'll explore a few different mobile technologies: PWAs, React Native, and Ionic (with Angular). You'll walk away with knowledge of how to build mobile + Spring Boot apps in minutes with JHipster.
* GitHub repo: https://github.com/mraible/mobile-jhipster
* Demo script: https://github.com/mraible/mobile-jhipster/blob/main/demo.adoc
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Joker...Matt Raible
In this session, you'll learn about recommended patterns for securing your backend APIs, the infrastructure they run on, and your SPAs and mobile apps.
The world is no longer a place where you just need to secure your apps’ UI. You need to pay attention to your dependency pipeline and open-source frameworks, too. Once you have the app built, with secure-by-design code, what about the cloud it runs on? Are the servers secure? What about the accounts you use to access them?
If you lock all that sh*t down, how do you codify your solution so you can transport it cloud-to-cloud, or back to on-premises? This session will explore these concepts and many more!
Delivered at JokerConf on October 28, 2021 at 11am MDT: https://jokerconf.com/en/talks/lock-that-sh*t-down-auth-security-patterns-for-apps-apis-and-infra/
Java REST API Framework Comparison - UberConf 2021Matt Raible
Use Spring Boot! No, use Micronaut!! Nooooo, Quarkus is the best!!!
There's a lot of developers praising the hottest, and fastest, Java REST frameworks: Micronaut, Quarkus, and Spring Boot. In this session, you'll learn how to do the following with each framework:
✅ Build a REST API
✅ Secure your API with OAuth 2.0
✅ Optimize for production with Docker and GraalVM
I'll also share some performance numbers and pretty graphs to compare community metrics.
Related blog post: https://developer.okta.com/blog/2021/06/18/native-java-framework-comparison
Native Java with Spring Boot and JHipster - SF JUG 2021Matt Raible
Do you want to deploy your Spring Boot apps in a serverless environment and have them start up in milliseconds? Of course, you do!
In this talk, Josh Long and Matt Raible will introduce you to Spring Native. They'll teach you all about how it can compile Spring Boot apps into native binaries that start faster than a speeding bullet! You'll learn about native testing support with JUnit 5 and the pros and cons of native vs JVM deployments.
This talk will also highlight a customer, the JHipster project. JHipster generates Spring Boot-based monoliths and microservices. You'll learn about the project's experience with Spring Boot, Spring Cloud, Spring WebFlux, and Spring Native. It ain't easy being a Java Hipster, but the Spring ecosystem does simplify the process quite a bit.
Recording on YouTube: https://youtu.be/F9oydL_MndA
Examples on GitHub: https://github.com/mraible/spring-native-examples
Writeup on LinkedIn: https://www.linkedin.com/pulse/jhipster-works-spring-native-matt-raible/
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...Matt Raible
In this session, you'll learn about recommended patterns for securing your backend APIs, the infrastructure they run on, and your SPAs and mobile apps.
The world is no longer a place where you just need to secure your apps’ UI. You need to pay attention to your dependency pipeline and open source frameworks, too. Once you have the app built, with secure-by-design code, what about the cloud it runs on? Are the servers secure? What about the accounts you use to access them?
If you lock all that sh*t down, how do you codify your solution so you can transport it cloud-to-cloud, or back to on-premises? This session will explore these concepts and many more!
Reactive Java Microservices with Spring Boot and JHipster - Denver JUG 2021Matt Raible
Microservice architectures are all the rage in JavaLand. They allow teams to develop services independently and deploy autonomously.
Why microservices?
IF
you are developing a large/complex application
AND
you need to deliver it rapidly, frequently, and reliably over a long period of time
THEN
the Microservice Architecture is often a good choice
Reactive architectures are becoming increasingly popular for organizations that need to do more, with less hardware. Reactive programming allows you to build systems that are resilient to high loads.
In this session, I'll show you how to use JHipster to create a reactive microservices architecture with Spring Boot, Spring Cloud, Keycloak, and run it all in Docker. You will leave with the know-how to create your own resilient apps!
Related blog post: https://developer.okta.com/blog/2021/01/20/reactive-java-microservices
YouTube demo: https://youtu.be/clkEUHWT9-M
YouTube recording: https://youtu.be/8OuZMFyh0xE
GitHub repo: https://github.com/oktadev/java-microservices-examples/tree/main/reactive-jhipster
Get Hip with JHipster - Colorado Springs Open Source User Group 2021Matt Raible
JHipster is bad-ass. It's an Apache-licensed open source project that allows you to generate Spring Boot APIs and Angular (or React/Vue) apps. It has a vibrant community and ecosystem with support for deploying to many cloud providers and using the latest DevOps buzzwords, like Docker and K8s.
This session will show you JHipster, why it's cool, and show you how to create an app with it.
JHipster 7 Demo: https://www.youtube.com/watch?v=6lf64CctDAQ
JHipster 7 Tutorial: https://github.com/mraible/jhipster7-demo#readme
JHipster and Okta - JHipster Virtual Meetup December 2020Matt Raible
YouTube video: https://www.youtube.com/watch?v=ym-OPn4e_nQ
When I first started working at Okta, I refactored JHipster's OAuth support to move from authentication on the client to the server, leveraging Spring Security. This allowed for easier client integration since we didn't need to worry about finding an OIDC client for each frontend framework.
Fast forward four years and JHipster's OAuth 2.0 and OIDC support is first-class! It uses Keycloak in a Docker container by default, but it's easy to switch to another identity provider (IdP) thanks to Spring Boot. Other blueprints like Micronaut, Quarkus, Node.js, and .NET support OAuth and OIDC too!
This presentation explains what OAuth 2.0 and OIDC is, gives an overview of JHipster’s OAuth implementation, and provides three quick demos with Keycloak, the Okta CLI, and Heroku.
See https://developer.okta.com/blog/tags/jhipster for Okta + JHipster tutorials and screencasts! 邏
You also might enjoy my What the Heck is OAuth? blog post:
https://developer.okta.com/blog/2017/06/21/what-the-heck-is-oauth
Java REST API Comparison: Micronaut, Quarkus, and Spring Boot - jconf.dev 2020Matt Raible
"Use Spring Boot! No, use Micronaut!! Nooooo, Quarkus is the best!!!"
There's a lot of developers praising the hottest, and fastest, Java REST frameworks: Micronaut, Quarkus, and Spring Boot. In this session, you'll learn how to do the following with each framework:
✅ Build a REST API
✅ Secure your API with OAuth 2.0
✅ Optimize for production with Docker and GraalVM
I'll also share some performance numbers and pretty graphs to compare community metrics.
Related blog post: https://developer.okta.com/blog/2020/01/09/java-rest-api-showdown
GitHub repo: https://github.com/oktadeveloper/okta-java-rest-api-comparison-example
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Generating a custom Ruby SDK for your web service or Rails API using Smithy
The Modern Java Web Developer Bootcamp - Devoxx 2013
1. The Modern Java Web Developer Bootcamp
Matt Raible • http://raibledesigns.com
Photos by The Amazing Trish McGinity
2. Who is Matt Raible?
Founder of AppFuse
Father, Skier, Cyclist
Web Framework Connoisseur
Bus Lover
Blogger on raibledesigns.com
3. How about You?
Have you developed a Struts 1
application? Used PHP?
Have you every written CSS from
scratch?
Why do you hate JavaScript?
What’s your favorite JavaScript
framework?
What do you want to learn from this talk?
#DV13
@mraible
4. Topic Inspiration
Inspired by Ben Evan’s and Martijn Verburg’s The Well-Grounded
Java Developer
Developing with Java 7
Vital techniques
Polyglot programming on the JVM
Crafting the polyglot project
#DV13
@mraible
7. The Modern JVM Web Developer
Starts with Fast Hardware
Uses IntelliJ IDEA
Leverages HTML5, JavaScript, and CSS3
Creates High Performance Web Sites
For Mobile Devices, in the Cloud
And cares about Security
#DV13
@mraible
11. Java 7 and 8
Strings in switch statements
Diamond Syntax
Try with resources
Improved exception handling with multi-catch
NIO.2: Path, Files and Asynchronous I/O
Path path = FileSystems.getDefault().getPath(logs, access.log); !
BufferReader reader = Files.newBufferedReader(path, StandardCharsets.UTF_8);
#DV13
@mraible
12. Java 7 and 8
Parallel Collections
JSR 310 Date and Time API
Functional Interfaces with default method
Lambda Expressions (a.k.a. Closures)
!
// sort a list by lastName !
List<Person> persons = ...; !
persons.sort((p1, p2) -> !
p1.getLastName().compareTo(p2.getLastName()));
Nashorn JavaScript Engine
#DV13
@mraible
14. The Modern JVM Web Developer is aware of...
%s/Hibernate/Spring Data
Servlet 3
@WebServlet, @WebFilter, @WebListener
Asynchronous Servlets
WebApplicationInitializer (to eliminate web.xml)
REST and Functional Programming
#DV13
@mraible
15. Reactive Applications
“Users expect millisecond response times and 100% uptime. Data
needs are expanding into the petabytes.”
The Reactive Manifesto
#DV13
@mraible
18. Scala
Venkat Subramaniam
“Scala is like the dragon in Avatar. It will try to kill you, but if you master
it, you can fly great distances with it and have a wonderful time.”
#DV13
@mraible
19. Scala Basics
def starts a method
variables are started with var or val
variables are defined with name:type
semicolons are not required
20. Scala vs. Java
public class Car { !
private final int year; !
private int miles; !
!
public int getYear() { return year; } !
public int getMiles() { return miles; } !
public void setMiles(int theMiles) { miles = theMiles; } !
!
public Car(int theYear, int theMiles) { !
year = theYear; !
miles = theMiles; !
} !
}
#dv13javaweb$
#DV13
@mraible
21. Scala vs. Java
class Car(val year: Int, var miles: Int)
#dv13javaweb$
#DV13
@mraible
26. Groovy and Scala at Devoxx
Sessions
3
3
2.25
2
1.5
0.75
0
#DV13
Scala
Groovy
@mraible
27. Learning Scala
Scala for the Impatient - Cay Horstmann
Programming in Scala, 2nd Edition - Martin Odersky, Lex Spoon, and
Bill Venners
Functional Programming Principles in Scala
September 16th 2013 (7 weeks long)
Signup at https://www.coursera.org/course/progfun
#DV13
@mraible
28. The Java Language
“Java remains – in spite of the fragmented programming language
landscape – a viable, growing language.”
http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/
#dv13javaweb$
#DV13
@mraible
29. and ... it’s still the most popular!
#dv13javaweb$
#DV13
@mraible
44. HTTP Methods
1.0 defined GET, POST and HEAD
1.1 defined added OPTIONS, PUT, DELETE, TRACE and CONNECT
Safe methods: HEAD, GET, OPTIONS and TRACE
Idempotent: PUT and DELETE
Insecure: TRACE, TRACK and DEBUG
#DV13
@mraible
45. SPDY and HTTP 2.0
Allows client and server to compress request and response headers
Allows multiple, simultaneously multiplexed requests over a single
connection
Allows the server to actively push resources to the client that it knows
the client will need
The initial draft of HTTP 2.0 is based on a straight copy of SPDY
#DV13
@mraible
46.
47.
48. Browser Tools
Firebug for FireFox
Chrome Developer Tools
Elements & Console
Settings
PageSpeed Insights
http://www.igvita.com/slides/2012/devtools-tips-and-tricks
#DV13
@mraible
55. HTML5 Storage
Web Storage APIs: localStorage / sessionStorage
Web SQL Database
IndexedDB
Application Cache
File* APIs
#DV13
@mraible
56. window.localStorage
Simple key / value store
Persistent through page reloads
Great for storing user preferences
Avoids HTTP overhead of cookies
<script>
localStorage.setItem('key', value);
localStorage.getItem('key');
</script>
#DV13
@mraible
57. window.sessionStorage
Same as localStorage
Lasts for browser session
New window / tab starts new session
Great for sensitive data (e.g. banking)
Excellent use case: auto-save <textarea>
#DV13
@mraible
58. Other Storage APIs
Web SQL Database
IndexedDB
Not supported by IE9, iOS or Safari
Application Cache
File APIs
#DV13
@mraible
71. AngularJS
A JavaScript MVW Framework
From Google, MIT Licensed
Data-binding, Controllers, Dependency Injection
Localization, Components, Testable
Angular-seed for Scaffolding
Great Documentation and Community
#DV13
@mraible
73. Choosing a JavaScript MVC Framework
Simplified by one man: Addy Osmani
Journey Through The JavaScript MVC Jungle
Learning JavaScript Design Patterns
#DV13
@mraible
80. Bootstrap
Good-looking websites by default
Layouts, navs, pagination, buttons
Mobile First (aka Responsive Design)
Awesome jQuery Plugins / Components
#DV13
@mraible
81. Bootstrap 3 Deep Dive
http://static.raibledesigns.com/bootstrap3
#DV13
@mraible
82. High Performance Web Sites
1. Make Fewer HTTP Requests
2. Use a Content Delivery Network
3. Add Expires Headers
4. Gzip Components
5. Put Stylesheets at the Top
6. Put Scripts at the Bottom
7. Avoid CSS Expressions
#DV13
@mraible
83. High Performance Web Sites
8. Make JavaScript and CSS External
9. Reduce DNS Lookups
10. Minify JavaScript
11. Avoid Redirects
12. Remove Duplicates Scripts
13. Configure ETags
14. Make Ajax Cacheable
#DV13
@mraible
84.
85. My Page Speed Experience
Biggest Problem is HTTP Requests
Minify and Concatenate
GZipping has biggest score gain
Expires Headers for Browser Caching
Use Apache or Nginx
Image Sprites for CSS
http://spritecow.com is great
#DV13
@mraible
86. Wro4j
Open Source Java project for optimization of
web resources
Provides concatenation and minimization of
JS and CSS
Gzip, YUI Compressor, JsHint, JsHint,
CssLint, LESS, SASS, CoffeeScript, Dojo
Shrinksafe
87. WebJars and UrlRewrite Filter
WebJars: client-side web libraries packages in JARs
http://webjars.org
Servlet 3, Play 2, Grails, Dropwizard, Spring MVC, Tapestry and Wicket
UrlRewriteFilter: like Apache’s mod_rewrite
http://tuckey.org/urlrewrite
Clean URLs and just about everything else
Spring MVC’s <default-servlet-handler/> is your friend
#DV13
@mraible
88. Techniques
Versioning Static Assets with UrlRewriteFilter
http://raibledesigns.com/rd/entry/
versioning_static_assets_with_urlrewritefilter
Adding web resource fingerprinting to AppFuse
with wro4j
http://www.operatornew.com/2012/10/adding-webresource-fingerprinting-to.html
#DV13
@mraible
89. But what about nginx?
An open-source, high-performance HTTP server and reverse proxy, as
well as an IMAP/POP3 proxy server
Powers Netflix, Wordpress.com, GitHub and Heroku
http://kevinworthington.com/nginx-for-mac-os-x-mountain-lion-in-2minutes/
90. Apache Gzip and Expires Headers
mod_pagespeed - https://developers.google.com/speed/pagespeed/mod
Automatically applies web performance best practices w/o modification
Improving AppFuse’s PageSpeed with Apache
Configured mod_deflate, mod_expires and turned on KeepAlive
PageSpeed went from 24 to 96!
YSlow went from 90 to 98
#DV13
@mraible
91. Page Speed Deep Dive
http://vimeo.com/mraible/page-speed-demo
99. Application Architecture
Server to Client
Performance implications
Twitter
Airbnb
Charm
Ajaxified Body with pjax
https://github.com/defunkt/jquery-pjax
100. Mobile Devices
If developing a mobile app with web
technologies
Use PhoneGap or Sencha Touch
Otherwise, add a viewport meta tag
<meta name=viewport content=width=devicewidth, initial-scale=1.0>
#DV13
@mraible
101. Mobile Devices - CSS3 Media Queries
/* Smartphones (portrait and landscape) ----------*/ !
@media only screen and (min-device-width: 320px) and
(max-device-width: 854px) { !
/* Smartphone rules */!
} !
!
/* iPad (portrait and landscape) ----------- */ !
@media only screen and (min-device-width: 768px) and
(max-device-width: 1024px) { !
/* Tablet rules */!
}
#DV13
@mraible
102. Mobile Devices - Hide Address Bar
<script type=text/javascript> !
// Hide address bar for smartphones !
/Mobile/.test(navigator.userAgent) && !location.hash !
&& setTimeout(function () { !
if (!pageYOffset) window.scrollTo(0, 1); !
}, 1000); !
</script>!
#DV13
@mraible
104. FastClick
Polyfill to remove click delays on browsers with touch UIs
Mobile Safari on iOS 3+, Chrome on iOS 5+, Chrome on Android, Opera
Mobile 11.5+, Android Browser since Android 2, PlayBook OS 1+
https://github.com/ftlabs/fastclick
#dv13javaweb$
#DV13
@mraible
105. My Mobile App Experience
#dv13javaweb$
#DV13
@mraible
108. Lessons Learned
Develop Mobile Client first
Develop Web Client as a one-page app
Don’t rely on the internet for mobile
Keep static assets local for faster startup
Bleeding edge can be painful
#DV13
@mraible
114. Security Matters
Be aware of SQL and Content Injection
Disable Cross-Site Scripting (XSS)
Don’t give too much information in error pages and exceptions
Stop unvalidated redirects and forwards
Always use https if your application has private data
Understand what browsers have to deal with
#DV13
@mraible
115. OWASP
The Open Web Application Security Project (OWASP) is a worldwide
not-for-profit charitable organization focused on improving the security
of software.
At OWASP you’ll find free and open ...
Application security tools, complete books, standard security controls
and libraries, cutting edge research
http://www.owasp.org
#DV13
@mraible
116. OWASP Top 10
1. Injection Flaws
6. Sensitive Data Exposure
2. Broken Authentication
7. Missing Access Controls
3. XSS
8. CSRF
4. Direct Object Reference
9. Using Components with
Vulnerabilities
5. Security Misconfiguration
10.Unvalidated Redirects
https://www.owasp.org/index.php/Top_10_2013-Top_10
#DV13
@mraible
117. 7 Security (Mis)Configurations in web.xml
1. Error pages not configured
2. Authentication & Authorization Bypass
3. SSL Not Configured
4. Not Using the Secure Flag
#DV13
@mraible
118. 7 Security (Mis)Configurations in web.xml
5. Not Using the HttpOnly Flag
6. Using URL Parameters for Session
Tracking
7. Not Setting a Session Timeout
http://software-security.sans.org/blog/2010/08/11/
security-misconfigurations-java-webxml-files
#DV13
@mraible
122. Content Security Policy
An HTTP Header with whitelist of trusted content
Bans inline <script> tags, inline event handlers and javascript: URLs
No eval(), new Function(), setTimeout or setInterval
Supported in Chrome 16+, Safari 6+, and Firefox 4+, and (very) limited
in IE 10
#DV13
@mraible
123. The Modern JVM Web Developer
Starts with Fast Hardware
Uses IntelliJ IDEA
Leverages HTML5, JavaScript, and CSS3
Creates High Performance Web Sites
For Mobile Devices, in the Cloud
And cares about Security
#DV13
@mraible