SlideShare uma empresa Scribd logo
1 de 54
Baixar para ler offline
copyright © 2008  cod technologies ltd  www.codtech.com
mobile dev camp
android development workshop
diego torres milano
diego@codtech.com
amsterdam, november 2008
copyright © 2008  cod technologies ltd  www.codtech.com
“I have always wished that my 
computer would be as easy to 
use as my telephone.
My wish has come true.
I no longer know how to use my 
telephone.”
­­ Bjarne Stroustrup
copyright © 2008  cod technologies ltd  www.codtech.com
agenda
● introduction to android
● android architecture
● building blocks
● your first android application
● testing and performance
● best practices
copyright © 2008  cod technologies ltd  www.codtech.com
introduction to android
● identify unique features of 
android platform
● compare android against 
other platforms
● understand android building 
blocks
after this section you will...
copyright © 2008  cod technologies ltd  www.codtech.com
what is android ?
● android is the first complete, open 
and free mobile platform
● developed by Open Handset 
Alliance
● software stack than includes
– operating system
– middleware
– key applications
– rich set of APIs Portions of this page are reproduced from work created and 
shared by Google and used according to terms described in 
the Creative Commons 2.5 Attribution License.
copyright © 2008  cod technologies ltd  www.codtech.com
is android linux ?
● no native windowing 
system
● no glibc support
● no GNU/Linux utilities
android is based on a linux kernel  
but it's not GNU/Linux
NO, android is not linux !
copyright © 2008  cod technologies ltd  www.codtech.com
so is android java ?
● uses the java language
● implements part of the 
Java5 SE specification
● runs on a dalvik virtual 
machine instead of JVM
android is not an implementation 
of any of the Java variants
NO, android is not java !
copyright © 2008  cod technologies ltd  www.codtech.com
android linux kernel
● security
● memory management
● process management
● network stack
● driver model
● abstraction layer
android is based on a linux 2.6 kernel, prnel, providing
kernel source: source.android.com
copyright © 2008  cod technologies ltd  www.codtech.com
linux kernel enhancements
● alarm
● ashmem
● binder
● power management
● low memory killer (no swap space available)
● logger
android introduces some linux kernel patches
copyright © 2008  cod technologies ltd  www.codtech.com
unique platform characteristics
● open source
● “all applications are equal” model
● dalvik virtual machine
android characteristics not found on other platforms
copyright © 2008  cod technologies ltd  www.codtech.com
other characteristics
● application framework enabling reuse of components
● integrated browser based on WebKit OSS engine
● 3D graphics based on the OpenGL ES
● SQLite for structured data storage
● media support for common audio, video, and still images
● camera, GPS, compass, and accelerometer
interesting features as well, but they are more 
common across other mobile platforms
copyright © 2008  cod technologies ltd  www.codtech.com
android architecturecourtesy of Google
copyright © 2008  cod technologies ltd  www.codtech.com
after this section you will...
android building blocks
● recognize the fundamental 
building blocks
● use these building blocks to 
create applications
● understand applications 
lifecycle
copyright © 2008  cod technologies ltd  www.codtech.com
building blocks
copyright © 2008  cod technologies ltd  www.codtech.com
Activities
● Activities are stacked 
like a deck of cards
● only one is visible
● only one is active
● new activities are 
placed on top
copyright © 2008  cod technologies ltd  www.codtech.com
Activities lifecycle
rectangles are callbacks where
we can implement operations
performed on state changes
copyright © 2008  cod technologies ltd  www.codtech.com
Activities states
● active
– at the top of the stack
● paused
– lost focus but still visible
– can be killed by LMK
● stopped
– not at the top of th stack
● dropped
– killed to reclaim its memory
copyright © 2008  cod technologies ltd  www.codtech.com
Views
● Views are basic building blocks
● know how to draw themselves
● respond to events
● organized as trees to build up GUIs
● described in XML in layout resources
copyright © 2008  cod technologies ltd  www.codtech.com
pattern: load layout
android compiles the XML layout code that is 
later loaded in code usually by
public void onCreate(Bundle
savedInstanceState) {
...
setContentView(R.layout.filename);
...
}
copyright © 2008  cod technologies ltd  www.codtech.com
Views and Viewgroups
● Views and 
Viewgroups trees 
build up complex 
GUIs
● android framework is 
responsible for
– measuring
– laying out
– drawing
copyright © 2008  cod technologies ltd  www.codtech.com
pattern: ids
using a unique id in a XML View definition 
permits locating it later in Java code
private View name;
public void onCreate(Bundle
savedInstanceState) {
...
name = (View)
findViewById(R.id.name);
...
}
copyright © 2008  cod technologies ltd  www.codtech.com
Intents
● Intents are used to move from Activity to Activity
● describes what the application wants
● provides late runtime binding
primary attributes
attribute description
action
data
the general action to be performed, such as VIEW,
EDIT, MAIN, etc.
the data to operate on, such as a person record in
the contacts database, as URI
copyright © 2008  cod technologies ltd  www.codtech.com
intents playground
http://codtech.com/android/IntentPlayground.apk
copyright © 2008  cod technologies ltd  www.codtech.com
Services
● services run in the background
● don't interact with the user
● run on the main thread
of the process
● is kept running as long as
– is started
– has connections
copyright © 2008  cod technologies ltd  www.codtech.com
Notifications
● notify the user about 
events
● sent through 
NotificationManager
● types
– persistent icon
– turning leds
– sound or vibration
copyright © 2008  cod technologies ltd  www.codtech.com
ConentProviders
● ContentProviders are objects that can
– retrieve data
– store data
● data is available to all applications
● only way to share data across packages
● usually the backend is SQLite
● they are loosely linked to clients
● data exposed as a unique URI
copyright © 2008  cod technologies ltd  www.codtech.com
AndroidManifest.xml
● control file that tells 
the system what to do 
and how the top­level 
components are 
related
● it's the “glue” that 
actually specifies 
which Intents your 
Activities receive
● specifies permissions
copyright © 2008  cod technologies ltd  www.codtech.com
after this section you will...
your first android
● create your own android map 
project
● design the UI
● externalize resources
● react to events
● run the application
copyright © 2008  cod technologies ltd  www.codtech.com
android project
copyright © 2008  cod technologies ltd  www.codtech.com
default application
● auto­generated 
application template
● default resources
– icon
– layout
– strings
● default 
AndroidManifest.xml
● default run 
configuration
copyright © 2008  cod technologies ltd  www.codtech.com
designing the UI
this simple UI designs 
contains
● the window title
● a spinner (drop down 
box) containing the 
desired location over 
the map
● a map displaying the 
selected location
copyright © 2008  cod technologies ltd  www.codtech.com
create the layout
● remove old layout
● add a RelativeLayout
● add a View (MapView not 
supported by ADT)
● replace View by 
com.google.android.m
apview
● change id to mapview
● add a Spinner filling 
parent width
copyright © 2008  cod technologies ltd  www.codtech.com
run the application
● com.google.android.
maps it's an optional 
library not included by 
default
● add <uses-library
android:name="com.go
ogle.android.maps" /
> to manifest as 
application node
copyright © 2008  cod technologies ltd  www.codtech.com
Google Maps API key
● checking DDMS logcat we find
● to access Google Maps we need a key
● application must be signed with the same key
● key can be obtained from Google
● MapView should include
java.lang.IllegalArgumentException: You need to
specify an API Key for each MapView.
android:apiKey="0GNIO0J9wdmcNm4gCV6S0nlaFE8bHa9W
XXXXXX"
copyright © 2008  cod technologies ltd  www.codtech.com
MapActivy
● checking DDMS logcat again
● change base class to MapActivity
● fix imports
● add unimplemented methods
java.lang.IllegalArgumentException: MapViews can
only be created inside instances of MapActivity.
copyright © 2008  cod technologies ltd  www.codtech.com
where is the map ?
● still no map displayed
● check DDMS logcat
● lots of IOExceptions !
● some uses permissions 
are missing
– ACCESS_COARSE_LOCATION
– INTERNET
copyright © 2008  cod technologies ltd  www.codtech.com
finally our map
still some problems ...
● spinner is covered
● has no prompt
● externalize resource
android:layout_alignPa
rentTop="true"
prompt: @string/prompt
copyright © 2008  cod technologies ltd  www.codtech.com
pattern: adapters
an Adapter object acts as a bridge between an 
AdapterView and the underlying data for that view
ArrayAdapter<CharSequence> adapter =
ArrayAdapter.createFromResource(
this, R.array.array,
android.R.layout.layout);
view.setAdapter(adapter);
The Adapter is also responsible for making a View for each item in the 
data set.
copyright © 2008  cod technologies ltd  www.codtech.com
pattern: resources
resources are external files (that is, non­code files) 
that are used by your code and compiled into your 
application at build time.
<resources>
<string-array name=”array”>
<item>item</item>
</string-array>
</resources>
res = getResources().getType(id);
copyright © 2008  cod technologies ltd  www.codtech.com
arrays.xml
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<!-- No support for multidimensional
arrays or complex objects yet (1.0r1) -->
<string-array name="location_names">
<item>Mediamatic Duintjer</item>
<item>NH Hotel</item>
<item>Airport</item>
</string-array>
<string-array name="locations">
<item>52.363125,4.892070,18</item>
<item>37.244832,-115.811434,9</item>
<item>-34.560047,-58.44924,16</item>
</string-array>
</resources>
copyright © 2008  cod technologies ltd  www.codtech.com
complete the class
● create the locations array
● get the views (ids pattern)
● create the adapter
locations =
getResources().getStringArray(R.array.locations);
spinner = (Spinner) findViewById(R.id.Spinner01);
mapView = (MapView) findViewById(R.id.mapview);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.
createFromResource(this,
R.array.location_names,
android.R.layout.simple_spinner_item);
spinner.setAdapter(adapter)
copyright © 2008  cod technologies ltd  www.codtech.com
almost there
● map is displayed
● spinner is displayed
● drop down is 
displayed
● but there's no 
selection button ...
adapter.
setDropDownViewResource(
android.R.layout.
simple_spinner_dropdown_item
);
copyright © 2008  cod technologies ltd  www.codtech.com
respond to events
● when an item is 
selected map should 
be centered at that 
location
● invoke 
goToSelectedLocation(ar
g2);
spinner.
setOnItemSelectedListener(
new
OnItemSelectedListener() {
});
copyright © 2008  cod technologies ltd  www.codtech.com
goToSelectedLocation
protected void goToSelectedLocation(int position) {
String[] loc = locations[position].split(",");
double lat = Double.parseDouble(loc[0]);
double lon = Double.parseDouble(loc[1]);
int zoom = Integer.parseInt(loc[2]);
GeoPoint p = new GeoPoint((int)(lat * 1E6),
(int)(lon * 1E6));
Log.d(TAG, "Should go to " + p);
mapController.animateTo(p);
mapController.setZoom(zoom);
}
copyright © 2008  cod technologies ltd  www.codtech.com
more events
● turn map clickable
● override onKeyDown
android:clickable="true”
switch (keyCode) {
case KeyEvent.KEYCODE_I:
mapController.zoomIn();
break;
case KeyEvent.KEYCODE_O:
mapController.zoomOut();
break;
case KeyEvent.KEYCODE_S:
mapView.setSatellite(
!mapView.isSatellite());
break;
}
copyright © 2008  cod technologies ltd  www.codtech.com
we did it !
● Some things to try
– select a location
– pan
– zoom in
– zoom out
– toggle satellite
copyright © 2008  cod technologies ltd  www.codtech.com
“Remember that there is no 
code faster than no code”
­­ Taligent's Guide to Designing Programs
copyright © 2008  cod technologies ltd  www.codtech.com
after this section you will...
testing and performance
● understand the best practices 
to develop for android
●  identify the alternatives to test 
units, services and applications
● performance
copyright © 2008  cod technologies ltd  www.codtech.com
best practices
● consider performance, android is not a desktop
● avoid creating objects
● use native methods
● prefer virtual over interface
● prefer static over virtual
● avoid internal getter/setters
● declares constants final
● avoid enums
copyright © 2008  cod technologies ltd  www.codtech.com
testing
● android sdk 1.0 introduces
– ActivityUnitTestCase to run isolated unit tests
– ServiceTestCase to test services
– ActivityInstrumentationTestCase to run functional 
tests of activities
● ApiDemos includes some test samples
● monkey, generates pseudo­random of user 
events
copyright © 2008  cod technologies ltd  www.codtech.com
performance
Addalocalvariable
Addamembervariable
CallString.length()
Callemptystaticnativemethod
Callemptystaticmethod
Callemptyvirtualmethod
Callemptyinterfacemethod
CallIterator:next()onaHashMap
Callput()onaHashMap
Inflate1ViewfromXML
Inflate1LinearLayoutwith1TextView
Inflate1LinearLayoutwith6View
Inflate1LinearLayoutwith6TextView
Launchanemptyactivity
0
500000
1000000
1500000
2000000
2500000
3000000
Time
copyright © 2008  cod technologies ltd  www.codtech.com
summary
● introduction to android
● android building blocks
●
copyright © 2008  cod technologies ltd  www.codtech.com
“If things seem under control, 
you're not going fast enough.”
­­ Mario Andretti
copyright © 2008  cod technologies ltd  www.codtech.com
thank you
android development workshop
diego torres milano
diego@codtech.com

