Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017

Werner Keil
Werner KeilCloud Architect, Java, Eclipse and Microservice Expert at Deutsche Bank
Copyright © 2016, Creative Arts & Technologies and others. All rights reserved.
Physikal – JSR 363 and
Kotlin for Clean Energy
Werner Keil
JSR 363 Maintenance Lead
@wernerkeil
October 18, 2017
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Agenda
1. Introduction
2. Tenkiv Nexus
3. JSR 363
4. Physikal
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Who am I?
Werner Keil
• Consultant – Coach
• Creative Cosmopolitan
• Open Source Evangelist
• Software Architect
• Spec Lead – JSR363
• Individual JCP Executive Committee Member
[www.linkedin.com/in/catmedia]
Twitter @wernerkeil
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Save Water
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Water Crisis
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
The Globe
2.5 billion people across the globe
lack access to clean water.
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Developing Nations
In places like Afghanistan,
lack of access to water sanitation leads to a
1 in 5 child mortality rate.
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
California
98% of California is experiencing
severe drought, placing major stress
on our water infrastructure.
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
What is Tenkiv Nexus?
The Tenkiv Nexus is a fully modular renewable energy system. It uses heat
from the sun in order to power anything for 1/13th the cost of existing solar
panels and 1/5th the cost of fossil fuels without any subsidies. It’s the
breakthrough the world’s been waiting for that finally enables us to truly
utilize the most abundant source of power available on earth: the sun.
Tenkiv started deployment of the Tenkiv Nexus for water purification, but
over time will replace more and more of the world's dying energy
infrastructure with this new, more powerful, cost-effective, and completely
clean energy nexus.
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Tenkiv Nexus
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
What is JSR-363?
5,999 miles
A Quantity
A Unit
Brussels
São Paulo
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Why do we need JSR-363?
There are no specifications or standards for handling units in Java.
The current solution is to use primitives, that don’t provide any Type
Safety.
The errors are difficult to find using unit testing:
Interface and Internationalization (e.g. radian/degree, meters/feet);
Arithmetic operations (e.g. overflow);
Conversion between units (e.g. from same domain);
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
5,999 miles
A Quantity
A Unit
What is the problem, in code?
int distance = 5999; //in miles
float speed = airplane.getSpeed(); //in km/h
System.out.println(“ETA: “ + (distance/speed) + “ h”);
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
What is JSR-363, in code?
Quantity<Length> distance = Quantities.getQuantity(5999,
US.MILE);
Quantity<Speed> airplaneSpeed = getAirplaneSpeed();
Quantity<Time> eta =
(Quantity<Time>)distance.divide(airplaneSpeed);
System.out.println(“ETA: “ + eta.to(Units.HOUR));
ETA: 10.216345960256564 h
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
What is Physikal?
Library providing Kotlin extensions and ease of use functions for Java
Units of Measurement libraries based on JSR-363.
Contains
• Core - Basic Metric units.
• SI-Units - SI units.
• Complete-Units - All units including US or Imperial.
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
What is Physikal, in code?
Create Units
val added = 10.metre + 1.kilo.metre
>> 1010.0 m
val small = 10.metre
val large = 10.kilo.metre
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
What is Physikal, in more code?
Includes all operators
val added = 10.metre + 1.kilo.metre
>> 1010.0 m
val speed = added/10.minute
>> 101 m/min
var aFewSeconds = 5.second
aFewSeconds++
>> 6.0 s
10.peta.watt > 2.watt
>> true
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
What is Physikal, in more code?
Using different units (SI units & other units)
5.gram + 2.pound
>> 912.18474 g
(13.kilo.gram + 20.pound) convertTo STONE
>> 3.47572100600243466674378 st
© 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
Links
Public JSR-363 mailing list(s) and/or forum(s)
Units-Dev on Google Groups
Units-Users on Google Groups
JSR-363 page: https://jcp.org/en/jsr/detail?id=363…
Project Website: http://unitsofmeasurement.github.io on GitHub
Tenkiv: https://tenkiv.com
Physikal: https://github.com/Tenkiv/Physikal
@YourTwitterHandle#DVXFR14{session hashtag} © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI
1 of 20

