SlideShare a Scribd company logo
www.erlang-solutions.com
ERLANG SOLUTIONS
GET2GETHER
TIGRE 2016
www.erlang-solutions.com
FROM
OBJECTIVE-C
TO SWIFT
www.erlang-solutions.com
HELLO!
Pablo Villar
pablo@inakanetworks.com
@pablolvillar
www.erlang-solutions.com
www.inaka.net
www.erlang-solutions.com
EXPERIENCES
WE'VE LEARNED
FROM SOME
SWIFT
FEATURES
How has this new
language affected our
developer lives?
www.erlang-solutions.com
1.
SWIFT IS
STATICALLY
TYPED
www.erlang-solutions.com
SWIFT IS STATICALLY TYPED
▸ Type checking at compile-time
▸ We can catch mistakes at earlier stages
▸ Less runtime crashes
▸ Less magic, more knowledge
www.erlang-solutions.com
Swift (Static Types)
More restrictions when
writing code.
It's harder to get along
with the compiler and be
good friends, but that's a
good thing.
SWIFT IS STATICALLY TYPED
OBJ-C (Dynamic Types)
More freedom when
writing code.
However, this magic
comes with the high cost
of experiencing undesired
behavior or potential
crashes at runtime.
www.erlang-solutions.com
2.
SWIFT
HAS GOT
OPTIONALS
www.erlang-solutions.com
Swift
You need to define specific
paths for null vs non-null
scenarios.
You are not allowed to
perform operations on a
nil variable that's
supposed not to be nil.
SWIFT HAS GOT OPTIONALS
OBJ-C
You can call a method
with a pointer variable
that is nil, and nothing
will happen.
This no-op leads to
unpredictable behavior.
www.erlang-solutions.com
SWIFT HAS GOT OPTIONALS
▸ We are forced to deal with null types
▸ Our code becomes safer
▸ We get used not to forget the error paths
▸ We code with intention
▸ Sometimes, we discover hidden scenarios that
haven't been defined in the specs yet.
▹ In consequence, we become more proactive
in the development loop.
www.erlang-solutions.com
3.
SWIFT TAKES A
FUNCTIONAL
APPROACH
www.erlang-solutions.com
SWIFT TAKES A FUNCTIONAL APPROACH
▸ Enums on steroids
▸ Pattern matching
▸ Functions as first-class citizens
▹ Perfect fit for completion closures
▹ Higher order functions
▹ Map, filter, reduce
▸ The importance of:
▹ Immutability
▹ Value types
▹ Avoiding state
▸ Testable code as a consequence
www.erlang-solutions.com
4.
SWIFT IS A
PROTOCOL
ORIENTED
PROGRAMMING
LANGUAGE
www.erlang-solutions.com
SWIFT IS A PROTOCOL ORIENTED PROGRAMMING LANGUAGE
▸ Protocols in Swift have been given more features
and are more encouraged
▸ Favor composition over inheritance
▸ Code is more extensible and flexible
▸ In combination with generics, they become way
powerful
www.erlang-solutions.com
USING PLAIN INHERITANCE
www.erlang-solutions.com
USING PROTOCOL COMPOSITION
www.erlang-solutions.com
5.
SWIFT
HAS GOT
GENERICS
www.erlang-solutions.com
SWIFT HAS GOT GENERICS
▸ With generics, we can solve general problems writing
less code...
▸ This concept encourages us to:
▹ Think of more layers of abstraction
▹ Solve problems in a generic way
▹ Find out common code architecture patterns in our
apps and generalize them
▹ Write more open-source code
www.erlang-solutions.com
6.
MODELS
IN SWIFT
ARE MORE
POWERFUL
www.erlang-solutions.com
MODELS IN SWIFT ARE MORE POWERFUL
Swift
You can define classes,
structs and enums.
They all have the same
power at their core.
OBJ-C
You can define classes,
structs and enums.
While classes is the only
one that has real power,
structs and enums are
vastly poor in comparison
(they come from C).
www.erlang-solutions.com
▸ Structs and Enums have been leveled up
▸ We started to use them much more
▸ We have learned:
▹ The value of value types
▹ How to avoid side effects
▹ Pattern-matching
▹ Why the if clause can be avoided
▹ The importance of immutability
MODELS IN SWIFT ARE MORE POWERFUL
www.erlang-solutions.com
7.
SWIFT IS
EASIER TO
READ
www.erlang-solutions.com
SWIFT IS EASIER TO READ, WRITE, MAINTAIN, ETC...
▸ Cleaner syntax
▸ Better expressiveness
▸ Much more friendly
▸ More similar to modern languages
▸ Encourages more devs to learn it
▹ Community is getting way bigger
bye-bye-brackets.png
www.erlang-solutions.com
8.
SWIFT IS
OPEN
SOURCE
www.erlang-solutions.com
SWIFT IS OPEN SOURCE!
▸ Language is evolving around the community
▹ Proposals are encouraged
▹ So are discussions
▹ Much more documentation
▹ More people getting involved
▸ Bring Swift to other platforms
▹ Linux
▹ Android
▹ Windows
www.erlang-solutions.com
WRAPPING UP...
www.erlang-solutions.com
IN CONCLUSION
Swift has changed the way we
program and how we think of
programming.
We've got less error prone code
and more solid codebases.
We are also learning from other
paradigms, which makes us more
flexible and open-minded.
www.erlang-solutions.com
THANK YOU!
Any questions?
pablo@inakanetworks.com
@pablolvillar
www.erlang-solutions.com
www.inaka.net