Mais conteúdo relacionado

Destaque

Industrial engineering
Industrial engineeringIndustrial engineering
Industrial engineeringElimarVanessa
 
Learder ability
Learder abilityLearder ability
Learder abilityshuyanmiao
 
Udk basic concepts
Udk basic conceptsUdk basic concepts
Udk basic conceptsmaxminhaj1
 
Udk cutscene & export tutorial
Udk cutscene & export tutorialUdk cutscene & export tutorial
Udk cutscene & export tutorialMugetsu Tensho
 
[C++ lab] 1. 수업 내용 및 진행 방법
[C++ lab] 1. 수업 내용 및 진행 방법[C++ lab] 1. 수업 내용 및 진행 방법
[C++ lab] 1. 수업 내용 및 진행 방법MinGeun Park
 
Udk basic concepts
Udk basic conceptsUdk basic concepts
Udk basic conceptsRakesh Bhamu
 

Destaque (8)

What is cloud
What is cloudWhat is cloud
What is cloud
 
Industrial engineering
Industrial engineeringIndustrial engineering
Industrial engineering
 
Learder ability
Learder abilityLearder ability
Learder ability
 
Presentation 3
Presentation 3Presentation 3
Presentation 3
 
Udk basic concepts
Udk basic conceptsUdk basic concepts
Udk basic concepts
 