Recommended

Presentation to Ministerial Meeting of Global Geothermal Alliance, Florence, ... by
Presentation to Ministerial Meeting of Global Geothermal Alliance, Florence, ...Presentation to Ministerial Meeting of Global Geothermal Alliance, Florence, ...
Presentation to Ministerial Meeting of Global Geothermal Alliance, Florence, ...ThinkGeoEnergy
509 views6 slides
Global Geothermal Development - An Overview, September 2017 by
Global Geothermal Development - An Overview, September 2017Global Geothermal Development - An Overview, September 2017
Global Geothermal Development - An Overview, September 2017ThinkGeoEnergy
827 views10 slides
Presentation at IIGCE 2017 in Jakarta, Indonesia by
Presentation at IIGCE 2017 in Jakarta, IndonesiaPresentation at IIGCE 2017 in Jakarta, Indonesia
Presentation at IIGCE 2017 in Jakarta, IndonesiaThinkGeoEnergy
947 views17 slides
Simulations of Superwind Suppression in Super Star Clusters by
Simulations of Superwind Suppression in Super Star ClustersSimulations of Superwind Suppression in Super Star Clusters
Simulations of Superwind Suppression in Super Star ClustersAshkbiz Danehkar
806 views37 slides
Emission Lines from Superwinds of Super Star Clusters by
Emission Lines from Superwinds of Super Star ClustersEmission Lines from Superwinds of Super Star Clusters
Emission Lines from Superwinds of Super Star ClustersAshkbiz Danehkar
794 views17 slides
Geothermal Energy - Global Development Status by
Geothermal Energy - Global Development StatusGeothermal Energy - Global Development Status
Geothermal Energy - Global Development StatusThinkGeoEnergy
767 views11 slides

More Related Content

What's hot

Status of Geothermal Development in Latin America & Caribbean by
Status of Geothermal Development in Latin America & CaribbeanStatus of Geothermal Development in Latin America & Caribbean
Status of Geothermal Development in Latin America & CaribbeanThinkGeoEnergy
880 views16 slides
Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb... by
Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb...Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb...
Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb...Ashkbiz Danehkar
420 views23 slides
nuclear power plant by
nuclear power plantnuclear power plant
nuclear power plantMd.KhaledMasud Babu
32 views16 slides
Introduction of Post-K development by
Introduction of Post-K development	Introduction of Post-K development
Introduction of Post-K development Linaro
2.3K views10 slides
Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016 by
Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016
Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016ThinkGeoEnergy
487 views26 slides
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020 by
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020Werner Keil
1K views54 slides

What's hot(18)