More Related Content

Viewers also liked

SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)
SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)
SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)
Jakub Kašparů
 
NYCC 2014 (Bionicle)
NYCC 2014 (Bionicle)NYCC 2014 (Bionicle)
NYCC 2014 (Bionicle)
rusbionicle
 
Dependency Injection in iOS
Dependency Injection in iOSDependency Injection in iOS
Dependency Injection in iOS
Pablo Villar
 
Developing Swift - Moving towards the future
Developing Swift - Moving towards the futureDeveloping Swift - Moving towards the future
Developing Swift - Moving towards the future
Pablo Villar
 
Android application development company in chennai
Android application development company in chennaiAndroid application development company in chennai
Android application development company in chennai
edsseo
 
Optimalizace cílení, skóre kvality a novinky v Adwords API v201601
Optimalizace cílení, skóre kvality a novinky v Adwords API v201601Optimalizace cílení, skóre kvality a novinky v Adwords API v201601
Optimalizace cílení, skóre kvality a novinky v Adwords API v201601
Jakub Kašparů
 
Panic! at the Disco
Panic! at the Disco Panic! at the Disco
Panic! at the Disco
Alarmclock24
 
Ohjeistus onnistuneen sisältöstrategian luomiseen ja verkkokauppa-analytiikkaan
Ohjeistus onnistuneen sisältöstrategian luomiseen ja  verkkokauppa-analytiikkaanOhjeistus onnistuneen sisältöstrategian luomiseen ja  verkkokauppa-analytiikkaan
Ohjeistus onnistuneen sisältöstrategian luomiseen ja verkkokauppa-analytiikkaan
annaemilia
 
Brainstormers astro quiz prelims answer
Brainstormers astro quiz  prelims answerBrainstormers astro quiz  prelims answer
Brainstormers astro quiz prelims answer
Farzan Kuttan
 
Working report on insurance company
Working report on insurance companyWorking report on insurance company
Working report on insurance companyAndey786
 
Power point dropbox google drive
Power point  dropbox google drivePower point  dropbox google drive
Power point dropbox google drive
anderibi
 
โครงการผู้บำเพ็ญประโยชน์
โครงการผู้บำเพ็ญประโยชน์โครงการผู้บำเพ็ญประโยชน์
โครงการผู้บำเพ็ญประโยชน์
panomkon
 

Viewers also liked (20)

SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)
SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)
SEO pro eshopy a jejich majitele/správce - Eshopvíkend 2015 :-)
 
Desigualdade social
Desigualdade socialDesigualdade social
Desigualdade social
 
NYCC 2014 (Bionicle)
NYCC 2014 (Bionicle)NYCC 2014 (Bionicle)
NYCC 2014 (Bionicle)
 