Udk cutscene & export tutorial
Udk cutscene & export tutorialUdk cutscene & export tutorial
Udk cutscene & export tutorial
 
[C++ lab] 1. 수업 내용 및 진행 방법
[C++ lab] 1. 수업 내용 및 진행 방법[C++ lab] 1. 수업 내용 및 진행 방법
[C++ lab] 1. 수업 내용 및 진행 방법
 
Udk basic concepts
Udk basic conceptsUdk basic concepts
Udk basic concepts
 

Semelhante a Android development-workshop-v2-1228043706544191-8

Embedded Android Workshop
Embedded Android WorkshopEmbedded Android Workshop
Embedded Android WorkshopOpersys inc.
 
Scope of Android and Future Work
Scope of Android and Future WorkScope of Android and Future Work
Scope of Android and Future WorkRabiRehman1
 
Android Technology
Android TechnologyAndroid Technology
Android TechnologyR
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidMotorola Mobility - MOTODEV
 
Embedded Android Workshop at ELC Europe
Embedded Android Workshop at ELC EuropeEmbedded Android Workshop at ELC Europe
Embedded Android Workshop at ELC EuropeOpersys inc.
 
Mobile Application Development powerpoint
Mobile Application Development powerpointMobile Application Development powerpoint
Mobile Application Development powerpointJohnLagman3
 