Status of Geothermal Development in Latin America & Caribbean by ThinkGeoEnergy
Status of Geothermal Development in Latin America & CaribbeanStatus of Geothermal Development in Latin America & Caribbean
Status of Geothermal Development in Latin America & Caribbean
ThinkGeoEnergy880 views
Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb... by Ashkbiz Danehkar
Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb...Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb...
Hydrodynamic Simulations and Time-dependent Photoionization Modeling of Starb...
Ashkbiz Danehkar420 views
Introduction of Post-K development by Linaro
Introduction of Post-K development	Introduction of Post-K development
Introduction of Post-K development
Linaro2.3K views
Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016 by ThinkGeoEnergy
Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016
Keynote presentation at GEORG Geothermal Workshop, Nov. 24, 2016
ThinkGeoEnergy487 views
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020 by Werner Keil
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
Werner Keil1K views
Non-equilibrium Photoionization and Hydrodynamic Simulations of Starburst-dri... by Ashkbiz Danehkar
Non-equilibrium Photoionization and Hydrodynamic Simulations of Starburst-dri...Non-equilibrium Photoionization and Hydrodynamic Simulations of Starburst-dri...
Non-equilibrium Photoionization and Hydrodynamic Simulations of Starburst-dri...
Ashkbiz Danehkar376 views
Clean Sky Projects on the More Electric Aircraft by Torben Haagh
Clean Sky Projects on the More Electric AircraftClean Sky Projects on the More Electric Aircraft
Clean Sky Projects on the More Electric Aircraft
Torben Haagh730 views
IRJET - A Review on Gravity based Power Generation System by IRJET Journal
IRJET - A Review on Gravity based Power Generation SystemIRJET - A Review on Gravity based Power Generation System
IRJET - A Review on Gravity based Power Generation System
IRJET Journal9 views
Genome-scale Big Data Pipelines by Lynn Langit
Genome-scale Big Data PipelinesGenome-scale Big Data Pipelines
Genome-scale Big Data Pipelines
Lynn Langit595 views
VariantSpark - a Spark library for genomics by Lynn Langit
VariantSpark - a Spark library for genomicsVariantSpark - a Spark library for genomics
VariantSpark - a Spark library for genomics
Lynn Langit2.2K views
Near realtime wildfire simulation using big data platforms by Bishrant Adhikari
Near realtime wildfire simulation using big data platformsNear realtime wildfire simulation using big data platforms
Near realtime wildfire simulation using big data platforms
Bishrant Adhikari181 views
DCSF 19 Towards Reproducable Climate Research by Docker, Inc.
DCSF 19 Towards Reproducable Climate ResearchDCSF 19 Towards Reproducable Climate Research
DCSF 19 Towards Reproducable Climate Research
Docker, Inc.655 views

Similar to Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017

Physikal - Using Kotlin for Clean Energy - KUG Munich by
Physikal - Using Kotlin for Clean Energy - KUG MunichPhysikal - Using Kotlin for Clean Energy - KUG Munich
Physikal - Using Kotlin for Clean Energy - KUG MunichWerner Keil
1K views25 slides
HPC Cluster Computing from 64 to 156,000 Cores  by
HPC Cluster Computing from 64 to 156,000 Cores HPC Cluster Computing from 64 to 156,000 Cores 
HPC Cluster Computing from 64 to 156,000 Cores inside-BigData.com
2K views102 slides
Cycle Computing Record-breaking Petascale HPC Run by
Cycle Computing Record-breaking Petascale HPC RunCycle Computing Record-breaking Petascale HPC Run
Cycle Computing Record-breaking Petascale HPC Runinside-BigData.com
1.5K views25 slides
Scientific Software: Sustainability, Skills & Sociology by
Scientific Software: Sustainability, Skills & SociologyScientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & SociologyNeil Chue Hong
622 views39 slides
The First IoT JSR: Units of Measurement - DevoXX BE 2015 by
The First IoT JSR: Units of Measurement - DevoXX BE 2015The First IoT JSR: Units of Measurement - DevoXX BE 2015
The First IoT JSR: Units of Measurement - DevoXX BE 2015Werner Keil
1.5K views39 slides
Agile Systems Engineering & Agile at SKA Scale by
Agile Systems Engineering & Agile at SKA ScaleAgile Systems Engineering & Agile at SKA Scale
Agile Systems Engineering & Agile at SKA ScaleJoint ALMA Observatory
217 views50 slides

Similar to Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017(20)