Dependency Injection in iOS
Dependency Injection in iOSDependency Injection in iOS
Dependency Injection in iOS
 
Developing Swift - Moving towards the future
Developing Swift - Moving towards the futureDeveloping Swift - Moving towards the future
Developing Swift - Moving towards the future
 
Pre o-net math6
Pre o-net math6Pre o-net math6
Pre o-net math6
 
Android application development company in chennai
Android application development company in chennaiAndroid application development company in chennai
Android application development company in chennai
 
Optimalizace cílení, skóre kvality a novinky v Adwords API v201601
Optimalizace cílení, skóre kvality a novinky v Adwords API v201601Optimalizace cílení, skóre kvality a novinky v Adwords API v201601
Optimalizace cílení, skóre kvality a novinky v Adwords API v201601
 
Panic! at the Disco
Panic! at the Disco Panic! at the Disco
Panic! at the Disco
 
Ohjeistus onnistuneen sisältöstrategian luomiseen ja verkkokauppa-analytiikkaan
Ohjeistus onnistuneen sisältöstrategian luomiseen ja  verkkokauppa-analytiikkaanOhjeistus onnistuneen sisältöstrategian luomiseen ja  verkkokauppa-analytiikkaan
Ohjeistus onnistuneen sisältöstrategian luomiseen ja verkkokauppa-analytiikkaan
 
Brainstormers astro quiz prelims answer
Brainstormers astro quiz  prelims answerBrainstormers astro quiz  prelims answer
Brainstormers astro quiz prelims answer
 
E4
E4E4
E4
 
Working report on insurance company
Working report on insurance companyWorking report on insurance company
Working report on insurance company
 
Power point dropbox google drive
Power point  dropbox google drivePower point  dropbox google drive
Power point dropbox google drive
 
Desigualdade social
Desigualdade socialDesigualdade social
Desigualdade social
 
Johnny cash
Johnny cashJohnny cash
Johnny cash
 
โครงการผู้บำเพ็ญประโยชน์
โครงการผู้บำเพ็ญประโยชน์โครงการผู้บำเพ็ญประโยชน์
โครงการผู้บำเพ็ญประโยชน์
 
Pie
PiePie
Pie
 
Presentation1
Presentation1Presentation1
Presentation1
 
اللحن
اللحناللحن
اللحن
 

Similar to From Objective-C to Swift

Grooming with Groovy
Grooming with GroovyGrooming with Groovy
Grooming with Groovy
Dhaval Dalal
 
Writing Readable Code
Writing Readable CodeWriting Readable Code
Writing Readable Code
eddiehaber
 
Software Engineering Thailand: Programming with Scala
Software Engineering Thailand: Programming with ScalaSoftware Engineering Thailand: Programming with Scala
Software Engineering Thailand: Programming with Scala
Brian Topping
 
scala-intro
scala-introscala-intro
scala-intro
Manav Prasad
 
The Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To KnowThe Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To Know
All Things Open
 
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
AuditMark
 
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...Thiện Dương
 
02 java programming basic
02  java programming basic02  java programming basic
02 java programming basic
Zeeshan-Shaikh
 
Kotlin & Swift
Kotlin & SwiftKotlin & Swift
Kotlin & Swift
zezzi Castillo
 
Effective entrepreneurship for developers
Effective entrepreneurship for developersEffective entrepreneurship for developers
Effective entrepreneurship for developersCarlos Ble
 
The pragmatic programmer
The pragmatic programmerThe pragmatic programmer
The pragmatic programmer
LeylimYaln
 
Responsive, adaptive and responsible - keynote at NebraskaJS
Responsive, adaptive and responsible - keynote at NebraskaJSResponsive, adaptive and responsible - keynote at NebraskaJS
Responsive, adaptive and responsible - keynote at NebraskaJS
Christian Heilmann
 
Peyton jones-2011-parallel haskell-the_future
Peyton jones-2011-parallel haskell-the_futurePeyton jones-2011-parallel haskell-the_future
Peyton jones-2011-parallel haskell-the_future
Takayuki Muranushi
 
