SlideShare a Scribd company logo
Privet Kotlin
Hello Kotlin
Hello Kotlin
Cody Engel
Senior Software Engineer @ Yello
Free T-Shirts & Clean Code
Nick Cruz
Android Engineer @ Yello
Mr. Plantastic & Crispy Animations
2. Getting Started
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
1. Fun Facts
2. Getting Started
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
1. Fun Facts
Developed in 2011 by JetBrains
(IntelliJ IDEA, RubyMine, PhpStorm, Android Studio)
Released 2012
Statically typed programming language
for the JVM
Developed in 2011 by JetBrains
(IntelliJ IDEA, RubyMine, PhpStorm)
Released 2012
Statically typed programming language
for the JVM
Runs on JVM = 100% Interoperability with Java
2. Getting Started
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
1. Fun Facts
1. Fun Facts
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
2. Getting Started
Functions
sum( , b:Int) {
return a + b
}
fun a: Int : Int
Functions
Functions
sum( , b:Int) {
return a + b
}
fun a: Int : Int
Functions
sum( , b:Int) {
return a + b
}
fun a: Int : Int
Functions
sum( , b:Int) {
return a + b
}
fun a: Int : Int
Functions
sum( , b:Int) {
return a + b
}
fun a: Int : Int
Functions
sum( , b:Int) {
return a + b
}
fun a: Int : Int
fun sum(a: Int, b: Int) = a + b
Functions
Functions
fun printSum(a: Int, b: Int): Unit {
println("sum of $a and $b is ${a + b}")
}
fun printSum(a: Int, b: Int) {
println("sum of $a and $b is ${a + b}")
}
Functions
Variables
val immutable: Int = 1
Variables
val immutable = 2
Variables
val immutable: Int
immutable = 3
Variables
var mutable = 0
mutable++
mutable++
Variables
Properties
class Address {
var name: String = ...
var street: String = ...
var city: String = ...
var state: String? = ...
var zip: String = ...
}
Properties
fun copyAddress(address: Address): Address {
val result = Address()
result.name = address.name
result.street = address.street
return result
}
Properties
val isEmpty: Boolean
get() = this.size == 0
Properties
var stringRepresentation: String
get() = this.toString()
set(value) {
field = value.toString()
}
Properties
String Templates
val = "Java"
println(
String.format("The way is terrible!", )
)
java
java%s
String Templates
String Templates
val = "Java"
println(
String.format("The way is terrible!", )
)
java
java%s
val = "Kotlin"
println("The way is awesome!")
kotlin
$kotlin
String Templates
String Templates
val = "Kotlin"
println("The way is awesome!")
kotlin
$kotlin
Control Flow
var max = a
if (a < b) max = b
Control Flow - If Expression
var max: Int
if (a > b) {
max = a
} else {
max = b
}
Control Flow - If Expression
val max = if (a > b) a else b
Control Flow - If Expression
val max = if (a > b) {
print("Returns a")
a
} else {
print("Returns b")
b
}
Control Flow - If Expression
when (x) {
1 -> print("x == 1")
2 -> print("x == 2")
else -> {
print(“x is neither 1 nor 2")
}
}
When Expression - Replaces Switch
when (x) {
1, 2 -> print("x == 1 or a == 2")
else -> print(“x is neither 1 nor 2”)
}
When Expression - Replaces Switch
when (x) {
in 1..10 -> print("x is in the range")
in validNumbers -> print("x is valid")
!in 10..20 -> print("x is outside the range")
else -> print("none of the above")
}
When Expression - Replaces Switch
when {
x.isOdd() -> print("x is odd")
x.isEven() -> print("x is even")
else -> print("x is funny")
}
When Expression - Replaces If/Else If
for (item in collection) {
print(item)
}
For Loops
for (i in array.indices) {
print(array[i])
}
For Loops
for ((index, value) in array.withIndex()) {
println("the element at $index is $value")
}
For Loops
2. Getting Started
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
1. Fun Facts
1. Fun Facts
2. Getting Started
4. Our Favorite Things About Kotlin
5. Kotlin At Work
3. Null Safety
Null Safety
(and Immutability)
Caused by: java.lang.NullPointerException: Attempt
to invoke virtual method 'java.lang.String
java.lang.String.trim()' on a null object
reference
Nullable String s; val s: String?
NonNull String s; val s: String
val length = s!!.length
NonNull Assert
val length = s!!.length
NonNull Assert
kotlin.KotlinNullPointerException
at part2.delegation.interceptor.LoggerList.add(LoggerList.kt:39)
(don’t do this)
val length = s!!.length
val length = s?.length // Int?
NonNull Assert
Safe call, returns optional
kotlin.KotlinNullPointerException
at part2.delegation.interceptor.LoggerList.add(LoggerList.kt:39)
(don’t do this)
val length = s?.length ?: 0 // Int
Safe Call and Elvis Operator
val length = s?.length ?: 0 // Int
Safe Call and Elvis Operator
Other helpful operators
with, apply, let, run
s?.let {
val length = it.length // Int
// Do stuff with length
}
What about variables that become null?
What about variables that become non-null?
Mutable
Nullable
String s; var s: String?
Mutable
NonNull
String s; var s: String
Immutable
Nullable
final String s; val s: String?
Immutable
NonNull
final String s; val s: String
2. Getting Started
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
1. Fun Facts
1. Fun Facts
2. Getting Started
3. Null Safety
5. Kotlin At Work
4. Our Favorite Things About Kotlin
Classes
Data Classes
We frequently create classes whose main purpose is to
hold data. In such a class some standard functionality
and utility functions are often mechanically derivable
from the data. In Kotlin, this is called a data class.
Data Classes
data class User(val name: String, val age: Int)
data class User(
val name: String = "",
val age: Int = 0
)
Data Classes
val user = User(“Jane Smith", 27)
user.name
user.age
user.toString()
user.hashCode()
user.equals()
Data Classes
val jack = User(name = "Jack", age = 1)
val olderJack = jack.copy(age = 2)
Data Classes
val jane = User("Jane", 35)
val (name, age) = jane
println("$name, $age years of age")
Data Classes
Sealed Classes
Sealed classes are used for representing restricted
class hierarchies, when a value can have one of the
types from a limited set, but cannot have any other type.
They are, in a sense, an extension of enum classes: the
set of values for an enum type is also restricted, but
each enum constant exists only as a single instance,
whereas a subclass of a sealed class can have multiple
instances which can contain state.
sealed class Expr {
data class Const(val number: Double) : Expr()
data class Sum(val e1: Expr, val e2: Expr) : Expr()
object NotANumber : Expr()
}
Sealed Classes
Sealed Classes
fun eval(expr: Expr): Double = when(expr) {
is Const -> expr.number
is Sum -> eval(expr.e1) + eval(expr.e2)
NotANumber -> Double.NaN
}
Lambdas
& Higher-Order Functions
A higher-order function is a function
that takes functions as parameters,
or returns a function.
fun transform1Through5(transform: (Int) -> Int) {
for (int in 1..5) {
println(transform(int))
}
}
fun transform1Through5(transform: (Int) -> Int) {
for (int in 1..5) {
println(transform(int))
}
}
Method Reference
class NumberDoubler {
fun run(int: Int) = int * 2
}
fun doubleNumbersMethodReference() {
val numberDoubler = NumberDoubler()
transform1Through5(numberDoubler::run)
}
Lambda
fun transform1Through5(transform: (Int) -> Int) {
for (int in 1..5) {
println(transform(int))
}
}
fun doubleNumbersLambda() {
transform1Through5 { num -> num * 2 }
}
transform1Through5 { num -> num * 2 }
transform1Through5 { it * 2 }
transform1Through5 { it * 3 }
transform1Through5 { it * 30 }
transform1Through5 { it * it }
listOf(1, 2, 3, 4, 5)
.filter { it % 2 == 1 } // Filter evens: [1, 3, 5]
.map { it * 2 } // Double the results: [2, 6, 10]
.forEach { println(it) } // Print them
Kotlin Collections
listOf(1, 2, 3, 4, 5)
.filter { it % 2 == 1 } // Filter evens: [1, 3, 5]
.map { it * 2 } // Double the results: [2, 6, 10]
.forEach { println(it) } // Print them
Kotlin Collections
Observable.just(1, 2, 3, 4, 5)
.filter { it % 2 == 1 }
.map { it * 2 }
.forEach { println(it) }
RxJava Observable (in Kotlin)
2. Getting Started
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
1. Fun Facts
1. Fun Facts
2. Getting Started
3. Null Safety
4. Our Favorite Things About Kotlin
5. Kotlin At Work
@
Introduce Kotlin
@
Introduce Kotlin
• Discuss the benefits of Kotlin.
• Give snippets in Pull Request comments.
• Get others on our team interested.
@
Learn Together
@
Learn Together
• Work through Kotlin Koans together.
• Watch Kotlin videos together.
• Make this a team effort.
@
Kotlin In Production
@
Kotlin In Production
• Determine code style rules as a team.
• Find the path of least resistance.
• Java-style Kotlin in the beginning.
• Focus on continuous improvement.
@
twitter.com/POTUS404
medium.com/@CodyEngel
github.com/CodyEngel github.com/NickCruz
medium.com/@NickCruz26
twitter.com/ReactiveNick
medium.com/yello-offline
instagram.com/yello_offline
twitter.com/yello_offline
Resources
Kotlin Koans
https://goo.gl/MTLEYg
KotlinLang
https://kotlinlang.org
Life is Great and Everything Will Be Ok, Kotlin Is Here
https://goo.gl/yhp2Gn
Kotlin Uncovered
https://goo.gl/fbAFW5
Introduction To Kotlin
https://goo.gl/iCwYHd

More Related Content

What's hot

Kotlin Bytecode Generation and Runtime Performance
Kotlin Bytecode Generation and Runtime PerformanceKotlin Bytecode Generation and Runtime Performance
Kotlin Bytecode Generation and Runtime Performance
intelliyole
 
Kotlin – the future of android
Kotlin – the future of androidKotlin – the future of android
Kotlin – the future of android
DJ Rausch
 
Advanced Debugging Using Java Bytecodes
Advanced Debugging Using Java BytecodesAdvanced Debugging Using Java Bytecodes
Advanced Debugging Using Java Bytecodes
Ganesh Samarthyam
 
3 kotlin vs. java- what kotlin has that java does not
3  kotlin vs. java- what kotlin has that java does not3  kotlin vs. java- what kotlin has that java does not
3 kotlin vs. java- what kotlin has that java does not
Sergey Bandysik
 
2 kotlin vs. java: what java has that kotlin does not
2  kotlin vs. java: what java has that kotlin does not2  kotlin vs. java: what java has that kotlin does not
2 kotlin vs. java: what java has that kotlin does not
Sergey Bandysik
 
What can be done with Java, but should better be done with Erlang (@pavlobaron)
What can be done with Java, but should better be done with Erlang (@pavlobaron)What can be done with Java, but should better be done with Erlang (@pavlobaron)
What can be done with Java, but should better be done with Erlang (@pavlobaron)
Pavlo Baron
 
Kotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developersKotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developers
Bartosz Kosarzycki
 
Kotlin
KotlinKotlin
Kotlin: a better Java
Kotlin: a better JavaKotlin: a better Java
Kotlin: a better Java
Nils Breunese
 
AST Transformations
AST TransformationsAST Transformations
AST TransformationsHamletDRC
 
Kotlin collections
Kotlin collectionsKotlin collections
Kotlin collections
Myeongin Woo
 
Haskell in the Real World
Haskell in the Real WorldHaskell in the Real World
Haskell in the Real World
osfameron
 
Ast transformations
Ast transformationsAst transformations
Ast transformations
HamletDRC
 
Why Haskell
Why HaskellWhy Haskell
Why Haskell
Susan Potter
 
Clojure for Java developers - Stockholm
Clojure for Java developers - StockholmClojure for Java developers - Stockholm
Clojure for Java developers - StockholmJan Kronquist
 
core.logic introduction
core.logic introductioncore.logic introduction
core.logic introduction
Norman Richards
 
Orthogonal Functional Architecture
Orthogonal Functional ArchitectureOrthogonal Functional Architecture
Orthogonal Functional Architecture
John De Goes
 
Introduction to Kotlin
Introduction to KotlinIntroduction to Kotlin
Introduction to Kotlin
Oswald Campesato
 

What's hot (20)

Kotlin Bytecode Generation and Runtime Performance
Kotlin Bytecode Generation and Runtime PerformanceKotlin Bytecode Generation and Runtime Performance
Kotlin Bytecode Generation and Runtime Performance
 
Into Clojure
Into ClojureInto Clojure
Into Clojure
 
Kotlin – the future of android
Kotlin – the future of androidKotlin – the future of android
Kotlin – the future of android
 
Advanced Debugging Using Java Bytecodes
Advanced Debugging Using Java BytecodesAdvanced Debugging Using Java Bytecodes
Advanced Debugging Using Java Bytecodes
 
3 kotlin vs. java- what kotlin has that java does not
3  kotlin vs. java- what kotlin has that java does not3  kotlin vs. java- what kotlin has that java does not
3 kotlin vs. java- what kotlin has that java does not
 
Lezione03
Lezione03Lezione03
Lezione03
 
2 kotlin vs. java: what java has that kotlin does not
2  kotlin vs. java: what java has that kotlin does not2  kotlin vs. java: what java has that kotlin does not
2 kotlin vs. java: what java has that kotlin does not
 
What can be done with Java, but should better be done with Erlang (@pavlobaron)
What can be done with Java, but should better be done with Erlang (@pavlobaron)What can be done with Java, but should better be done with Erlang (@pavlobaron)
What can be done with Java, but should better be done with Erlang (@pavlobaron)
 
Kotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developersKotlin advanced - language reference for android developers
Kotlin advanced - language reference for android developers
 
Kotlin
KotlinKotlin
Kotlin
 
Kotlin: a better Java
Kotlin: a better JavaKotlin: a better Java
Kotlin: a better Java
 
AST Transformations
AST TransformationsAST Transformations
AST Transformations
 
Kotlin collections
Kotlin collectionsKotlin collections
Kotlin collections
 
Haskell in the Real World
Haskell in the Real WorldHaskell in the Real World
Haskell in the Real World
 
Ast transformations
Ast transformationsAst transformations
Ast transformations
 
Why Haskell
Why HaskellWhy Haskell
Why Haskell
 
Clojure for Java developers - Stockholm
Clojure for Java developers - StockholmClojure for Java developers - Stockholm
Clojure for Java developers - Stockholm
 
core.logic introduction
core.logic introductioncore.logic introduction
core.logic introduction
 
Orthogonal Functional Architecture
Orthogonal Functional ArchitectureOrthogonal Functional Architecture
Orthogonal Functional Architecture
 
Introduction to Kotlin
Introduction to KotlinIntroduction to Kotlin
Introduction to Kotlin
 

Similar to Privet Kotlin (Windy City DevFest)

Kotlin for Android Developers - 3
Kotlin for Android Developers - 3Kotlin for Android Developers - 3
Kotlin for Android Developers - 3
Mohamed Nabil, MSc.
 
Meetup di GDG Italia - Leonardo Pirro - Codemotion Rome 2018
Meetup di GDG Italia - Leonardo Pirro -  Codemotion Rome 2018 Meetup di GDG Italia - Leonardo Pirro -  Codemotion Rome 2018
Meetup di GDG Italia - Leonardo Pirro - Codemotion Rome 2018
Codemotion
 
Kotlin 1.2: Sharing code between platforms
Kotlin 1.2: Sharing code between platformsKotlin 1.2: Sharing code between platforms
Kotlin 1.2: Sharing code between platforms
Kirill Rozov
 
Kotlin, smarter development for the jvm
Kotlin, smarter development for the jvmKotlin, smarter development for the jvm
Kotlin, smarter development for the jvm
Arnaud Giuliani
 
Introduction kot iin
Introduction kot iinIntroduction kot iin
Introduction kot iin
Jedsada Tiwongvokul
 
Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1
Troy Miles
 
K is for Kotlin
K is for KotlinK is for Kotlin
K is for Kotlin
TechMagic
 
Introduction to Scala
Introduction to ScalaIntroduction to Scala
Introduction to Scala
Lorenzo Dematté
 
Intro to Kotlin
Intro to KotlinIntro to Kotlin
Intro to Kotlin
Magda Miu
 
Introduction to Scala
Introduction to ScalaIntroduction to Scala
Introduction to Scala
Aleksandar Prokopec
 
Kotlin for Android devs
Kotlin for Android devsKotlin for Android devs
Kotlin for Android devs
Adit Lal
 
Scala coated JVM
Scala coated JVMScala coated JVM
Scala coated JVM
Stuart Roebuck
 
Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017
Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017 Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017
Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017
Codemotion
 
Develop your next app with kotlin @ AndroidMakersFr 2017
Develop your next app with kotlin @ AndroidMakersFr 2017Develop your next app with kotlin @ AndroidMakersFr 2017
Develop your next app with kotlin @ AndroidMakersFr 2017
Arnaud Giuliani
 
Kotlin @ Coupang Backend 2017
Kotlin @ Coupang Backend 2017Kotlin @ Coupang Backend 2017
Kotlin @ Coupang Backend 2017
Sunghyouk Bae
 
Kotlin 101 for Java Developers
Kotlin 101 for Java DevelopersKotlin 101 for Java Developers
Kotlin 101 for Java Developers
Christoph Pickl
 
Lezione03
Lezione03Lezione03
Lezione03
robynho86
 
Android & Kotlin - The code awakens #03
Android & Kotlin - The code awakens #03Android & Kotlin - The code awakens #03
Android & Kotlin - The code awakens #03
Omar Miatello
 

Similar to Privet Kotlin (Windy City DevFest) (20)

Kotlin for Android Developers - 3
Kotlin for Android Developers - 3Kotlin for Android Developers - 3
Kotlin for Android Developers - 3
 
Meetup di GDG Italia - Leonardo Pirro - Codemotion Rome 2018
Meetup di GDG Italia - Leonardo Pirro -  Codemotion Rome 2018 Meetup di GDG Italia - Leonardo Pirro -  Codemotion Rome 2018
Meetup di GDG Italia - Leonardo Pirro - Codemotion Rome 2018
 
Kotlin 1.2: Sharing code between platforms
Kotlin 1.2: Sharing code between platformsKotlin 1.2: Sharing code between platforms
Kotlin 1.2: Sharing code between platforms
 
Kotlin, smarter development for the jvm
Kotlin, smarter development for the jvmKotlin, smarter development for the jvm
Kotlin, smarter development for the jvm
 
Introduction kot iin
Introduction kot iinIntroduction kot iin
Introduction kot iin
 
Scala for curious
Scala for curiousScala for curious
Scala for curious
 
Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1Game Design and Development Workshop Day 1
Game Design and Development Workshop Day 1
 
K is for Kotlin
K is for KotlinK is for Kotlin
K is for Kotlin
 
Introduction to Scala
Introduction to ScalaIntroduction to Scala
Introduction to Scala
 
Intro to Kotlin
Intro to KotlinIntro to Kotlin
Intro to Kotlin
 
Introduction to Scala
Introduction to ScalaIntroduction to Scala
Introduction to Scala
 
Kotlin for Android devs
Kotlin for Android devsKotlin for Android devs
Kotlin for Android devs
 
Scala coated JVM
Scala coated JVMScala coated JVM
Scala coated JVM
 
Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017
Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017 Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017
Davide Cerbo - Kotlin: forse è la volta buona - Codemotion Milan 2017
 
Develop your next app with kotlin @ AndroidMakersFr 2017
Develop your next app with kotlin @ AndroidMakersFr 2017Develop your next app with kotlin @ AndroidMakersFr 2017
Develop your next app with kotlin @ AndroidMakersFr 2017
 
Scala ntnu
Scala ntnuScala ntnu
Scala ntnu
 
Kotlin @ Coupang Backend 2017
Kotlin @ Coupang Backend 2017Kotlin @ Coupang Backend 2017
Kotlin @ Coupang Backend 2017
 
Kotlin 101 for Java Developers
Kotlin 101 for Java DevelopersKotlin 101 for Java Developers
Kotlin 101 for Java Developers
 
Lezione03
Lezione03Lezione03
Lezione03
 
Android & Kotlin - The code awakens #03
Android & Kotlin - The code awakens #03Android & Kotlin - The code awakens #03
Android & Kotlin - The code awakens #03
 

Recently uploaded

Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Jay Das
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 

Recently uploaded (20)

Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfEnhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdf
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 

Privet Kotlin (Windy City DevFest)