Physikal - Using Kotlin for Clean Energy - KUG Munich by Werner Keil
Physikal - Using Kotlin for Clean Energy - KUG MunichPhysikal - Using Kotlin for Clean Energy - KUG Munich
Physikal - Using Kotlin for Clean Energy - KUG Munich
Werner Keil1K views
HPC Cluster Computing from 64 to 156,000 Cores  by inside-BigData.com
HPC Cluster Computing from 64 to 156,000 Cores HPC Cluster Computing from 64 to 156,000 Cores 
HPC Cluster Computing from 64 to 156,000 Cores 
Cycle Computing Record-breaking Petascale HPC Run by inside-BigData.com
Cycle Computing Record-breaking Petascale HPC RunCycle Computing Record-breaking Petascale HPC Run
Cycle Computing Record-breaking Petascale HPC Run
inside-BigData.com1.5K views
Scientific Software: Sustainability, Skills & Sociology by Neil Chue Hong
Scientific Software: Sustainability, Skills & SociologyScientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & Sociology
Neil Chue Hong622 views
The First IoT JSR: Units of Measurement - DevoXX BE 2015 by Werner Keil
The First IoT JSR: Units of Measurement - DevoXX BE 2015The First IoT JSR: Units of Measurement - DevoXX BE 2015
The First IoT JSR: Units of Measurement - DevoXX BE 2015
Werner Keil1.5K views
The Salmon Algorithm Spawning with Kubernetes by CloudOps2005
The Salmon Algorithm Spawning with KubernetesThe Salmon Algorithm Spawning with Kubernetes
The Salmon Algorithm Spawning with Kubernetes
CloudOps2005322 views
Panel: Building the NRP Ecosystem with the Regional Networks on their Campuses; by Larry Smarr
Panel: Building the NRP Ecosystem with the Regional Networks on their Campuses;Panel: Building the NRP Ecosystem with the Regional Networks on their Campuses;
Panel: Building the NRP Ecosystem with the Regional Networks on their Campuses;
Larry Smarr94 views
Scilab Conference 2018 - Welcome to the Community by Scilab
Scilab Conference 2018 - Welcome to the CommunityScilab Conference 2018 - Welcome to the Community
Scilab Conference 2018 - Welcome to the Community
Scilab2.6K views
JSR 363 - The Answer to Life Science and the Internet of Everything by Werner Keil
JSR 363 - The Answer to Life Science and the Internet of EverythingJSR 363 - The Answer to Life Science and the Internet of Everything
JSR 363 - The Answer to Life Science and the Internet of Everything
Werner Keil2.3K views
NASA Advanced Computing Environment for Science & Engineering by inside-BigData.com
NASA Advanced Computing Environment for Science & EngineeringNASA Advanced Computing Environment for Science & Engineering
NASA Advanced Computing Environment for Science & Engineering
inside-BigData.com838 views
Accelerating Time to Science: Transforming Research in the Cloud by Jamie Kinney
Accelerating Time to Science: Transforming Research in the CloudAccelerating Time to Science: Transforming Research in the Cloud
Accelerating Time to Science: Transforming Research in the Cloud
Jamie Kinney318 views
Valencia EMEA Java User Group Summit by Heather VanCura
Valencia EMEA Java User Group SummitValencia EMEA Java User Group Summit
Valencia EMEA Java User Group Summit
Heather VanCura176 views
Structural Biology in the Clouds: A Success Story of 10 years by AlexandreBonvin2
Structural Biology in the Clouds: A Success Story of 10 yearsStructural Biology in the Clouds: A Success Story of 10 years
Structural Biology in the Clouds: A Success Story of 10 years
AlexandreBonvin2431 views
Frank Würthwein - NRP and the Path forward by Larry Smarr
Frank Würthwein - NRP and the Path forwardFrank Würthwein - NRP and the Path forward
Frank Würthwein - NRP and the Path forward
Larry Smarr132 views
Software Sustainability: Better Software Better Science by Carole Goble
Software Sustainability: Better Software Better ScienceSoftware Sustainability: Better Software Better Science
Software Sustainability: Better Software Better Science
Carole Goble2.1K views

More from Werner Keil