Embedded Android Workshop at Embedded World Conference 2013
Embedded Android Workshop at Embedded World Conference 2013Embedded Android Workshop at Embedded World Conference 2013
Embedded Android Workshop at Embedded World Conference 2013Opersys inc.
 
Embedded Android Workshop / ELC 2013
Embedded Android Workshop / ELC 2013Embedded Android Workshop / ELC 2013
Embedded Android Workshop / ELC 2013Opersys inc.
 
Android Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfAndroid Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfNomanKhan869872
 

Semelhante a Android development-workshop-v2-1228043706544191-8 (20)

Android Development Tutorial V3
Android Development Tutorial   V3Android Development Tutorial   V3
Android Development Tutorial V3
 
Embedded Android Workshop
Embedded Android WorkshopEmbedded Android Workshop
Embedded Android Workshop
 
Scope of Android and Future Work
Scope of Android and Future WorkScope of Android and Future Work
Scope of Android and Future Work
 
Android report
Android reportAndroid report
Android report
 
Part 1 robot in the making
Part 1 robot in the makingPart 1 robot in the making
Part 1 robot in the making
 
Android Technology
Android TechnologyAndroid Technology
Android Technology
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for Android
 
Project Ara
Project AraProject Ara
Project Ara
 
Embedded Android Workshop at ELC Europe
Embedded Android Workshop at ELC EuropeEmbedded Android Workshop at ELC Europe
Embedded Android Workshop at ELC Europe
 
My android
My androidMy android
My android
 
My android
My androidMy android
My android
 
Mobile Application Development powerpoint
Mobile Application Development powerpointMobile Application Development powerpoint
Mobile Application Development powerpoint
 
Project Ara
Project AraProject Ara
Project Ara
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating System
 
Embedded Android Workshop at Embedded World Conference 2013
Embedded Android Workshop at Embedded World Conference 2013Embedded Android Workshop at Embedded World Conference 2013
Embedded Android Workshop at Embedded World Conference 2013
 
Embedded Android Workshop / ELC 2013
Embedded Android Workshop / ELC 2013Embedded Android Workshop / ELC 2013
Embedded Android Workshop / ELC 2013
 
Android Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfAndroid Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdf
 
Android Applications
Android ApplicationsAndroid Applications
Android Applications
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android ppt
Android ppt Android ppt
Android ppt
 

Último

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 

Último (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 

Android development-workshop-v2-1228043706544191-8