An introduction to the Nokia Asha platform, it's developer offering, tooling overview a bird's eye view of the UX development options, and finally advices for application development and deployment on resource constrained devices
This webinar opens by showing you the new features of Series 40 platform. You will discover new tools that will help you to develop applications better and faster. Your apps will get the most out of the new Series 40 touch phones when you learn how to create a UI that perfectly fits to the full-touch interaction style. We’ll show you powerful new APIs to handle sensors, multipoint touch and virtual on-screen keyboards. If you already have an existing Java ME app, we will explain how to bring it to the latest generation of phones. We’ll end with an overview of resources available so you can learn more.
Nokia New Asha Platform Developer TrainingAndreas Jakl
In-depth look at the new opportunities and APIs of the Nokia Asha SDK, which enables you to develop apps for the latest phones like the Nokia Asha 501.
The training materials includes a quick overview of the refreshed UX, UI development and iconography, internationalization, phone / network / SIM state detection, file selections, notifications, radio tuner, maps, gestures and porting between different touch and non-touch devices.
The developer training was held by Mopius in Budapest on May 14th and was the world's first on-site training for the new Asha platform, just a few days after the platform's release.
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)Jonathan Engelsma
This lecture looks at multithreading and networking in Swift on iOS. We discuss why these concepts are important in the context of iOS programming and then demonstrate how the concepts are properly applied.
This lecture is part of a course intended to be an intensive and very compressed deep dive into iOS development in Swift. Visit the course web page to get copies of the course outline, lecture notes, sample code, etc.
Course website: http://www.themobilemontage.com/2015/05/12/ios-bootcamp-learning-to-create-awesome-apps-on-ios-using-swift/
This webinar opens by showing you the new features of Series 40 platform. You will discover new tools that will help you to develop applications better and faster. Your apps will get the most out of the new Series 40 touch phones when you learn how to create a UI that perfectly fits to the full-touch interaction style. We’ll show you powerful new APIs to handle sensors, multipoint touch and virtual on-screen keyboards. If you already have an existing Java ME app, we will explain how to bring it to the latest generation of phones. We’ll end with an overview of resources available so you can learn more.
Nokia New Asha Platform Developer TrainingAndreas Jakl
In-depth look at the new opportunities and APIs of the Nokia Asha SDK, which enables you to develop apps for the latest phones like the Nokia Asha 501.
The training materials includes a quick overview of the refreshed UX, UI development and iconography, internationalization, phone / network / SIM state detection, file selections, notifications, radio tuner, maps, gestures and porting between different touch and non-touch devices.
The developer training was held by Mopius in Budapest on May 14th and was the world's first on-site training for the new Asha platform, just a few days after the platform's release.
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)Jonathan Engelsma
This lecture looks at multithreading and networking in Swift on iOS. We discuss why these concepts are important in the context of iOS programming and then demonstrate how the concepts are properly applied.
This lecture is part of a course intended to be an intensive and very compressed deep dive into iOS development in Swift. Visit the course web page to get copies of the course outline, lecture notes, sample code, etc.
Course website: http://www.themobilemontage.com/2015/05/12/ios-bootcamp-learning-to-create-awesome-apps-on-ios-using-swift/
What’s Going On with the Adobe® Flash® Platform and why it is still Relevant ...Joseph Labrecque
Presented at #AEL12.
With the recent rise of web technologies like HTML5, it is important that the Flash Player continually evolve to remain the ideal technology platform for advanced interaction on the Web and beyond. Flash has always been an important enabler for education, and remains so. This session details the various enhancements, new functionality, and general improvements available in the new versions of Adobe Flash Player and Adobe AIR®.
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)Jonathan Engelsma
This lecture discusses the value of finding and incorporating third party libraries and frameworks into your iOS app. Why re-invent the wheel when you can developer a much better iOS app with less work? We mention a number of commonly used 3rd party iOS frameworks, and also provide short tutorial on using CocoaPods - the de facto standard for managing dependencies in iOS projects.
This lecture is part of a course intended to be an intensive and very compressed deep dive into iOS development in Swift. Visit the course web page to get copies of the course outline, lecture notes, sample code, etc.
Course website: http://www.themobilemontage.com/2015/05/12/ios-bootcamp-learning-to-create-awesome-apps-on-ios-using-swift/
The presentation outlines IBM/Lotus Mobile Solutions, including: Lotus Mobile Connect (VPN), Lotus Notes Traveler, Lotus Sametime, Lotus Connections, iNotes for iPhone, Lotus Expeditor, WebSphere Portal and others.
Presentation originally created by Reynout van Adrichem Boogaert.
An embedded operating system is an operating system for embedded computer systems.
These operating systems are designed to be compact, efficient, and reliable.
E-OS are frequently also real-time operating systems, and the term RTOS is often used as a synonym for embedded operating system.
Željko je razvijalec pri podjetju INFINUM, kjer sodeluje pri razvoju različnih Android aplikacij. Na predavanju je detaljno predstavil kaj nam novega prinaša Android 5.0 kot so Material design, ART runtime, MultiDexSupport in drugo ter odgovoril na vprašanje, zakaj bo Android tudi v prihodnosti najbolj zastopljen operacijski sistem na področju mobilnih tehnologij.
Mobile application development is the process of creating software applications that run on a mobile device, and a typical mobile application utilizes a network connection to work with remote computing resources. In these slide you will learn about basics of android operating system.
What’s Going On with the Adobe® Flash® Platform and why it is still Relevant ...Joseph Labrecque
Presented at #AEL12.
With the recent rise of web technologies like HTML5, it is important that the Flash Player continually evolve to remain the ideal technology platform for advanced interaction on the Web and beyond. Flash has always been an important enabler for education, and remains so. This session details the various enhancements, new functionality, and general improvements available in the new versions of Adobe Flash Player and Adobe AIR®.
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)Jonathan Engelsma
This lecture discusses the value of finding and incorporating third party libraries and frameworks into your iOS app. Why re-invent the wheel when you can developer a much better iOS app with less work? We mention a number of commonly used 3rd party iOS frameworks, and also provide short tutorial on using CocoaPods - the de facto standard for managing dependencies in iOS projects.
This lecture is part of a course intended to be an intensive and very compressed deep dive into iOS development in Swift. Visit the course web page to get copies of the course outline, lecture notes, sample code, etc.
Course website: http://www.themobilemontage.com/2015/05/12/ios-bootcamp-learning-to-create-awesome-apps-on-ios-using-swift/
The presentation outlines IBM/Lotus Mobile Solutions, including: Lotus Mobile Connect (VPN), Lotus Notes Traveler, Lotus Sametime, Lotus Connections, iNotes for iPhone, Lotus Expeditor, WebSphere Portal and others.
Presentation originally created by Reynout van Adrichem Boogaert.
An embedded operating system is an operating system for embedded computer systems.
These operating systems are designed to be compact, efficient, and reliable.
E-OS are frequently also real-time operating systems, and the term RTOS is often used as a synonym for embedded operating system.
Željko je razvijalec pri podjetju INFINUM, kjer sodeluje pri razvoju različnih Android aplikacij. Na predavanju je detaljno predstavil kaj nam novega prinaša Android 5.0 kot so Material design, ART runtime, MultiDexSupport in drugo ter odgovoril na vprašanje, zakaj bo Android tudi v prihodnosti najbolj zastopljen operacijski sistem na področju mobilnih tehnologij.
Mobile application development is the process of creating software applications that run on a mobile device, and a typical mobile application utilizes a network connection to work with remote computing resources. In these slide you will learn about basics of android operating system.
In this MWC/ADC 2013 presentation Attila Csipa, Technology Wizard at Nokia, provides an overview to development for Nokia Asha including Java ME and web apps. After comparing the development environments and their tools, Attila explores Java ME development in more details. He covers creating a project, running apps in the emulator, debugging, and deployment before mentioning where code examples can be found.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Developing For Nokia Asha Devices
1. Developing for the
Nokia Asha
Software Platform
Attila Csipa @achipa
SmartDevCon2
Katowice, 14. 09. 2013
2. Contents
What is Nokia Asha
Developer Offering
Java ME apps
Web apps
Nokia Asha UX basics
IDE/Tooling
Nokia IDE for Java
Emulator
Performance optimization
3. Series 40 (which is not Symbian nor S60)
First device in 1999, the Nokia 7110
(but don’t worry, Linux is actually 8 years older)
A Coca Cola company delivery truck in Knoxville, 1909.
4. A few years later…
- 1.5 billion devices by January 2012
- 650 million active (plenty of even touch devices)
- Freemium and ads DO work
North London Derby between Arsenal and Tottenham Hotspur at Highbury, 1934
5. But the world changed…
Women on motorcycles in Great Britain, 1930s
12. Nokia Asha Developer Offering
Nokia Asha SDK 1.0 (Java ME)
Nokia Asha web app tools 3.0.0
Xpress Web App Builder 1.0
13. One 3rd PARTY app running at a time!
Roger Bannister becomes the first human to run a mile in under 4 minutes. 1954
14. Nokia Asha SDK 1.0
Oracle® based Java ME implementation
New Nokia Public APIs
New emulator
Bundled libraries instead of plugins:
Here Maps for Java ME
Nokia Notifications API
LightWeight UI Toolkit (LWUIT)
Tantalum
On-Device Debugging
15. Nokia Asha Software Platform 1.0
the Java ME story
• Java ME MIDP 2.1, CLDC 1.1
• Optional JSRs
• Nokia APIs
• Max JAR file size: 5 Mb
• Max Java Heap: 3 Mb
• Screen Size: 240 x 320
• Series 40 Binary Compatibility
16. Yes, this is a resource constrained environment
Which also means that it rewards GOOD code instead of SLOPPY one
19. Emulator:
What can we do with it?
- Speeds up development cycle
- Use for screenshots!
- Customize input
- Keyboard/touch (pinch)
- Sensors (accelerometers, network, location)
- Multimedia (webcam)
- Content is at -
C:NokiaDevicesNokia_Asha_SDK_1_0binStorage10000
- Needs emulator restart if filesystem updated directly
- The number will increase (10002, etc) if multiple
simultaneous emulators run
20. On Device Debugging – for the nastiest bugs
From Harvard Mark II electromechanical computer's log, featuring a dead moth:
the first bug, 66 years ago
21. The joy of the first successful run
Annie Edison Taylor
The first person to survive going over Niagara Falls in a barrel, in 1901
24. API offering: extending the platform
CLDC 1.1
(JSR-139)
MIDP 2.1
(JSR-118)
File Connection and
PIM API
(JSR-75)
Bluetooth and OBEX
API
(JSR-82)
Wireless Messaging
API 1.0
(JSR-120)
Wireless Messaging
API 2.0
(JSR-205)
Mobile Media API
(JSR-135)
Web Services API
(JSR-172)
SATSA-CRYPTO API
(JSR-177)
Location API
(JSR-179)
Mobile 3D Graphics
API v1.0
(JSR-184)
Content Handler API
(JSR-211)
Scalable Vector
Graphics API
(JSR-226)
Advanced
Multimedia
Supplements
(JSR-234)
Mobile Sensor API
(JSR-256)
com.nokia.mid.medi
a
com.nokia.mid.ui
com.nokia.mid.ui
frameanimator
com.nokia.mid.ui
gestures
com.nokia.mid.ui
locale
com.nokia.mid.ui
orientation
com.nokia.mid.ui
categorybar
Mobile
Internationalization
(JSR-238)
File Select API
Image Scaling API Network State API Phone Info API Contact API
Nokia Notification
API (NNA)
Nokia In-App
Payment
25. New Nokia Asha Java APIs
ContactFile selectNetwork state Phone settings
Moving from Service APIs to a PUBLIC PLATFORM OFFERING
26. What if your app is not running/awake?
Before alarm clocks were affordable,
'knocker-ups' were used to wake
people early in the morning.
UK, around 1900
27. Nokia Notifications API - NNA
Public API
Push notification service
Shared connection
Custom payload
28. Nokia in-app payment
Device range
Reach
Security
Simplicity
Sign up to the invitational beta:
http://developer.nokia.com/Distribute/In-app_payment/
30. Broadest reach
• Operator billing live with
- 158 operators
- in 59 countries
Live Operators
■ Full Country coverage
■ Partial Country coverage
(status in April 2013)
40. LWUIT for Nokia Asha Software Platform 1.0
• New port of LWUIT, targeting specifically new Asha platform
• Based on the LWUIT for Series 40 v1.0
• Adds Nokia Asha Software Platform 1.0 Theme
• Adds 8 new components
• Changes and adaptations of existing components to new Asha platform
• Improved performance especially in themes memory usage.
• 24 Examples in SDK
• Double-check you’re including the right JAR!
41. Nokia Asha web apps - Tools
Xpress-Browser powered
Requires a data connection
Web apps != HTML5 (!!!)
Nokia Asha web app tools 3.0
Backwards compatible with Series 40 web apps
Simulator support for Nokia Asha 1.0 devices
USB deployment of web apps on Nokia Asha 1.0 devices
42. TESTING IS BEST DONE ON
(SOMEBODY ELSE‘S) DEVICE
Testing a bullet proof vest c.1923
43. Remote Device Access
• Free for Nokia Developer users
• Deploy & Test apps
www.developer.nokia.com/Devices/Remote_device_access/
• Now with the Asha 501(s)!
45. Why Optimize
Most of the development tasks for the typical mobile
application can be done in many different ways.
Different implementation techniques lead to different
application performance and essentially different
responsiveness of user interface.
Responsiveness of UI is one of the important factors for
application success.
46. • 0.1 second is about the limit for having the user feel that the system is
reacting instantaneously, meaning that no special feedback is necessary
except to display the result.
• 1.0 second is about the limit for the user's flow of thought to stay
uninterrupted, even though the user will notice the delay. Normally, no special
feedback is necessary during delays of more than 0.1 but less than 1.0
second, but the user does lose the feeling of operating directly on the data.
• 10 seconds is about the limit for keeping the user's attention focused on
the dialogue. For longer delays, users will want to perform other tasks while
waiting for the computer to finish, so they should be given feedback indicating
when the computer expects to be done. Feedback during the delay is
especially important if the response time is likely to be highly variable, since
users will then not know what to expect.
Miller, R. B. (1968)
Response time in man-computer conversational transactions.
Proc. AFIPS Fall Joint Computer Conference Vol. 33, 267-277
52. Perception of speed
• Responsiveness – what you believe is more important
than what you actually see
• Visual updates to acknowledge input
• Draw when you can, not when ready
• Speed != throughput
53. Parallelize! (concurrency)
• 1 core != 1 system
• Threading is needed to unleash maximum potential
• You need to do it Right TM
• Typical failure to do so: slow, unresponsive Uis
• On Ashas, you will want 4-5 threads, depending on use-
case
54. Threading pitfalls
- Too many long running threads
- Hard to debug
- Complexity
The last four couples standing in a dance marathon. Chicago, c. 1930
57. File io: make it a habit
Write files as you go
…in a Worker thread…
…flush occasionally...
…don’t do it byte by byte
(do outputStream.write(byte[] buffer)
Don’t wait for it to pile up (especially for cases of
destroyApp())
58. That pesky 5mb jar size limit
• Obfuscate. Always.
• Reduce image quality/size
• Use large(r) images and clip them (w Sprite class)
• Keep text strings in separate files – they compress better
• Keep data in RMS
• Treat your store JAR as an online installer (runs on it’s
own, maybe bundle with first few levels, download rest as
needed)
• Silver lining:
Small JARs mean less failed DLs
User gets to interact with your app sooner
59. Architecture Changes
• Carefully consider architecture of your drawing loop and
user input loops and decouple them whenever possible.
• Explore WeakReference introduced in CLDC 1.1 for
memory management.
60. How much memory do we REALLY need?
• 1024 items
• 1KB per item
• Minimum memory required: 1MB
8KB!
61. WeakReference object Caching
• Best pattern for using all available heap memory, but never running
into the dreaded OutOfMemoryError.
• CLDC 1.1 WeakReference
• When an object is referenced by a WeakReference, and not using
traditional Object pointers, this is a signal to the garbage collector
that is has permission to collect the object if memory is running low.
• You have to maintain own HashTable of Objects
• To understand this pattern better look at Tantalum Mobile:
• https://github.com/TantalumMobile/
62. Treat the garbage collector as a friend, not
as a slave
• Pay attention to scoping
• Set variables to null manually when they are no longer
needed
• Be careful with hidden references (inner classes on EDT or
workers)
• If you are calling System.gc(), you’re doing it wrong
63. Render Caching
• One of the common performance needs is to make your
application paint, in particular scroll, smoothly and quickly.
• You can paint items each into their own Image, keeping that
pre-painted Image in a cache, and reusing it as the object
moves around the screen. Essentially, WeakReference cache of
pre-painted Images.
• To understand this pattern better look at Tantalum Mobile:
• http://projects.developer.nokia.com/Tantalum
64. File System (Flash Memory) Caching
• Flash memory is slow, but faster then Web.
• Cache downloaded data from previous session. Improve startup time
of app, by loading from disk cache instead of new Web requests.
• RMS and File System (JSR-75) same speed, but with RMS no security
prompts.
• Underwater stones: still remember, Flash memory is slow.
• Architect your application to use asynchronous loading /saving of
data from / to disk cache.
65. Performance summary
•Work with your interaction designer to
find and/or make cheat zones
−Hide activity not just behind splash screens, but also
dialogs, alerts
−Predict user activity to appear “instant-ready”
66. Summary
• Huge untapped market, plenty of devices even if you
count only touch enabled ones
• (Surprisingly?) Java ME with Canvas, LCDUI or LWUIT UIs
paired with a reasonable amount of APIs allows for rich
functionality
• Coding for Asha will make you more aware of resources,
UX, and thus make you a better developer for all the
other platforms, too