Securing eHealth, eGovernment and eBanking with Java - DWX '21 by
Securing eHealth, eGovernment and eBanking with Java - DWX '21Securing eHealth, eGovernment and eBanking with Java - DWX '21
Securing eHealth, eGovernment and eBanking with Java - DWX '21Werner Keil
136 views40 slides
OpenDDR and Jakarta MVC - JavaLand 2021 by
OpenDDR and Jakarta MVC - JavaLand 2021OpenDDR and Jakarta MVC - JavaLand 2021
OpenDDR and Jakarta MVC - JavaLand 2021Werner Keil
108 views42 slides
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021 by
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021Werner Keil
184 views35 slides
OpenDDR and Jakarta MVC - Java2Days 2020 Virtual by
OpenDDR and Jakarta MVC - Java2Days 2020 VirtualOpenDDR and Jakarta MVC - Java2Days 2020 Virtual
OpenDDR and Jakarta MVC - Java2Days 2020 VirtualWerner Keil
177 views39 slides
NoSQL Endgame - Java2Days 2020 Virtual by
NoSQL Endgame - Java2Days 2020 VirtualNoSQL Endgame - Java2Days 2020 Virtual
NoSQL Endgame - Java2Days 2020 VirtualWerner Keil
65 views57 slides
JCON 2020: Mobile Java Web Applications with MVC and OpenDDR by
JCON 2020: Mobile Java Web Applications with MVC and OpenDDRJCON 2020: Mobile Java Web Applications with MVC and OpenDDR
JCON 2020: Mobile Java Web Applications with MVC and OpenDDRWerner Keil
218 views38 slides

More from Werner Keil(20)

Securing eHealth, eGovernment and eBanking with Java - DWX '21 by Werner Keil
Securing eHealth, eGovernment and eBanking with Java - DWX '21Securing eHealth, eGovernment and eBanking with Java - DWX '21
Securing eHealth, eGovernment and eBanking with Java - DWX '21
Werner Keil136 views
OpenDDR and Jakarta MVC - JavaLand 2021 by Werner Keil
OpenDDR and Jakarta MVC - JavaLand 2021OpenDDR and Jakarta MVC - JavaLand 2021
OpenDDR and Jakarta MVC - JavaLand 2021
Werner Keil108 views
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021 by Werner Keil
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
Werner Keil184 views
OpenDDR and Jakarta MVC - Java2Days 2020 Virtual by Werner Keil
OpenDDR and Jakarta MVC - Java2Days 2020 VirtualOpenDDR and Jakarta MVC - Java2Days 2020 Virtual
OpenDDR and Jakarta MVC - Java2Days 2020 Virtual
Werner Keil177 views
NoSQL Endgame - Java2Days 2020 Virtual by Werner Keil
NoSQL Endgame - Java2Days 2020 VirtualNoSQL Endgame - Java2Days 2020 Virtual
NoSQL Endgame - Java2Days 2020 Virtual
Werner Keil65 views
JCON 2020: Mobile Java Web Applications with MVC and OpenDDR by Werner Keil
JCON 2020: Mobile Java Web Applications with MVC and OpenDDRJCON 2020: Mobile Java Web Applications with MVC and OpenDDR
JCON 2020: Mobile Java Web Applications with MVC and OpenDDR
Werner Keil218 views
Money, Money, Money, can be funny with JSR 354 (Devoxx BE) by Werner Keil
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)Money, Money, Money, can be funny with JSR 354 (Devoxx BE)
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)
Werner Keil171 views
Money, Money, Money, can be funny with JSR 354 (DWX 2019) by Werner Keil
Money, Money, Money, can be funny with JSR 354 (DWX 2019)Money, Money, Money, can be funny with JSR 354 (DWX 2019)
Money, Money, Money, can be funny with JSR 354 (DWX 2019)
Werner Keil503 views
NoSQL: The first New Jakarta EE Specification (DWX 2019) by Werner Keil
NoSQL: The first New Jakarta EE Specification (DWX 2019)NoSQL: The first New Jakarta EE Specification (DWX 2019)
NoSQL: The first New Jakarta EE Specification (DWX 2019)
Werner Keil150 views
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day by Werner Keil
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR DayHow JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day
Werner Keil1.1K views
JNoSQL: The Definitive Solution for Java and NoSQL Databases by Werner Keil
JNoSQL: The Definitive Solution for Java and NoSQL DatabasesJNoSQL: The Definitive Solution for Java and NoSQL Databases
JNoSQL: The Definitive Solution for Java and NoSQL Databases
Werner Keil188 views
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases by Werner Keil
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabasesEclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases
Werner Keil142 views
Performance Monitoring for the Cloud - Java2Days 2017 by Werner Keil
Performance Monitoring for the Cloud - Java2Days 2017Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017
Werner Keil522 views
Java2Days - Security for JavaEE and the Cloud by Werner Keil
Java2Days - Security for JavaEE and the CloudJava2Days - Security for JavaEE and the Cloud
Java2Days - Security for JavaEE and the Cloud
Werner Keil437 views
Apache DeviceMap - Web-Dev-BBQ Stuttgart by Werner Keil
Apache DeviceMap - Web-Dev-BBQ StuttgartApache DeviceMap - Web-Dev-BBQ Stuttgart
Apache DeviceMap - Web-Dev-BBQ Stuttgart
Werner Keil1K views
The First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg by Werner Keil
The First IoT JSR: Units of Measurement - JUG Berlin-BrandenburgThe First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg
The First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg
Werner Keil611 views
JSR 354: Money and Currency API - Short Overview by Werner Keil
JSR 354: Money and Currency API - Short OverviewJSR 354: Money and Currency API - Short Overview
JSR 354: Money and Currency API - Short Overview
Werner Keil566 views
JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava by Werner Keil
JavaLand: Quantified Social - Fitness-Geräte und -Portale mit AgoravaJavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava
JavaLand: Quantified Social - Fitness-Geräte und -Portale mit Agorava
Werner Keil473 views
Enterprise 2.0 with Open Source Frameworks like Agorava by Werner Keil
Enterprise 2.0 with Open Source Frameworks like AgoravaEnterprise 2.0 with Open Source Frameworks like Agorava
Enterprise 2.0 with Open Source Frameworks like Agorava
Werner Keil838 views
JSR 375 - Have you seen Java EE Security API lately? - codemotion Tel Aviv 2015 by Werner Keil
JSR 375 - Have you seen Java EE Security API lately? - codemotion Tel Aviv 2015JSR 375 - Have you seen Java EE Security API lately? - codemotion Tel Aviv 2015
JSR 375 - Have you seen Java EE Security API lately? - codemotion Tel Aviv 2015
Werner Keil1.1K views

