Why and How should you approach to Android Security in architecting phase, implementation phase, and operation phase.
This includes what type of secure planning should be considered in term of business domain, what type of universal secure coding should be done. It also talks about how should you store keystores and its password in safe manner.
Fearless Internationalization and Localization Across the NationsSiena Aguayo
Many people are intimidated by localization (l10n) and internationalization (i18n) but they don’t have to be—Android provides many tools out of the box to aide you in global domination. Learn what to watch out for while coding your app that will make your life easier once you receive localized content. We’ll cover alternate resources, strings files, date and number formatters and other tips from Android Studio, Google, and third parties that will turn you into an i18n and l10n champion.
This talk was given at Droidcon NYC on August 27th, 2015.
These slides were revised for DroidKaigi in Tokyo, presented on February 19th, 2016.
Fearless Internationalization and Localization Across the NationsSiena Aguayo
Many people are intimidated by localization (l10n) and internationalization (i18n) but they don’t have to be—Android provides many tools out of the box to aide you in global domination. Learn what to watch out for while coding your app that will make your life easier once you receive localized content. We’ll cover alternate resources, strings files, date and number formatters and other tips from Android Studio, Google, and third parties that will turn you into an i18n and l10n champion.
This talk was given at Droidcon NYC on August 27th, 2015.
These slides were revised for DroidKaigi in Tokyo, presented on February 19th, 2016.
Annotation processing allows for metadata to be added to Java programs without altering the program itself. Annotations can be defined and used to provide information for compilers or allow runtime/compile-time processing. Annotation processors provide a hook into the Java compilation process to generate source code and compile errors/warnings. They work by processing annotated elements in rounds. Testing annotation processors is challenging but libraries like Google's compile-testing library can help. Annotation processing also works on Android by setting up the processor as a Java module and using plugins like android-apt.
This document provides an overview of Chrome and Android technologies from the past to the future. It discusses the evolution of WebView from WebKit to Chromium. It also covers Chrome Custom Tabs, which allows apps to use Chrome to display web content. Additionally, it mentions progressive web apps, service workers, app install banners, and streaming apps. The document promotes using new web technologies to provide native-like experiences within browsers.
The document describes how to use RxJava to make asynchronous API calls and handle the results. It defines a searchRecipe method that returns an Observable object to search for recipes by keyword. Subscribers can subscribe to the Observable and handle the onNext, onError and onCompleted events to update the UI in response to the API call results. Operators like map, subscribeOn and observeOn are used to modify the Observable stream and control threading.
1) The presenter discussed several techniques for animating paths in Android including using the cubicTo, op, and TypeEvaluator methods.
2) Interpolators were explained as defining the rate of change of animations through acceleration and deceleration.
3) Methods for extracting paths from Illustrator using ExtendScript Toolkit were presented.
This document summarizes a presentation about React Native given at DroidKaigi 2017. It discusses how React Native allows building native Android and iOS apps using React by rendering UI components to native platform views. It describes how React Native maps React components to native platform views, implements native modules to access platform features, and uses the JavaScript bridge to allow calling native code from JavaScript. It highlights how React Native enables writing once and deploying to both Android and iOS with shared JavaScript code.
The document discusses streaming media and how it allows for real-time delivery of audio and video over the internet. Streaming avoids the need to download entire files before viewing or listening by allowing content to be played as it is delivered. However, steady and fast internet connection speeds are required to maintain uninterrupted playback of streamed content.
Building Quality Experiences for Users in Any LanguageJohn Collins
Companies are striving for a friendly tone with their content and also taking it to other cultures. Those two content goals seem to be at odds, but they don’t have to be. How do you reconcile more casual writing for content that will be translated into other languages? We’ll look at how to craft quality content for all users, regardless of their language. We’ll cover pitfalls to avoid and tactics to use for creating friendly English that yields pleasing translations.
The ruby on rails i18n core api-Neeraj KumarThoughtWorks
Across the world, natural or regional languages differ in many ways, (e.g. in pluralization rules). Therefore, Internationalization became a complex problem and it is hard to provide tools for solving all problems at once. Sven Fuchs focused to provide an extensible framework and easy to use gem that is Ruby I18n (internationalization) gem.
The Ruby I18n gem is mainly designed for translating your application to a single custom language other than English or for providing multi-language support for your ruby on rails application. The pivotal point of the new I18n api in Rails is the I18n module which is provided as a gem and shipped with Rails (starting from Rails 2.2) in ActiveSupport’s vendor directory.
Therefore, during my presentation I will try to go over some of the advanced optional features and architecture of I18n gem. Besides, I will also try to cover begin with I18n gem, setup, benefits, the work flow, what's in? and what's not? Etc.
The document provides details for a translation project, including instructions for the vendor. The vendor is asked to submit a project cost using the provided template, provide a word count per language, and reply to the original email without changing the subject for any correspondence. The project involves translating an English document to Arabic with the translated files to look as similar as possible to the original. The vendor must include one validation cycle in their cost estimate and compile their translation memories.
Python can learn from Java's approach to concurrency, garbage collection, and collections. Java offers more optimized and specialized collection types than Python for performance-critical applications. It also provides better tools for profiling, debugging, and managing shared mutable state in a concurrent environment without relying on global interpreter locks. While rewriting core Python functionality in C is challenging, projects like PyPy and RPython show promise in growing Python into a more performant and "growable" language like Java.