How QCLean Works? Introduction to Browser ExtensionsQing-Cheng Li
* Introduction to QCLean and browser extensions.
* How to write a simple chrome extension and how QCLean removes suggested pages and posts on Facebook newsfeed.
* How to inject code and override DOM prototype on webpages.
Comparing JVM Web Frameworks - Rich Web Experience 2010Matt Raible
Comparing JVM Web Frameworks Presentation from The Rich Web Experience 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.
Google在2013開始導入Gradle工具作為新的Android build system,Gradle的使用正是實踐DevOps的良好利器,除了方便進行automated building外, Gradle更幫助我們消弭不同開發環境/工具間的差異問題,如同infarsture as code之於web application/service的重要性,build script as code就是幫助Android App快速發佈版本並維持品質穩定的關鍵最後一哩路。
此次主題將探討如何利用gradle進行精實良好的系統開發配置管理,建立一條下達開發者本地端上通產品發佈系統的透明化產品開發流水線。你是否常常一個App剛發佈不久,下一個idea已經生成,舊程式需要繼續維護同時又要添加新功能,你的開發方法是否能讓多方產品流水線順暢運行而且並行不悖?妥善利用Gradle並深入理解Build by convention的內涵是最好的選擇。
In this slide, I wanna share the experience that how to integrate mobile web in native app, not just call webview and loadurl, but also somethings can improve user experience.
"How to deploy to production 10 times a day" Андрей ШумадаFwdays
Все більше і більше команд переходять на короткий цикл розробки. Поговоримо про те, які переваги нам це дає, як далеко можна зайти в автоматизації викатування нових версій в продакшн так як при цьому забезпечити хорошу якість продукту.
How QCLean Works? Introduction to Browser ExtensionsQing-Cheng Li
* Introduction to QCLean and browser extensions.
* How to write a simple chrome extension and how QCLean removes suggested pages and posts on Facebook newsfeed.
* How to inject code and override DOM prototype on webpages.
Comparing JVM Web Frameworks - Rich Web Experience 2010Matt Raible
Comparing JVM Web Frameworks Presentation from The Rich Web Experience 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.
Google在2013開始導入Gradle工具作為新的Android build system,Gradle的使用正是實踐DevOps的良好利器,除了方便進行automated building外, Gradle更幫助我們消弭不同開發環境/工具間的差異問題,如同infarsture as code之於web application/service的重要性,build script as code就是幫助Android App快速發佈版本並維持品質穩定的關鍵最後一哩路。
此次主題將探討如何利用gradle進行精實良好的系統開發配置管理,建立一條下達開發者本地端上通產品發佈系統的透明化產品開發流水線。你是否常常一個App剛發佈不久,下一個idea已經生成,舊程式需要繼續維護同時又要添加新功能,你的開發方法是否能讓多方產品流水線順暢運行而且並行不悖?妥善利用Gradle並深入理解Build by convention的內涵是最好的選擇。
In this slide, I wanna share the experience that how to integrate mobile web in native app, not just call webview and loadurl, but also somethings can improve user experience.
"How to deploy to production 10 times a day" Андрей ШумадаFwdays
Все більше і більше команд переходять на короткий цикл розробки. Поговоримо про те, які переваги нам це дає, як далеко можна зайти в автоматизації викатування нових версій в продакшн так як при цьому забезпечити хорошу якість продукту.
Mobile Development with Ionic, React Native, and JHipster - AllTheTalks 2020Matt 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: Ionic 4 (with Angular), React Native, and PWAs. 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/master/demo.adoc
AppFuse is an open source project/application that uses best-of-breed Java open source tools to help you develop web applications quickly and efficiently. Not only does it provide documentation on how to develop light-weight POJO-based applications, it includes features that many applications need out-of-the-box: authentication and authorization, remember me, password hint, skinnability, file upload, Ajax libraries, signup and SSL switching. This is one of the main features in AppFuse that separates it from the other "CRUD Generation" frameworks like Ruby on Rails, Trails and Grails. AppFuse is already an application when you start using it, which means code examples are already in your project. Furthermore, because features already exist, the amount of boiler-plate code that most projects need will be eliminated.
In this session, you will learn Seven Simple Reasons to Use AppFuse. If you don't use it to start your own projects, hopefully you will see that it provides much of the boiler-plate code that can be used in Java-based web applications. Since it's Apache Licensed, you're more than welcome to copy/paste any code from it into your own applications.
Also see article published at:
http://www.ibm.com/developerworks/java/library/j-appfuse/index.html
Tips and criteria for selecting a web presentation framework. The focus is on Java-based frameworks, but the criteria are valid for any platform. From a panel discussion at the Seattle Java User Group (SeaJUG)
Front End Development for Backend Developers - GIDS 2019Matt 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 for frontend development and frameworks too!
Mobile Development with Ionic, React Native, and JHipster - ACGNJ Java Users ...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: Ionic 4 (with Angular), React Native, and PWAs. You'll walk away with knowledge of how to build mobile + Spring Boot apps in minutes with JHipster.
Demo Script: https://github.com/mraible/mobile-jhipster/blob/master/demo.adoc
How do I write Testable Javascript - Presented at dev.Objective() June 16, 2016Gavin Pickin
Everyone who wasn't writing JavaScript, probably is now. Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript.
That's great, but how do we test it? In ColdFusion we have CFCs, most languages have classes... but JavaScript doesn't have classes (yet).
So how do I write unit tests, what units are there, and how do I make my code look like that? JavaScript is a flexible language, and with great flexibility comes great complexity and responsibility. Take your JavaScript spaghetti and make it unit testable.
Attendees should have some exposure to JavaScript, but this is for the Professional Newbie... who always needs to learn and adapt.
For much of its existence, JavaScript has been slow. No one complained until developers created complex web applications with thousands of lines of JavaScript code. Although newer JavaScript engines have improved the situation, there’s still a lot to understand about what makes JavaScript slow and what you can do to speed up your code.
"Groovy Maven Builds" presentation from Gr8Conf, Copenhagen (May 19, 2011)
It shows how Maven builds become more dynamic when Groovy power and flexibility is applied.
Mobile Development with Ionic, React Native, and JHipster - AllTheTalks 2020Matt 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: Ionic 4 (with Angular), React Native, and PWAs. 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/master/demo.adoc
AppFuse is an open source project/application that uses best-of-breed Java open source tools to help you develop web applications quickly and efficiently. Not only does it provide documentation on how to develop light-weight POJO-based applications, it includes features that many applications need out-of-the-box: authentication and authorization, remember me, password hint, skinnability, file upload, Ajax libraries, signup and SSL switching. This is one of the main features in AppFuse that separates it from the other "CRUD Generation" frameworks like Ruby on Rails, Trails and Grails. AppFuse is already an application when you start using it, which means code examples are already in your project. Furthermore, because features already exist, the amount of boiler-plate code that most projects need will be eliminated.
In this session, you will learn Seven Simple Reasons to Use AppFuse. If you don't use it to start your own projects, hopefully you will see that it provides much of the boiler-plate code that can be used in Java-based web applications. Since it's Apache Licensed, you're more than welcome to copy/paste any code from it into your own applications.
Also see article published at:
http://www.ibm.com/developerworks/java/library/j-appfuse/index.html
Tips and criteria for selecting a web presentation framework. The focus is on Java-based frameworks, but the criteria are valid for any platform. From a panel discussion at the Seattle Java User Group (SeaJUG)
Front End Development for Backend Developers - GIDS 2019Matt 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 for frontend development and frameworks too!
Mobile Development with Ionic, React Native, and JHipster - ACGNJ Java Users ...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: Ionic 4 (with Angular), React Native, and PWAs. You'll walk away with knowledge of how to build mobile + Spring Boot apps in minutes with JHipster.
Demo Script: https://github.com/mraible/mobile-jhipster/blob/master/demo.adoc
How do I write Testable Javascript - Presented at dev.Objective() June 16, 2016Gavin Pickin
Everyone who wasn't writing JavaScript, probably is now. Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript.
That's great, but how do we test it? In ColdFusion we have CFCs, most languages have classes... but JavaScript doesn't have classes (yet).
So how do I write unit tests, what units are there, and how do I make my code look like that? JavaScript is a flexible language, and with great flexibility comes great complexity and responsibility. Take your JavaScript spaghetti and make it unit testable.
Attendees should have some exposure to JavaScript, but this is for the Professional Newbie... who always needs to learn and adapt.
For much of its existence, JavaScript has been slow. No one complained until developers created complex web applications with thousands of lines of JavaScript code. Although newer JavaScript engines have improved the situation, there’s still a lot to understand about what makes JavaScript slow and what you can do to speed up your code.
"Groovy Maven Builds" presentation from Gr8Conf, Copenhagen (May 19, 2011)
It shows how Maven builds become more dynamic when Groovy power and flexibility is applied.
Continuous delivery w projekcie open source - Marcin StachniukMarcinStachniuk
Opublikowałeś swój projekt jako Open Source i zastanawiasz się co dalej? Jaki jest twój następny krok? Podczas prezentacji przedstawię, w jaki sposób można zbudować darmowy pipeline continuous delivery dla twojego projektu. Praca wtedy stanie się od razu przyjemniejsza i będzie można zapomnieć o nudnych i powtarzalnych czynnościach. Dodatkowo podpowiem jak zadbać o swój projekt, aby wyglądał profesjonalnie.
Prezentacja na targi Kariera IT 2017 we Wrocławiu.
What Visual Studio Code can do for Java DevelopmentEd Burns
Visual Studio Code has come a long way to become the preferred text editor of polyglot developers thanks to the ecosystem of extensions that enhance and enrich the experience, turning it into a super smart editor with IDE-ish capabilities while remaining ludicrously fast and lightweight. Extensions for editing, running, debugging and deploying Java applications are well stable and supporting latest releases of several components, tools and frameworks, like JDKs, Maven, JUnit and Spring. Other extensions take the experience to the next level: remote development environments through SSH, local or remote Docker containers, or even through the Windows Subsystem for Linux. In this presentation, we will take a look at the core capabilities for Cloud Native Java development and how Java developers can take advantage of them to really focus on what matters most: Java code.
GeoServer is an amazing project, and an amazing project to work on!
Please attend this workshop to:
* Get Started with the GeoServer codebase
* Orientation with a Tour of the GeoServer architecture
* Introduction the service dispatch framework, includin creating your own service
* Built chain and test facilities
* Create a custom function for use with map styling
* Create a custom process for use with style transformations and web processing service
* Anatomy of a successful pull request
Attendees will build their own GeoServer, learn a bit about how our community operates, and enjoy extending the base application.
If you are a developer looking to support GeoServer, or join us for a sprint or bug-stomp, this workshop is great introduction.
This course features hands-on development. We encourage and expect you to bring your favourite Java development environment.
For a good time with open source join GeoServer today!
The Path Towards Spring Boot Native ApplicationsVMware Tanzu
SpringOne 2020
The Path Towards Spring Boot Native Applications
Sébastien Deleuze, Spring Framework Committer at VMware
Andy Clement, Director at VMware
Here is the blog: http://www.aurorasolutions.io/architecture-workflow-of-modern-web-apps/
In the IT industry the biggest problem we regularly face is the abundance of choice. We have tons of frameworks, languages, tools, platforms, etc. Although for competition purposes; multiple choices are ultimately very good but we usually find ourselves in paralysis when we have to choose among them for our next project.
People usually still consider that (frontend) of web applications are created by mixing together HTML, CSS & JavaScript without giving any thoughts about the frontend architecture, workflow and testing; but things have definitely changed now since last couple of years and in this presentation I try to explain that how JavaScript and it’s related stuff has become first class citizen and how the new workflow looks like. And I will also explain that how the architecture of modern web applications is migrating from thick server-side applications to smart clients and services on their journey North to pure Microservices.
Here is the list of different tools and frameworks that have been discussed in this presentation:
* Yeoman: (http://yeoman.io/) Yeoman is the web’s scaffolding tool for modern webapps. Yeoman helps you to kickstart new projects, prescribing best practices and tools to help you stay productive.
* Bower: (http://bower.io/) Bower is used for dependency management, so that you no longer have to manually download and manage your scripts. Web sites are made of lots of things — frameworks, libraries, assets, utilities, and rainbows. Bower manages all these things for you.
* Grunt: (http://gruntjs.com/) Grunt is a task-based command line build tool for JavaScript projects. When you work on large projects you have couple of things that you do regularly and you would like them to be automated; Grunt is the tool to solve that problem!
* HTML5 Boilerplate: (https://html5boilerplate.com/) HTML5 Boilerplate is a professional front-end template for building fast, robust, and adaptable web apps or sites.
* Twitter Bootstrap: (http://getbootstrap.com/2.3.2/) Sleek, intuitive, and powerful front-end framework for faster and easier web development.
* Jasmine: (https://github.com/jasmine/jasmine) Jasmine is a behavior-driven development framework for testing JavaScript code. It does not depend on any other JavaScript frameworks. It does not require a DOM. And it has a clean, obvious syntax so that you can easily write tests.
* Karma: (https://github.com/karma-runner/karma/) A simple tool that allows you to execute JavaScript code in multiple real browsers.
* PhantomJS: (https://github.com/ariya/phantomjs/) PhantomJS is a headless WebKit scriptable with JavaScript.
* Protractor: (https://github.com/angular/protractor) Protractor is an end-to-end test framework for AngularJS applications.
GraphQL - Piękne API w Twojej Aplikacji - KrakowGraphAcademyMarcinStachniuk
Wszyscy znamy i tworzymy API RESTowe. Jednak to podejście ma swoje wady i ograniczenia. Dlatego Facebook stworzył GraphQL jako alternatywę. W mojej prezentacji przedstawię problemy RESTa oraz jak je rozwiązuje GraphQL. Pokażę składnię, jak projektować takie API oraz zalety i wady.
Moje slajdy z prezentacji na GraphQL Wroclaw #3 https://www.meetup.com/GraphQL-Wroclaw/events/261828347/
Większość prezentacji dotyczących GraphQL opowiada o JavaSkryptowych narzędziach, natomiast mało kto mówi o tym jak korzystać z GraphQL w Javie. Prezentacja będzie o tym, jak sprawić aby nasz backendowy, Javowy serwer korzystał z GraphQL. Będzie o możliwych podejściach w implementacji, dobrych praktykach i 4-letnim doświadczeniu z GraphQL na produkcji.
[DevCrowd] GraphQL - gdy API RESTowe to za małoMarcinStachniuk
Slajdy z konferencji DevCrowd
Wszyscy znamy architekturę REST do definiowania API naszych aplikacji. Jednak REST ma swoje wady i ograniczenia. To dlatego Facebook stworzył GraphQL jako alternatywę. W mojej prezentacji przedstawię ograniczenia RESTa i jak je rozwiązuje GraphQL. Pokażę składnię, zalety jak i wady. Będzie też o tym jak zaimplementować GraphQL w Javie oraz co jeszcze warto o nim wiedzieć.
Slajdy z konferencji Confitura 2019.
Wszyscy znamy podejście REST do definiowania API naszych aplikacji. Jednak REST ma swoje wady i ograniczenia. To dla tego Facebook stworzył GraphQL jako alternatywę. W mojej prezentacji przedstawię ograniczenia RESTa i jak je rozwiązuje GraphQL. Pokażę składnię, zalety jak i wady. Będzie też jak zaimplementować GraphQL w Javie oraz co jeszcze warto o nim wiedzieć.
BruJUG Brussels GraphQL when RESR API is to less - lessons learnedMarcinStachniuk
We all know the REST architectural style to define a good API for your applications. However, REST has its disadvantages and constraints. That’s why Facebook developed GraphQL as an alternative.
In my talk, I will present you some REST constraints and how GraphQL solves them. I will talk about how we implemented GraphQL in our application and why.
Get to know our successes… and failures from the first row.
Do you know how Continuous Delivery of Java Open Source libraries looks? How big is your release overhead? Do you update release notes and include contributors manually? How do you handle versioning? Do you use semantic versioning?
During this workshop, you will learn how to set up Continuous Delivery for your library. You’ll never have to manually release new versions again. We will use the following tools: GitHub, TravisCI, Bintray, Maven Central. We will glue everything using Shipkit.org - a project born from Mockito (and still used there). You’ll additionally learn SerVer.
This workshop is mostly for Java open source and Gradle plugins developers. We will use a library prepared especially for this training, so no worries if you don’t have your own open source project (yet).
Prerequisites: GitHub account, Java & Gradle basics.
GraphQL - when REST API is to less - lessons learnedMarcinStachniuk
We all know the REST architectural style to define a good API for your applications. However, REST has its disadvantages and constraints. That’s why Facebook developed GraphQL as an alternative.
In my talk, I will present you some REST constraints and how GraphQL solves them. I will talk about how we implemented GraphQL in our application and why.
Get to know our successes… and failures from the first row.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
In this slide, we show the simulation example and the way to compile this solver.
In this solver, the Helmholtz equation can be solved by helmholtzFoam. Also, the Helmholtz equation with uniformly dispersed bubbles can be simulated by helmholtzBubbleFoam.
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Java Web Start czyli jak żyć z tą dziwną technologią? & Continuous Delivery w projekcie Open Source - Marcin Stachniuk JUG Łódź
1. Java Web Start czyli jak żyć z
tą dziwną technologią? &
Continuous Delivery w
projekcie Open Source
Marcin Stachniuk
@MarcinStachniuk
mstachniuk.blogspot.com
JUG Łódź 20.04.2017
2. O mnie
● Marcin Stachniuk
● Twitter: @MarcinStachniuk
● Blog: mstachniuk.blogspot.com
● WrocJUG
● Recenzent książki Practical Unit Testing
● Speker na konferencjach: 33rd degree 4
charity, dbconf.pl, warsjawa.pl,
devcrowd.pl, chamberconf.pl,
careercon.pl, itcareersummit.pl
● Mockito release tools team member
● Chorąży na ChamberConf
5. Agenda
● Introduction
● Build Pipeline
● Continuous Integration
● Continuous Delivery
● Code Quality
● Nice Badges
● Promotion in the Internet
● Alternatives
● Q&A
● Bonuses
● What is Java Web Start?
● How it works?
● What can go wrong?
● Solution
● How does IceBoar works?
● Benefits
● Q&A
6. Agenda
● Introduction
● Build Pipeline
● Continuous Integration
● Continuous Delivery
● Code Quality
● Nice Badges
● Promotion in the Internet
● Alternatives
● Q&A
● Bonuses
● What is Java Web Start?
● How it works?
● What can go wrong?
● Solution
● How does IceBoar works?
● Benefits
● Q&A
+
7. Agenda
● Introduction
● Build Pipeline
● Continuous Integration
● Continuous Delivery
● Code Quality
● Nice Badges
● Promotion in the Internet
● Alternatives
● Q&A
● Bonuses
+
● What is Java Web Start?
● How it works?
● What can go wrong?
● Solution
● How does IceBoar works?
● Benefits
● Q&A
8. Java Web Start – jak żyć z tą
dziwną technologią?
Marcin Stachniuk
21. What could possibly go wrong?
● Different Java versions installed on client machines
● Sometimes javaws wants download and install latest JRE
version
● Different behavior depending on Operating System and
installed JRE version
● From some point of time apps needs to signed (Self-signed
are blocked)
● Application started in sandbox (javaws or jp2launcher)
37. Profits
● We know a target JVM version
● Application start outside a sandbox (java instead of
javaws)
● We sign only IceBoar jar
● Users don’t need admin rights to install JRE
38. How to introduce IceBoar into a project?
<dependency>
<groupId>com.roche</groupId>
<artifactId>ice-boar</artifactId>
<version>${project.version}</version>
<classifier>jar-with-dependencies</classifier>
</dependency>
39. How to introduce IceBoar into a project?
<jnlp spec="1.0+" codebase="${codebase}">
<information>
....
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.5+" href="http://java.sun.com/products/autodl/j2se"/>
<jar href="${jre.and.jars.host}/${jars.path}/ice-boar-1.0-jar-with-dependencies.jar"/>
<property name="jnlp.IceBoar.close-on-end" value="false"/>
<property name="jnlp.IceBoar.main-class" value="com.roche.iceboar.helloworldswing.HelloWorld"/>
<property name="jnlp.IceBoar.jar.0"
value="${jre.and.jars.host}/${jars.path}/ice-boar-hello-world-swing-${version}-jar-with-dependencies.jar"/>
<property name="jnlp.IceBoar.splash" value="${jre.and.jars.host}/img/ice-boar-splash.png"/>
</resources>
<application-desc main-class="com.roche.iceboar.IceBoar">
</application-desc>
</jnlp>
41. Other features of IceBoar?
● Custom splash screen during loading
● No frame around splash screen
● Custom title and icon
● Starting application using pre-installed JRE
● Cache for downloaded JRE (for slow connections)
● Window with logs output
● Disable auto closing IceBoar window after starting target
application
61. Continuous Integration
https://travis-ci.org
● Free for Open Source Projects
● Easy setup with GitHub
● Container based architecture (Doker)
● Stateless
● Multi language support (ANDROID, C, C#, C++, CLOJURE,
CRYSTAL, D, DART, ERLANG, ELIXIR, F#, GO, GROOVY,
HASKELL, HAXE, JAVA, JAVASCRIPT (WITH NODE.JS), JULIA,
OBJECTIVE-C, PERL, PERL6, PHP, PYTHON, R, RUBY, RUST,
SCALA, SMALLTALK, VISUAL BASIC)
● For Java: Oracle JDK 7 (default), Oracle JDK 8, OpenJDK 6,
OpenJDK 7, Gradle 2.0, Maven 3.2 and Ant 1.8
● Notifications via: Slack, HipChat, Emails and more
62. How to set up Travis-CI
.travis.yml
language: java
script: mvn clean install
jdk:
- oraclejdk8
● Sign in to travis-ci.org using GitHub account
● Choose project (you need to have admin rights to this project)
● Add .travis.yml to your root project folder
71. Release artifact to Maven Central is not so easy
● Hard to sign in / create account (need to find link and create an issue)
● Manual verification of uploaded artifact
72. Release artifact to Maven Central is not so easy
Complicated Requirements:
● Supply Javadoc and Sources
● Sign Files with GPG/PGP
● Sufficient Metadata (pom file)
● Correct Coordinates (groupId, artifactId, version)
● Project Name, Description and URL
● License Information
● Developer Information
● SCM Information
73. Release artifact to bintray
● Sign in with GitHub
● Add new package to maven repository, configure it
● Deploy to bintray (from Travis-CI)
● You don’t need to sign your artifact
84. Current IceBoar Build in details
language: java
script: ./build-travis.sh
jdk:
- oraclejdk8
before_install:
- pip install --user codecov
after_success:
- codecov
cache:
directories:
- $HOME/.m2 // cache dir between builds
install: true // skip install script
.travis.yml
85. Current IceBoar Build in details
#!/bin/bash
set -ev
if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then
...
else
cd ice-boar
mvn clean install
cd ..
mvn clean install -U
fi
build-travis.sh
set -ev
-e fail fast
-v print all lines in
the script before
executing them
86. Current IceBoar Build in details
cd ice-boar
mvn clean deploy --settings settings.xml
cd ..
mvn clean install -U
cd ice-boar-samples/ice-boar-demo-gh-pages/
mvn clean install -P ghpages
git clone https://github.com/Roche/IceBoar
cd IceBoar
git checkout gh-pages &&
cp -R ../target/ice-boar-demo-gh-pages/* .
build-travis.sh Roche/IceBoar
ice-boar
ice-boar-samples
ice-boar-demo-gh-pages
ice-boar-demo
ice-boar-hello-world-swing
87. Current IceBoar Build in details
cd ice-boar
mvn clean deploy --settings settings.xml
cd ..
mvn clean install -U
cd ice-boar-samples/ice-boar-demo-gh-pages/
mvn clean install -P ghpages
git clone https://github.com/Roche/IceBoar
cd IceBoar
git checkout gh-pages &&
cp -R ../target/ice-boar-demo-gh-pages/* .
build-travis.sh Roche/IceBoar
ice-boar
ice-boar-samples
ice-boar-demo-gh-pages
ice-boar-demo
ice-boar-hello-world-swing
88. Current IceBoar Build in details
cd ice-boar
mvn clean deploy --settings settings.xml
cd ..
mvn clean install -U
cd ice-boar-samples/ice-boar-demo-gh-pages/
mvn clean install -P ghpages
git clone https://github.com/Roche/IceBoar
cd IceBoar
git checkout gh-pages &&
cp -R ../target/ice-boar-demo-gh-pages/* .
build-travis.sh Roche/IceBoar
ice-boar
ice-boar-samples
ice-boar-demo-gh-pages
ice-boar-demo
ice-boar-hello-world-swing
89. Current IceBoar Build in details
cd ice-boar
mvn clean deploy --settings settings.xml
cd ..
mvn clean install -U
cd ice-boar-samples/ice-boar-demo-gh-pages/
mvn clean install -P ghpages
git clone https://github.com/Roche/IceBoar
cd IceBoar
git checkout gh-pages &&
cp -R ../target/ice-boar-demo-gh-pages/* .
build-travis.sh Roche/IceBoar
ice-boar
ice-boar-samples
ice-boar-demo-gh-pages
ice-boar-demo
ice-boar-hello-world-swing
IceBoar
90. Current IceBoar Build in details
cd ice-boar
mvn clean deploy --settings settings.xml
cd ..
mvn clean install -U
cd ice-boar-samples/ice-boar-demo-gh-pages/
mvn clean install -P ghpages
git clone https://github.com/Roche/IceBoar
cd IceBoar
git checkout gh-pages &&
cp -R ../target/ice-boar-demo-gh-pages/* .
build-travis.sh Roche/IceBoar
ice-boar
ice-boar-samples
ice-boar-demo-gh-pages
ice-boar-demo
ice-boar-hello-world-swing
IceBoar
91. Current IceBoar Build in details
git config user.name "Marcin Stachniuk"
git config user.email mstachniuk@...com
git add -A
git commit -m "update gh-pages by Travis-CI"
git push ${GIT_HUB_REPO_SECRET}
build-travis.sh Roche/IceBoar
ice-boar
ice-boar-samples
ice-boar-demo-gh-pages
ice-boar-demo
ice-boar-hello-world-swing
IceBoar
97. What is important for promotion?
● Stack Overflow: stackoverflow.com/search?q=ice+boar
98. How to promote in the Internet?
● Blogposts
● Another forums, groups, etc.
● Hackergarten (1 Pull Request,1 commit, 2 contributors)
● Presentations at JUG’s and conferences
● Coding in train (1 Pull Request, 16 commits, 1 contributor)
106. Mockito Release Tools Vision
github.com/mockito/mockito-release-tools
● Easy setup
● Auto generation of release notes (notable and regular)
● Include contributors in pom.xml
● Auto update releases on GitHub
● CI create git tag, update release notes in repository, bump version
● Release artifacts only when binary was changed
● Million of users ;-)
108. Links
● https://puppet.com/blog/continuous-delivery-vs-continuous-deployment-what-s-diff Continuous Delivery Vs.
Continuous Deployment: What's the Diff?
● https://www.youtube.com/watch?v=Lda4RuQDQN0 Szczepan Faber about Continuous Delivery
● https://docs.oracle.com/javase/8/docs/ Java Platform Standard Edition 8 Documentation
● https://github.com/Roche/IceBoar IceBoar on GitHub
● https://github.com GitHub Source Code repository
● https://github.io GitHub Pages
● https://travis-ci.org Travis-CI Continuous Integration Server
● https://codecov.io Collect your code coverage
● https://bintray.com Popular repository for your artifacts (not only Jar files)
● https://oss.jfrog.org Repository for OSS snapshots
● https://search.maven.org The Maven Central
● https://docs.travis-ci.com/user/pull-requests#Security-Restrictions-when-testing-Pull-Requests Why sometimes
PR from fork fail on Travis-Ci
● http://central.sonatype.org/pages/requirements.html Requirements for release in to Maven Central
● https://issues.sonatype.org Create issue for new account on Maven Central
● https://www.youtube.com/watch?v=UMnZiTL0tUc Google Developers The Secret to Safe Continuous Deployment
● https://chrome.google.com/webstore/detail/codecov-extension Codecov extension (for Google Chrome)
● http://shields.io Nice badges generator
● https://roche.github.io/IceBoar Demo page for IceBoar
● http://stackoverflow.com/search?q=ice+boar IceBoar on Stack Overflow
109. Java Web Start czyli jak żyć z
tą dziwną technologią? &
Continuous Delivery w
projekcie Open Source
Marcin Stachniuk
@MarcinStachniuk
mstachniuk.blogspot.com
JUG Łódź 20.04.2017 Dziękuję!