Différentes approches et stratégies qu'on peut emprunter pour adapter son application à des téléphones d'entrée de gammes et aussi limiter la consomation de données.
Denodo, pilier central de votre stratégie APIDenodo
https://bit.ly/2TGvsG9
L'une des idées fondamentales derrière la virtualisation des données est le découplage des sources de données avec les méthodes de consommation. Pourquoi le besoin en requêtes de données dans JSON sur HTTP devrait-il nécessiter du développement supplémentaire? Denodo fournit un accès immédiat à ses ensembles de données via REST, OData 4, GeoJSON et d'autres protocoles, sans codage requis. Facile à faire évoluer, cloud-compatible et directement intégrable aux plateformes de gestion d'API, Denodo est l'outil idéal pour réussir votre stratégie API !
Dans cette session, nous aborderons les points suivants :
- Le rôle de Denodo dans une stratégie API
- L’intégration entre Denodo et les autres éléments du stack API, comme les plateformes de gestion d'API
- La facilité d'accès à Denodo en tant que fournisseur d’API REST
- Les options avancées des services Web Denodo: authentification via OAuth ou SAML, documentation OpenAPI, capacités géographiques, etc.
ASFWS 2012 - Le développement d’applications sécurisées avec Android par Joha...Cyber Security Alliance
Les plateformes mobiles prolifèrent et sont maintenant utilisées pour accéder à toutes sortes de données, dont certaines assez sensibles (par exemple bancaires). Les Smartphones deviennent logiquement une cible pour les “hackers”.
La plateforme Android largement majoritaire, n’a pas été initialement conçue en mettant en avant la sécurité, ce que Google tente peu à peu de corriger. Les menaces sur le système Android sont nombreuses.
En particulier, les applications développées en Java puis ensuite distribuées sous forme de bytecode offrent peu de résistance au “reverse engineering” et les solutions d’obfuscation (comme Proguard) restent limitées.
Dans le même temps, la publication d’applications sur le Google Play Store n’est pas soumise à validation comme par exemple dans l’Apple Store. Les applications mal intentionnées ne sont retirées qu’après coup. Dans ce contexte, les hackers peuvent alors tranquillement étudier le comportement interne d’une application, la copier, lui injecter du code malicieux, la republier puis attendre qu’elle opère jusqu’à ce qu’elle soit retirée.
Si les mécanismes de sécurité Android sont encore incomplets, l’ouverture de la plateforme offre, en revanche, de nouvelles possibilités très intéressantes. En utilisant judicieusement ces dernières, il devient possible de diminuer drastiquement la surface d’attaque, notamment dans le contexte de la menace précitée.
La présentation décrira et illustrera la liste de mesures que nous avons mises en oeuvre pour protéger notre application d’authentification forte. Nous montrerons dans notre exposé comment obtenir une application unique pour chaque utilisateur et comment la lier fortement au hardware de manière à rendre la copie et la modification fortement improbables. Les techniques que nous présenterons sont innovantes et encore peu utilisées… mis à part par certains malwares avancés.
Retour d'expérience du métier d'architecte logicielMik_Arber
Mener à bien un développement logiciel est une tâche très difficile et cela pour de multiple raisons. Une majorité de projets rencontrent des problèmes importants sur la qualité, les coûts, les délais, les performances etc… L’architecte logiciel peut avoir un impact direct ou indirect sur ces enjeux.
Malheureusement, le terme architecte logiciel est très souvent galvaudé par une vision simpliste du poste. A contrario, connaître sa richesse permet d’améliorer, de manière importante, la bonne marche des projets.
Ensemble nous allons voir les principaux enjeux de la production logicielle et comment l’architecte peut apporter sa plus-value. Plusieurs exemples concrets viendront illustrer ces problématiques.
Pour finir une méthode de travail, centrée sur l’architecte, sera exposée de manière chronologique, cela aidant à la maîtrise de la création de logiciel.
Android workshop - Bootcamp du Mauriapp Challenge 2016Hadina RIMTIC
Présentation Android lors du Bootcamp de formation organisé pour les startupers participants à la deuxieme edition du Mauriapp Challenge.
All right reserved to @hadinarimtic
Denodo, pilier central de votre stratégie APIDenodo
https://bit.ly/2TGvsG9
L'une des idées fondamentales derrière la virtualisation des données est le découplage des sources de données avec les méthodes de consommation. Pourquoi le besoin en requêtes de données dans JSON sur HTTP devrait-il nécessiter du développement supplémentaire? Denodo fournit un accès immédiat à ses ensembles de données via REST, OData 4, GeoJSON et d'autres protocoles, sans codage requis. Facile à faire évoluer, cloud-compatible et directement intégrable aux plateformes de gestion d'API, Denodo est l'outil idéal pour réussir votre stratégie API !
Dans cette session, nous aborderons les points suivants :
- Le rôle de Denodo dans une stratégie API
- L’intégration entre Denodo et les autres éléments du stack API, comme les plateformes de gestion d'API
- La facilité d'accès à Denodo en tant que fournisseur d’API REST
- Les options avancées des services Web Denodo: authentification via OAuth ou SAML, documentation OpenAPI, capacités géographiques, etc.
ASFWS 2012 - Le développement d’applications sécurisées avec Android par Joha...Cyber Security Alliance
Les plateformes mobiles prolifèrent et sont maintenant utilisées pour accéder à toutes sortes de données, dont certaines assez sensibles (par exemple bancaires). Les Smartphones deviennent logiquement une cible pour les “hackers”.
La plateforme Android largement majoritaire, n’a pas été initialement conçue en mettant en avant la sécurité, ce que Google tente peu à peu de corriger. Les menaces sur le système Android sont nombreuses.
En particulier, les applications développées en Java puis ensuite distribuées sous forme de bytecode offrent peu de résistance au “reverse engineering” et les solutions d’obfuscation (comme Proguard) restent limitées.
Dans le même temps, la publication d’applications sur le Google Play Store n’est pas soumise à validation comme par exemple dans l’Apple Store. Les applications mal intentionnées ne sont retirées qu’après coup. Dans ce contexte, les hackers peuvent alors tranquillement étudier le comportement interne d’une application, la copier, lui injecter du code malicieux, la republier puis attendre qu’elle opère jusqu’à ce qu’elle soit retirée.
Si les mécanismes de sécurité Android sont encore incomplets, l’ouverture de la plateforme offre, en revanche, de nouvelles possibilités très intéressantes. En utilisant judicieusement ces dernières, il devient possible de diminuer drastiquement la surface d’attaque, notamment dans le contexte de la menace précitée.
La présentation décrira et illustrera la liste de mesures que nous avons mises en oeuvre pour protéger notre application d’authentification forte. Nous montrerons dans notre exposé comment obtenir une application unique pour chaque utilisateur et comment la lier fortement au hardware de manière à rendre la copie et la modification fortement improbables. Les techniques que nous présenterons sont innovantes et encore peu utilisées… mis à part par certains malwares avancés.
Retour d'expérience du métier d'architecte logicielMik_Arber
Mener à bien un développement logiciel est une tâche très difficile et cela pour de multiple raisons. Une majorité de projets rencontrent des problèmes importants sur la qualité, les coûts, les délais, les performances etc… L’architecte logiciel peut avoir un impact direct ou indirect sur ces enjeux.
Malheureusement, le terme architecte logiciel est très souvent galvaudé par une vision simpliste du poste. A contrario, connaître sa richesse permet d’améliorer, de manière importante, la bonne marche des projets.
Ensemble nous allons voir les principaux enjeux de la production logicielle et comment l’architecte peut apporter sa plus-value. Plusieurs exemples concrets viendront illustrer ces problématiques.
Pour finir une méthode de travail, centrée sur l’architecte, sera exposée de manière chronologique, cela aidant à la maîtrise de la création de logiciel.
Android workshop - Bootcamp du Mauriapp Challenge 2016Hadina RIMTIC
Présentation Android lors du Bootcamp de formation organisé pour les startupers participants à la deuxieme edition du Mauriapp Challenge.
All right reserved to @hadinarimtic
Bonitasoft - Vue générale de l’architecture de la plateforme BonitaBonitasoft
Vous découvrez Bonita ? Ou peut être avez vous déjà eu l’occasion de réaliser une première application ? Quelque soit votre niveau d’expertise sur la plateforme Bonita, cette présentation va vous permettre d’avoir un aperçu de ce que Bonita permet de faire.
Quelques semaines après la sortie d'Android 7.0, Google a annoncé une nouvelle version mineure en même temps que ses smartphones Pixel.
On note cinq fonctionnalités principales :
- Les icônes rondes
- Un nouvel Intent
- Les metadonnées des fonds d'écran animés (live wallpapers)
- L'insertion d'images depuis le clavier
- Les App Shortcuts
La Duck Conf - "Edge computing : le déploiement continu se fait une virée en ...OCTO Technology
Présentation de Jordan Afonso - OCTO Technology
En plein essor de l’IoT, posons-nous les questions structurantes
concernant le déploiement et l'intégration continue sur des
devices. A travers le REX d’un projet pour un équipementier
automobile, nous découvrirons l’architecture mise en place
depuis le capteur embarqué jusqu’au service pour l’occupant
du véhicule. CI/CD, Edge Computing, IaC, conteneurs et
serverless : parcourons la liste des choix techniques engagés
pour développer des cas d’usage autour des véhicules
connectés.
Web au logiciel desktop avec Tauri - Don Nermed.pdfGDG Bujumbura
Le sujet est basé sur Tauri, une technologie venant du langage Rust. Je vais faire une introduction de Tauri et comment l'intégrer dans une application web pour avoir un logiciel desktop
Unleashing the power of Unit Testing - Franck Ninsabira.pdfGDG Bujumbura
I will be talking about the power of unit and integration testing, what they bring onto the table for the developer and how test containers can change the game for better.
Bonitasoft - Vue générale de l’architecture de la plateforme BonitaBonitasoft
Vous découvrez Bonita ? Ou peut être avez vous déjà eu l’occasion de réaliser une première application ? Quelque soit votre niveau d’expertise sur la plateforme Bonita, cette présentation va vous permettre d’avoir un aperçu de ce que Bonita permet de faire.
Quelques semaines après la sortie d'Android 7.0, Google a annoncé une nouvelle version mineure en même temps que ses smartphones Pixel.
On note cinq fonctionnalités principales :
- Les icônes rondes
- Un nouvel Intent
- Les metadonnées des fonds d'écran animés (live wallpapers)
- L'insertion d'images depuis le clavier
- Les App Shortcuts
La Duck Conf - "Edge computing : le déploiement continu se fait une virée en ...OCTO Technology
Présentation de Jordan Afonso - OCTO Technology
En plein essor de l’IoT, posons-nous les questions structurantes
concernant le déploiement et l'intégration continue sur des
devices. A travers le REX d’un projet pour un équipementier
automobile, nous découvrirons l’architecture mise en place
depuis le capteur embarqué jusqu’au service pour l’occupant
du véhicule. CI/CD, Edge Computing, IaC, conteneurs et
serverless : parcourons la liste des choix techniques engagés
pour développer des cas d’usage autour des véhicules
connectés.
Web au logiciel desktop avec Tauri - Don Nermed.pdfGDG Bujumbura
Le sujet est basé sur Tauri, une technologie venant du langage Rust. Je vais faire une introduction de Tauri et comment l'intégrer dans une application web pour avoir un logiciel desktop
Unleashing the power of Unit Testing - Franck Ninsabira.pdfGDG Bujumbura
I will be talking about the power of unit and integration testing, what they bring onto the table for the developer and how test containers can change the game for better.
Science-Fiction - The forgotten art of designing better technologies - Josue....GDG Bujumbura
How science fiction has been used to explore complex social and ethical issues, such as climate change, social inequality, and the ethics of artificial intelligence
Remote Sensing for Land Cover Mapping in Google Earth Engine - HAMENYIMANA Is...GDG Bujumbura
The Google Earth Engine (GEE) Explorer is a simple web interface to the Earth Engine application program interface (API). Anyone can visualize data provided in the public data catalog whereas the code editor is a web-based integrated development environment (IDE) for the GEE JavaScript API. Code editor
requires a ‘trusted tester’ access in which the user has to login into their Gmail account.
LLMs for the “GPU-Poor” - Franck Nijimbere.pdfGDG Bujumbura
Struggling with limited GPU resources but want to leverage large language models (LLMs)? This session provides a deep dive into cutting-edge LLM compression methods like quantization, pruning, and knowledge distillation. Learn how to efficiently run LLMs without sacrificing performance. Ideal for data scientists, machine learning engineers, and AI enthusiasts keen on cost-effective solutions. Includes a 5-minute Q&A.
Les outils et compétences nécessaires pour le développement en remote - Ce...GDG Bujumbura
Dans cette session nous allons partager sur les outils qu'un développeur a besoin pour intégrer le travail en remote, tout en se basant sur les outils offert par Google comme: Google Meet, Google Calendar, mais aussi d'autres outils comme GitHub, slack, trello.
Nous allons partager sur comment s'organiser quand on travaille dans une équipe en remote, comment organiser ses taches ....
La diversité et la véracité de l'IA dans la vie de tous les jours avec un ...GDG Bujumbura
Dans la vie de tous les jours l'IA devient très complexe pour nous aide a rendre certaines taches plus réaliste. Le vif de ce sujet je démontre un système de surveillance de la somnolence du conducteur utilisant le comportement visuel et l'apprentissage automatique. On réagit aux performances et à l'automatisation que nous accorde IA.
Web au logiciel desktop avec Tauri - Don Nermed.pdfGDG Bujumbura
Le sujet est basé sur Tauri, une technologie venant du langage Rust. Je vais faire une introduction de Tauri et comment l'intégrer dans une application web pour avoir un logiciel desktop
This presentation will cover some of the essential Flutter packages and plugins that can help you create high-quality mobile apps with ease. We will explore the following four tools:
1. google_mobile_ads: This package offers a simple and effective way to monetize your mobile app by integrating Google AdMob ads. With its comprehensive documentation and ease of use, you can easily add ads to your app and start earning revenue.
2. geolocator: This plugin provides accurate and up-to-date location information, making it an essential tool for apps that require geolocation services. With its simple API and support for both Android and iOS, you can easily integrate location-based features into your app.
3. Drift and Hive: These two packages offer structured local storage solutions that can help you save and retrieve data in a fast and efficient manner. Drift is an object-oriented database that provides type safety, while Hive is a lightweight and fast key-value store that supports multiple platforms.
4. Web sockets: This plugin provides a bidirectional communication channel between the app and a server, enabling real-time data transfer. With its support for multiple platforms and event-driven architecture, you can easily build chat apps, live updates, and more.
By incorporating these packages and plugins into your Flutter app development workflow, you can significantly enhance your app's functionality and user experience.
Women in Tech : The Community - Seilla NkurunzizaGDG Bujumbura
During DevFest Bujumbura 2021, Seilla presents about WTM - Women Tech Makers, a community of women in the tech sphere sharing about their successes and resources from Google
7. Proprietary + Confidential
Proprietary + Confidential
Réduction de la taille des téléchargement
30% de réduction pour Twitter sur Android
Avant
Après
Base
Traductions
Images
Elements
d’interface
9
11. Proprietary + Confidential
Proprietary + Confidential
Android Size Analyzer
Le plugin Android Size Analyzer fournit des recommandations pour
optimiser l’usage de vos photos et illustrations:
● Éviter d’inclure des images de grande taille,
● Utiliser des formats permettant la compression des images,
● etc…
13
12. Proprietary + Confidential
Proprietary + Confidential
Imagerie vectorielle
VectorDrawables est le système d’imagerie vectorielle d’Android:
● Fichier plus légers
● Agrandissement sans perte de qualité
Le format VectorDrawables est comparable au SVG (idéal pour les illustrations).
15
13. Proprietary + Confidential
Proprietary + Confidential
La fonctionnalité Vector Asset
Studio d’Android Studio vous
permet de convertir vos fichier
SVG en VectorDrawables.
Vector Asset Studio
17
14. Proprietary + Confidential
Proprietary + Confidential
Images au format WebP
WebP est une alternative aux formats de compression d’image JPEG ou PNG.
JPEG 263 kb
WebP 93 kb
18
15. Proprietary + Confidential
Proprietary + Confidential
Images au format WebP
● WebP est supporté à partir d’Android 3.2 (API level 13)
● Image converter dans Android Studio permet la conversion
19
17. Proprietary + Confidential
Proprietary + Confidential
Reduction du code source
R8 effectue une réduction du code source pour ne garder uniquement l’essentiel à
l’exécution de l’application.
android {
...
buildTypes {
getByName("release") {
isMinifyEnabled = true
...
}
}
}
isMinifyEnabled=true effectue aussi nombre d’optimisations pour Kotlin.
22
21. Proprietary + Confidential
Proprietary + Confidential
Network Profiler dans
Android Studio permet
l’affichage et l’analyse des
appels HTTP en temps réel.
Accessible via View > Tool
Windows > Profiler ou le
bouton Profile dans la
barre d’outils et sélectionnez
“RÉSEAU”.
Proprietary + Confidential
Analyse des appels HTTP
26
23. Proprietary + Confidential
Proprietary + Confidential
HttpsURLConnection
Pas de dépendances
Approche ancienne et
daté
Cache HTTP
Ajouter un cache HTTP
Volley
Fonctionnalités
avancées
Cache par défaut
Compliqué à
appréhender
Dépendances externes
OkHttp
Facile à appréhender
Populaire et bien
documenté
Dépendances externes
Cronet
Fonctionnalités
avancées
Utilisé par Youtube,
Google Photo, Maps
Dépendances externes
30
24. Proprietary + Confidential
Proprietary + Confidential
Cache d’image
Ajouter un cache d’image
Picasso
Facile à appréhender
Populaire et bien
documenté
Dépendances
externes
Glide
Optimisé pour la
rapidité et fluidité.
Dépendances
externes
Fresco
JPEG en téléchargement
progressif
Transformation d’images
Dépendances
modulaires
Compliqué à
appréhender
Coil
Optimisé pour Kotlin et
coroutines
Facile à appréhender
Bonne compatibilité
avec R8
Seulement pour Kotlin
31
27. Proprietary + Confidential
Consommation Énergétique
Sources de consommation:
Tâches CPU intensives (traitement d’image ou de son, compression de
fichier, ML, etc…)
Utilisation de l’écran sur de longues périodes
Utilisation du GPS
Activité réseau
34
28. Proprietary + Confidential
Proprietary + Confidential
Energy Profiler d’Android
Studio permet d’identifier les
sources de consommation
dans votre application.
Accessible via View > Tool
Windows > Profiler ou le
bouton Profile dans la barre
d’outils et sélectionnez
“ENERGIE”.
Proprietary + Confidential
Analyse énergétique
35