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.
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.
This document provides an overview of Angular and highlights some key points about Matt Raible and his experience with Angular. It discusses Angular's speed, security features, and easy API. It also shows trends in Angular's popularity compared to other frameworks and provides code examples to demonstrate how to get started with Angular. The document encourages learning Angular and directs readers to additional resources like Matt's open source projects and presentations.
A talk that I gave at Texas JavaScript and Web Directions @Media on my current work into testing mobile JavaScript code.
This document provides an overview of options for implementing security in Java web applications, including Java EE, Spring Security, and Apache Shiro. It discusses developing secure applications, common vulnerabilities, and tools for testing security like OWASP Zed Attack Proxy. The document emphasizes that security should be built into applications from the start through following best practices and using security frameworks.
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.
The document introduces a session on web frameworks of the future that will discuss Flex, GWT, Rails and Grails. It provides background on the speaker, Matt Raible, who is a Java blogger and author with experience in various web frameworks. The session agenda outlines that it will discuss SOFEA and SOUI, introduce Rails, Grails, GWT and Flex, and help attendees choose between frameworks by focusing on eliminating rather than including options.
1. Common routing pitfalls in Ember.js include incorrectly using resources vs routes, not understanding the validation vs setup phase of routing, and assuming route nesting matches template nesting. 2. Other common mistakes include forgetting to use the property helper with computed properties, not passing actions correctly to components, and having invalid JSON that silently fails in Ember Data. 3. Debugging challenges include swallowed promise errors and not using the debugger, console.log, or Ember Inspector tools effectively. Understanding function scope, native array methods, and action bubbling in CoffeeScript can also trip developers up.
The document discusses lessons learned from examining popular jQuery plugins. It summarizes 30 top plugins, describing why each was created and how it grew. Key takeaways are that authors build plugins to make something better, for fun/exploration, or client needs. Managing features and user feedback is challenging. The best plugins have great demos, documentation, browser support testing, and are fun. The author is available for questions.
Many startups and open source projects have the luxury of starting greenfield projects. Unfortunately, the corporate world rarely works this way. It's more maintenance coding and a few new features every now and then. This session covers how you can use three of the hottest technologies (HTML5, CSS3 and Bootstrap) to spruce up a legacy application. It describes a real-world situation where a redesign was implemented in a few short weeks, making an old site look brand new. It also does a deep dive into Bootstrap, explains LESS, and shows pitfalls with older browsers. After this session, you'll be motivated to integrate Bootstrap into your applications and turn that legacy UI into something sexy! See blog post about this presentation at http://raibledesigns.com/rd/entry/my_bootstrap_presentation_from_html5.
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.
This talk covers the history of Spring, as well as what's new in Spring 3.1. Specific areas discussed: - Environments and Profiles - Servlet 3.0 Support - Hibernate 4 Support - Cache Abstraction - Java Configuration - Test Context Support for Configuration Classes and Profiles Read more about this presentation at: http://raibledesigns.com/rd/entry/my_what_s_new_in
Josh Long is a Spring Developer Advocate at Pivotal. He discusses various Spring and microservices related topics including: - The single responsibility principle and how it relates to microservices and Unix tools. - Exposing services simply using REST which has no strict rules but embraces HTTP verbs and status codes. - The Richardson Maturity Model for grading APIs on their REST compliance from Level 0 to Level 3. - Security topics like OAuth, SSL/TLS, and ensuring applications are production ready with monitoring and management.
During this presentation, I demonstrate how to implement authentication in your Java web applications using Spring Security, Apache Shiro and good ol' Java EE Container Managed Authentication. You'll also learn how to secure your REST API with OAuth and lock it down with SSL. After learning how to develop authentication, I'll introduce you to OWASP, the OWASP Top 10, its Testing Guide and its Code Review Guide. Much of this talk is contained in demos and I plan on uploading those as screencasts throughout May and June. I'll also be delivering this talk at ÜberConf in July 2011.
This document provides an overview and comparison of popular JavaScript MV* frameworks, including AngularJS, Knockout, Backbone, and Ember. It outlines the frameworks, compares their dependencies, data binding, routing, views, testing support, how to get data from servers, their communities and documentation, and third-party integration. Guidelines are provided that frameworks should fit tasks naturally and have low learning curves for development teams.
Comparing JVM Web Frameworks Presentation from Devoxx 2010. Compares many different JVM-based web frameworks, ranks them based on 20 different criteria and compares the Pros, Cons and other stats of the top 5.
This document discusses jQuery and web performance. It describes how the jQuery Foundation maintains jQuery code and supports developers. It then discusses recent jQuery releases and how jQuery can be customized and used in different environments. The document outlines how the browser loads pages and the importance of prefetching resources. It recommends tools for analyzing page performance like YSlow, PageSpeed, and webpagetest.org. It provides tips for improving performance such as avoiding unnecessary layouts, optimizing JavaScript loops, and using developer tools to profile scripts and identify bottlenecks.
This document summarizes Matt Raible's presentation on the future of web frameworks. It discusses how web frameworks have evolved from early technologies like CGI and PHP to modern frameworks like Ruby on Rails and Grails. It also explores emerging trends like HTML5, mobile development, APIs, and the growing importance of speed. Raible believes future frameworks will focus on performance, support plugins and mobile/desktop, and encourage innovation while building on past successes. The most important factors will be hiring smart developers and focusing on APIs and applications over meetings.
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!
This document contains information from a presentation on testing Angular applications. It discusses various testing strategies like unit testing, end-to-end testing, and continuous integration/deployment. It also covers tools like Angular CLI, TypeScript, setting up tests, mocking dependencies. Examples of unit testing Angular services and components are provided. Resources like style guides, books, and the presenter's contact details are listed at the end.
In this session, we show how to build microservices with Spring, deploy them to the cloud and expose their functionality with an progressive web application that can run offline. You’ll learn how to “build to fail” and create a quality, resilient application. Live coding will show how to use: Spring Boot, Spring Cloud, Spring Security, Cloud Foundry, IntelliJ IDEA, Angular 2, JWT, Stormpath, and Progressive Web Apps. Demo code: https://github.com/mraible/cloud-native-pwas
This document discusses building progressive web apps. It introduces Matt Raible and his background working with web frameworks like Spring Boot. It then covers the PRPL pattern for progressive web apps, which involves pushing critical resources, rendering, pre-caching remaining routes, and lazy-loading routes. It also discusses using tools like Lighthouse and Chrome DevTools for testing mobile performance. The rest covers a demo of creating a beer API and UI using Stormpath and deploying it to iOS, as well as resources for learning Ionic and staying in touch with Matt Raible.
JHipster is an application generator that allows you to create monoliths or microservices based on Spring Boot and Angular. It leverages Spring Cloud for microservices and contains best-of-breed JavaScript and CSS libraries for creating your UI. In this session, you’ll learn about what’s new in JHipster. Topics explored include Angular 2, Progressive Web Apps, HTTP/2, JUnit 5, and Spring 5.
Spring Boot and Spring Cloud are an ideal foundation for creating Microservices based on Java. This presentation explains basic concepts of these libraries.
This document outlines several Spring Cloud components: Hystrix for fault tolerance, Eureka for service discovery, Zuul for routing and filtering, Ribbon for load balancing, Feign for declarative REST clients, Spring Cloud Config for external configuration, and Spring Cloud Bus for distributed messaging between apps. It provides brief descriptions and configuration examples for each component.
In this session, we covered how to build microservices with Spring, deploy them to the cloud and expose their functionality with an progressive web application that can run offline. You’ll learn how to “build to fail” and create a quality, resilient application. Live coding will show how to use: Spring Boot, Spring Cloud, Spring Security, Cloud Foundry, IntelliJ IDEA, Angular 2, JWT, Stormpath, and Progressive Web Apps.
This document provides an overview of Angular including its key features, open source community, and tips for use. Angular offers features like dependency injection, MVC structure with modules, views, controllers and services, custom directives, testing utilities, and an active open source community. It recommends tools like Angular Material, UI Bootstrap, and UI Router. The document also provides links to documentation and resources on key Angular concepts and best practices like change detection, communication between components, and performance optimization.
Ausfälle im Betrieb kennt jeder – und dennoch ist man selten ausreichend darauf vorbereitet. Allerdings könnten viele dieser Ausfälle deutlich abgemildert oder gar gänzlich verhindert werden. Netflix hat das Problem erkannt und die Bibliothek Hystrix entwickelt, die Entwickler bei der Implementierung von Resilience Patterns wie „Fail Fast“ und „Graceful Degradation“ unterstützt. In einer Microservice-Architektur vergleichbar mit Netflix kann die Anzahl von abhängigen Services nochmal deutlich ansteigen und Hystrix in einem solchen Szenario seine Stärken ausspielen. Überraschungen kann es aber auch bei Hystrix geben. Um diesen entgegenzuwirken bietet dieser Talk Erfahrungen und Beispiele aus bereits angepassten Anwendungen für die Integration von Hystrix. Eine Demo mit den kleinen Diensten zeigt, wie kleine Ursachen große Ausfälle auslösen können. Mit Hystrix im Einsatz dagegen werden die Folgen durch automatische Behandlung der Fehler minimiert. Event: JAX 2016, 19.04.2016 Speaker: Gerrit Brehmer Mehr Tech-Voträge: https://www.inovex.de/de/content-pool/vortraege/
The best reason for writing tests is to automate your testing. Without tests, you'll likely be testing manually. This manual testing will take longer and longer as your codebase grows. In this session, you’ll learn how to test an Angular 2 application. You'll learn how to use Jasmine to unit test components and Protractor for integration testing. We’ll also take a look at code coverage options and explore continuous integration tools.
An edge gateway is an essential piece of infrastructure for large scale cloud based services. This presentation details the purpose, benefits and use cases for an edge gateway to provide security, traffic management and cloud cross region resiliency. How a gateway can be used to enhance continuous deployment, and help testing of new service versions and get service insights and more are discussed. Philosophical and architectural approaches to what belongs in a gateway vs what should be in services will be discussed. Real examples of how gateway services are used in front of nearly all of Netflix's consumer facing traffic will show how gateway infrastructure is used in real highly available, massive scale services.
Spring Boot and Spring Cloud provide an easier and more productive framework for building cloud-native microservices compared to Java EE. Spring Boot simplifies the development, deployment, and management of microservices. Spring Cloud adds helpful capabilities for service discovery, external configuration, load balancing, and monitoring that are missing from Java EE. While Java EE adoption is declining, the use of Spring Boot and Spring Cloud is growing rapidly among developers.
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.
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.
This slides were used at "5th Machine Learning 15minetes!" http://machine-learning15minutes.connpass.com/event/40294 Introduce important things to tackle machine learning in a company.
takusuta tech conf #1 で使用したスライドです。 Riot.jsを使ったweb開発に触れています。