Simon Peyton Jones: Managing parallelism
Simon Peyton Jones: Managing parallelismSimon Peyton Jones: Managing parallelism
Simon Peyton Jones: Managing parallelism
Skills Matter
 
Groovy And Grails
Groovy And GrailsGroovy And Grails
Groovy And Grails
William Grosso
 
Codegeneration Goodies
Codegeneration GoodiesCodegeneration Goodies
Codegeneration Goodies
meysholdt
 
Scala and Akka together - geek night jan 2017
Scala and Akka together - geek night jan 2017Scala and Akka together - geek night jan 2017
Scala and Akka together - geek night jan 2017
Raj Saxena
 
GDG Morgantown, WV: Write code you can depend on!
GDG Morgantown, WV: Write code you can depend on!GDG Morgantown, WV: Write code you can depend on!
GDG Morgantown, WV: Write code you can depend on!
Logan Spears
 
Java for C++ programers
Java for C++ programersJava for C++ programers
Java for C++ programers
Salahaddin University-Erbil
 
Programming in Java: Getting Started
Programming in Java: Getting StartedProgramming in Java: Getting Started
Programming in Java: Getting Started
Martin Chapman
 

Similar to From Objective-C to Swift (20)

Grooming with Groovy
Grooming with GroovyGrooming with Groovy
Grooming with Groovy
 
Writing Readable Code
Writing Readable CodeWriting Readable Code
Writing Readable Code
 
Software Engineering Thailand: Programming with Scala
Software Engineering Thailand: Programming with ScalaSoftware Engineering Thailand: Programming with Scala
Software Engineering Thailand: Programming with Scala
 
scala-intro
scala-introscala-intro
scala-intro
 
The Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To KnowThe Ember.js Framework - Everything You Need To Know
The Ember.js Framework - Everything You Need To Know
 
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
Protecting JavaScript source code using obfuscation - OWASP Europe Tour 2013 ...
 
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...
Owaspeutour2013lisbon pedrofortunaprotectingjavascriptsourcecodeusingobfuscat...
 
02 java programming basic
02  java programming basic02  java programming basic
02 java programming basic
 
Kotlin & Swift
Kotlin & SwiftKotlin & Swift
Kotlin & Swift
 
Effective entrepreneurship for developers
Effective entrepreneurship for developersEffective entrepreneurship for developers
Effective entrepreneurship for developers
 
The pragmatic programmer
The pragmatic programmerThe pragmatic programmer
The pragmatic programmer
 
Responsive, adaptive and responsible - keynote at NebraskaJS
Responsive, adaptive and responsible - keynote at NebraskaJSResponsive, adaptive and responsible - keynote at NebraskaJS
Responsive, adaptive and responsible - keynote at NebraskaJS
 
Peyton jones-2011-parallel haskell-the_future
Peyton jones-2011-parallel haskell-the_futurePeyton jones-2011-parallel haskell-the_future
Peyton jones-2011-parallel haskell-the_future
 
Simon Peyton Jones: Managing parallelism
Simon Peyton Jones: Managing parallelismSimon Peyton Jones: Managing parallelism
Simon Peyton Jones: Managing parallelism
 
Groovy And Grails
Groovy And GrailsGroovy And Grails
Groovy And Grails
 
Codegeneration Goodies
Codegeneration GoodiesCodegeneration Goodies
Codegeneration Goodies
 
Scala and Akka together - geek night jan 2017
Scala and Akka together - geek night jan 2017Scala and Akka together - geek night jan 2017
Scala and Akka together - geek night jan 2017
 
GDG Morgantown, WV: Write code you can depend on!
GDG Morgantown, WV: Write code you can depend on!GDG Morgantown, WV: Write code you can depend on!
GDG Morgantown, WV: Write code you can depend on!
 
Java for C++ programers
Java for C++ programersJava for C++ programers
Java for C++ programers
 
Programming in Java: Getting Started
Programming in Java: Getting StartedProgramming in Java: Getting Started
Programming in Java: Getting Started
 

Recently uploaded

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
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
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
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
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
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
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
 
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
 
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
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
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
 
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
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 

Recently uploaded (20)

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
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
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
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
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
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
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
 
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
 
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...
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
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
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 

From Objective-C to Swift