Recently uploaded

STPI OctaNE CoE Brochure.pdf by
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdfmadhurjyapb
14 views1 slide
"Running students' code in isolation. The hard way", Yurii Holiuk by
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk Fwdays
17 views34 slides
virtual reality.pptx by
virtual reality.pptxvirtual reality.pptx
virtual reality.pptxG036GaikwadSnehal
14 views15 slides
Ransomware is Knocking your Door_Final.pdf by
Ransomware is Knocking your Door_Final.pdfRansomware is Knocking your Door_Final.pdf
Ransomware is Knocking your Door_Final.pdfSecurity Bootcamp
59 views46 slides
Business Analyst Series 2023 - Week 3 Session 5 by
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5DianaGray10
300 views20 slides
20231123_Camunda Meetup Vienna.pdf by
20231123_Camunda Meetup Vienna.pdf20231123_Camunda Meetup Vienna.pdf
20231123_Camunda Meetup Vienna.pdfPhactum Softwareentwicklung GmbH
41 views73 slides

Recently uploaded(20)

STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays17 views
Business Analyst Series 2023 - Week 3 Session 5 by DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10300 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software280 views
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... by Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker40 views
6g - REPORT.pdf by Liveplex
6g - REPORT.pdf6g - REPORT.pdf
6g - REPORT.pdf
Liveplex10 views
Piloting & Scaling Successfully With Microsoft Viva by Richard Harbridge
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft Viva
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson92 views
Serverless computing with Google Cloud (2023-24) by wesley chun
Serverless computing with Google Cloud (2023-24)Serverless computing with Google Cloud (2023-24)
Serverless computing with Google Cloud (2023-24)
wesley chun11 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi132 views
Powerful Google developer tools for immediate impact! (2023-24) by wesley chun
Powerful Google developer tools for immediate impact! (2023-24)Powerful Google developer tools for immediate impact! (2023-24)
Powerful Google developer tools for immediate impact! (2023-24)
wesley chun10 views

Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017

  • 1. Copyright © 2016, Creative Arts & Technologies and others. All rights reserved. Physikal – JSR 363 and Kotlin for Clean Energy Werner Keil JSR 363 Maintenance Lead @wernerkeil October 18, 2017
  • 2. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Agenda 1. Introduction 2. Tenkiv Nexus 3. JSR 363 4. Physikal
  • 3. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Who am I? Werner Keil • Consultant – Coach • Creative Cosmopolitan • Open Source Evangelist • Software Architect • Spec Lead – JSR363 • Individual JCP Executive Committee Member [www.linkedin.com/in/catmedia] Twitter @wernerkeil
  • 4. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Save Water
  • 5. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Water Crisis
  • 6. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI The Globe 2.5 billion people across the globe lack access to clean water.
  • 7. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Developing Nations In places like Afghanistan, lack of access to water sanitation leads to a 1 in 5 child mortality rate.
  • 8. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI California 98% of California is experiencing severe drought, placing major stress on our water infrastructure.
  • 9. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI What is Tenkiv Nexus? The Tenkiv Nexus is a fully modular renewable energy system. It uses heat from the sun in order to power anything for 1/13th the cost of existing solar panels and 1/5th the cost of fossil fuels without any subsidies. It’s the breakthrough the world’s been waiting for that finally enables us to truly utilize the most abundant source of power available on earth: the sun. Tenkiv started deployment of the Tenkiv Nexus for water purification, but over time will replace more and more of the world's dying energy infrastructure with this new, more powerful, cost-effective, and completely clean energy nexus.
  • 10. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Tenkiv Nexus
  • 11. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI What is JSR-363? 5,999 miles A Quantity A Unit Brussels São Paulo
  • 12. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Why do we need JSR-363? There are no specifications or standards for handling units in Java. The current solution is to use primitives, that don’t provide any Type Safety. The errors are difficult to find using unit testing: Interface and Internationalization (e.g. radian/degree, meters/feet); Arithmetic operations (e.g. overflow); Conversion between units (e.g. from same domain);
  • 13. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI 5,999 miles A Quantity A Unit What is the problem, in code? int distance = 5999; //in miles float speed = airplane.getSpeed(); //in km/h System.out.println(“ETA: “ + (distance/speed) + “ h”);
  • 14. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI What is JSR-363, in code? Quantity<Length> distance = Quantities.getQuantity(5999, US.MILE); Quantity<Speed> airplaneSpeed = getAirplaneSpeed(); Quantity<Time> eta = (Quantity<Time>)distance.divide(airplaneSpeed); System.out.println(“ETA: “ + eta.to(Units.HOUR)); ETA: 10.216345960256564 h
  • 15. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI What is Physikal? Library providing Kotlin extensions and ease of use functions for Java Units of Measurement libraries based on JSR-363. Contains • Core - Basic Metric units. • SI-Units - SI units. • Complete-Units - All units including US or Imperial.
  • 16. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI What is Physikal, in code? Create Units val added = 10.metre + 1.kilo.metre >> 1010.0 m val small = 10.metre val large = 10.kilo.metre
  • 17. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI What is Physikal, in more code? Includes all operators val added = 10.metre + 1.kilo.metre >> 1010.0 m val speed = added/10.minute >> 101 m/min var aFewSeconds = 5.second aFewSeconds++ >> 6.0 s 10.peta.watt > 2.watt >> true
  • 18. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI What is Physikal, in more code? Using different units (SI units & other units) 5.gram + 2.pound >> 912.18474 g (13.kilo.gram + 20.pound) convertTo STONE >> 3.47572100600243466674378 st
  • 19. © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI Links Public JSR-363 mailing list(s) and/or forum(s) Units-Dev on Google Groups Units-Users on Google Groups JSR-363 page: https://jcp.org/en/jsr/detail?id=363… Project Website: http://unitsofmeasurement.github.io on GitHub Tenkiv: https://tenkiv.com Physikal: https://github.com/Tenkiv/Physikal
  • 20. @YourTwitterHandle#DVXFR14{session hashtag} © 2017 Creative Arts & Technologies and others. All rights reserved.#Physikal @UnitAPI