This document discusses using GeoScript with Groovy. It provides an overview of GeoScript and Groovy, and describes how to install and use GeoScript Groovy for scripts, the shell, console, GeoServer, uDig, and applications. Inline scripts, command line tools, and larger multi-line scripts are demonstrated. The shell allows interactive exploration of geospatial concepts. GeoScript can also be used as a library in Gradle projects.
High-level introduction to the Heron Mapping Client (Heron MC).
Heron is an Open Source JavaScript framework for creating web mapping (client) apps for the browser. Heron builds on/wraps standard mapping libs like OpenLayers and GeoExt. The unique feature of Heron is that a complete app is created with just a (JSON) configuration. Heron has a minimal backend, relying mainly on OGC standards like WMS, WFS and the like.
This presentation was first given on behalf of the OpenGeoGroep at the OGG Customer Day on sept, 5, 2013 at Geofort, The Netherlands.
1. Why we moving API from REST to Graphql?
2. What is Graphql?
3. Graphql in Golang (Why we choose Golang)
4. How to testing Graphql in Golang
5. Deploy Graphql application
This talk I will show you the golang project layout and some best practice like as the following:
1. RESTful api and GraphQL
2. Model testing (Postgres, SQLite, MySQL)
3. Software Quality
4. Data Metrics
5. Go Testing
High-level introduction to the Heron Mapping Client (Heron MC).
Heron is an Open Source JavaScript framework for creating web mapping (client) apps for the browser. Heron builds on/wraps standard mapping libs like OpenLayers and GeoExt. The unique feature of Heron is that a complete app is created with just a (JSON) configuration. Heron has a minimal backend, relying mainly on OGC standards like WMS, WFS and the like.
This presentation was first given on behalf of the OpenGeoGroep at the OGG Customer Day on sept, 5, 2013 at Geofort, The Netherlands.
1. Why we moving API from REST to Graphql?
2. What is Graphql?
3. Graphql in Golang (Why we choose Golang)
4. How to testing Graphql in Golang
5. Deploy Graphql application
This talk I will show you the golang project layout and some best practice like as the following:
1. RESTful api and GraphQL
2. Model testing (Postgres, SQLite, MySQL)
3. Software Quality
4. Data Metrics
5. Go Testing
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...ZeroTurnaround
For you lazy coders out there, we offer the visual aids for the first 3 chapters of "Java Build Tools: Part 2 - A Decision Maker's Comparison of Maven, Gradle and Ant + Ivy". Here you can find the raw scores given to each tool based on 6 feature categories. **Download the full report to see Chapter 4, mapping the features against different user profiles**
Uma introdução ao uso de Sockets usando Golang, apresenta as formas de criar seus próprios Sockets e qual cenário poderia está aplicando Sockets.
Aborda como a arquitetura Rest funciona e qual seria o cenário para sua aplicabilidade comparada com Socket.
A apresentação é uma tentativa de apresentar os recursos e poder do Golang quando o assunto é REST e Socket.
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.
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...Luciano Mammino
Since we started to see JS on the server side, the dream of developers has been to reduce the gap and the cost of switch between frontend/backend technologies. Today with Node.js, React and a whole ecosystem of tools, this dream is becoming real! In this talk, I am going to discuss Universal (a.k.a. Isomorphic) JavaScript and present some practical example regarding the significant patterns related to routing, data retrieval and rendering. I will use Node, React, Webpack, Babel and React Router and give you a series of example to get you started easily with this new technology trend.
(interactive slides at http://slides.com/lucianomammino/universal-js-web-applications-with-react-codemotion-rome-2017 )
Gradle is the build system you have been waiting for or maybe the build system that has been waiting for you. The adoption rate is incredible from being the new Google Android development tools build system to most new Java opensource projects to JavaScript based front-end and back-end projects.
Grunt helps front-end web developers automate common tasks such as: linting, testing, sass compilation, watching assets. Check basic features of node.js, npm and Grunt.
Retour sur des conférences assistées durant DrupalCon 2016 à Dublin avec des sujets DevOps mais également Drupal 8 : docker, kubernetes, jenkins 2 pipeline, Lcache, configuration management, migrate, cache
Patrick Chanezon and Guillaume Laforge are presenting Google App Engine Java and Gaelyk, the lightweight groovy toolkit on top of the GAE SDK, at the Devoxx conference
[Image Results] Java Build Tools: Part 2 - A Decision Maker's Guide Compariso...ZeroTurnaround
For you lazy coders out there, we offer the visual aids for the first 3 chapters of "Java Build Tools: Part 2 - A Decision Maker's Comparison of Maven, Gradle and Ant + Ivy". Here you can find the raw scores given to each tool based on 6 feature categories. **Download the full report to see Chapter 4, mapping the features against different user profiles**
Uma introdução ao uso de Sockets usando Golang, apresenta as formas de criar seus próprios Sockets e qual cenário poderia está aplicando Sockets.
Aborda como a arquitetura Rest funciona e qual seria o cenário para sua aplicabilidade comparada com Socket.
A apresentação é uma tentativa de apresentar os recursos e poder do Golang quando o assunto é REST e Socket.
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.
Universal JS Web Applications with React - Luciano Mammino - Codemotion Rome ...Luciano Mammino
Since we started to see JS on the server side, the dream of developers has been to reduce the gap and the cost of switch between frontend/backend technologies. Today with Node.js, React and a whole ecosystem of tools, this dream is becoming real! In this talk, I am going to discuss Universal (a.k.a. Isomorphic) JavaScript and present some practical example regarding the significant patterns related to routing, data retrieval and rendering. I will use Node, React, Webpack, Babel and React Router and give you a series of example to get you started easily with this new technology trend.
(interactive slides at http://slides.com/lucianomammino/universal-js-web-applications-with-react-codemotion-rome-2017 )
Gradle is the build system you have been waiting for or maybe the build system that has been waiting for you. The adoption rate is incredible from being the new Google Android development tools build system to most new Java opensource projects to JavaScript based front-end and back-end projects.
Grunt helps front-end web developers automate common tasks such as: linting, testing, sass compilation, watching assets. Check basic features of node.js, npm and Grunt.
Retour sur des conférences assistées durant DrupalCon 2016 à Dublin avec des sujets DevOps mais également Drupal 8 : docker, kubernetes, jenkins 2 pipeline, Lcache, configuration management, migrate, cache
Patrick Chanezon and Guillaume Laforge are presenting Google App Engine Java and Gaelyk, the lightweight groovy toolkit on top of the GAE SDK, at the Devoxx conference
Of Nodes and Maps (Web Mapping with Drupal - Part II)Ranel Padon
Discusses the input, storage, and display mechanisms of spatial fields on nodes: how to utilize Geofield's input widgets and output formatters, how to integrate Geofield with Leaflet and OpenLayers, and how to integrate them with Views.
Brief introduction of Google App Engine and Play Framework.
Step-by-step instruction to develop and deploy play! web App on GAE with Siena persistence layer, CRUD management interface and login support.
Although Web and mobile apps are getting more capable every day, often your application makes the most sense on the desktop. In this talk, we’ll look at some recent technologies that have allowed significant desktop apps — like Barnes & Noble’s NOOK Study e-textbook reader, or Adobe’s Brackets IDE — to be written in HTML5 and JavaScript. Projects like the Chromium Embedded Framework, node-webkit, and AppJS provide an excellent native-to-JS bridge. With them in hand, you can bring the full power of the Node.js and front-end ecosystems to bear, while still gaining the advantages of running as a native app.
Ever wondered about the new Cloud offerings out there? What is a PaaS? What is this thing called OpenShift?
Whether your business is running on applications based on Java EE6, PHP or Ruby, the cloud is turning out to be the perfect environment for developing your business. There are plenty of clouds and platform-as-a-services to choose from, but where to start?
Join us for an action-packed hour of power where we'll show you how to deploy your existing application written in the language of your choice - Java, Ruby, PHP, Perl or Python, with the framework of your choice - EE6, CDI, Seam, Spring, Zend, Cake, Rails, Sinatra, PerlDancer or Django to the OpenShift PaaS in just minutes. All this and without having to rewrite your app to get it to work the way the cloud provider thinks your app should work.
You can have your business applications running in the cloud on OpenShift Express in seconds, while also making use of the web browser do the heavy-lifting of provisioning clusters, deploying, monitoring and auto-scaling apps in OpenShift Flex.
If you want to learn about OpenShift PaaS and see how investing 45 mins of your time can change everything you thought you knew about putting your business applications in the cloud, this session is for you!
OpenShift State of the Union, brought to you by JBossEric D. Schabell
It has been a marriage made in heaven. JBoss has brought the enterprise application platform and JEE to the OpenShift PaaS for all of your development tasks. It is much more than a simple application server though, JBoss provides a multitude of projects that cover everything from mobile, business process management, web development, support tooling to inter connectivity with other development languages like Ruby.
This session will take you through an overview of what OpenShift has to offer right now, how to get started, and then provide some highlights of the various projects that you can now access within the JBoss community. Bring you laptop and follow along as we help you get started in mobile development with Aerogears, Ruby Java connectivity with TorqueBox, process development with tooling from jBPM and much more. These will all be real world projects put on display for you with code you can access live during this session!
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.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
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.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
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/
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
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.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
5. How do I install it?
• Install Java
• Install Groovy
• Download GeoScript Groovy and put the
bin directory on your path
• https://github.com/jericks/geoscript-groovy/
releases
6. How do I learn it?
http://geoscript.org
http://geoscript.org/groovy/api/
10. Inline Scripts
(geoscript-groovy)
• One liners
• Interact with other command line tools
• geom, mapfart, ogr, ect…
• Read Standard Input (System.in.text)
• Write to Standard Output (println)
11. Scripts
web.groovy
(geoscript-groovy)
1 import com.sun.grizzly.http.embed.GrizzlyWebServer!
2 import com.sun.grizzly.http.servlet.ServletAdapter!
3 !
4 @Grab(group='com.sun.grizzly', module='grizzly-servlet-webserver',
version='1.9.10')!
5 def start() {!
6
println("Starting web server...")!
7
def server = new GrizzlyWebServer(8080, "web")!
8
def servlet = new ServletAdapter()!
9
servlet.contextPath = "/geoscript"!
10
servlet.servletInstance = new groovy.servlet.GroovyServlet()!
11
server.addGrizzlyAdapter(servlet, ["/geoscript"] as String[])!
12
server.start()!
13 }!
14 start()
14. Scripts
(geoscript-groovy)
• Larger multiline scripts
• Good for complex processing
• Record your workflow
• Can create command line tools, web
services, or desktop apps
• Use @Grab to get dependencies
15. Shell
(geoscript-groovysh)
Groovy Shell (2.1.9, JVM: 1.7.0_45)
Type 'help' or 'h' for help.
-------------------------------------------------------------------------------
groovy:000> import geoscript.workspace.PostGIS
===> [import geoscript.workspace.PostGIS]
groovy:000> postgis = new PostGIS("states",user: "jericks")
===> geoscript.workspace.PostGIS@7840df80
groovy:000> postgis.layers
===> [states]
groovy:000> states = postgis.get("states")
===> states
groovy:000> states.bounds
===> (-124.731422,24.955967,-66.969849,49.371735,EPSG:4326)
groovy:000> states.count
===> 49
groovy:000> states.eachFeature{ println it.geom.centroid }
POINT (-89.20368628698026 40.06397152717181)
POINT (-77.01592888814594 38.90248929357207)
POINT (-75.50090936853277 38.994999876971384)
POINT (-80.61424804312078 38.64111336139042)
21. Console
• Good for longer scripts (but not too long)
• Excellent preview (View -> Visualize Script
Results)
• Use it when rendering images, maps,
geometries
23. uDig
•
•
•
Done by Andrea Antonello and the UDig crew
•
http://prezi.com/wyopic4sinhg/geographic-scripting-inudig-user-friendly-desktop-internet-gis/
Part of the Spatial Toolbox
http://udig.github.io/docs/user/getting_started/GeoScript
%20Introduction.html
• http://www.slideshare.net/moovida/04-geographic-
scripting-in-udig-halfway-between-user-and-developer
24. GeoServer
• Web services
• Web Processing Services (WPS)
• Filter Functions (used in SLDs for styling your maps)
• Download groovy plugin from http://
ares.opengeo.org/geoserver/2.4.x/community-latest/
• Extract jars to geoserver/WEB-INF/lib
• http://www.slideshare.net/JaredErickson/scriptinggeoserver
27. As a library
Geoscript is just another jar
<repositories>!
<repository>!
<id>opengeo</id>!
<name>OpenGeo Maven Repository</name>!
<url>http://repo.opengeo.org</url>!
<snapshots>!
<enabled>true</enabled>!
</snapshots>!
</repository>!
</repositories>
<dependency>!
<groupId>org.geoscript</groupId>!
<artifactId>geoscript-groovy</artifactId>!
<version>1.2</version>!
</dependency>
28. Gradle - App
$ mkdir geo-gradle
$ cd geo-gradle/
$ touch build.gradle
$ vi build.gradle
$ mkdir -p src/main/groovy/org/jce/geo
$ touch src/main/groovy/org/jce/geo/App.groovy
$ vi src/main/groovy/org/jce/geo/App.groovy
$ gradle build