DrupalCampNYC 10 - Native mobile apps with Drupalzroger
Eric Duran and Roger López discuss the benefits and challenges of building
the native iOS and Android DrupalCampNYC apps.
Topics include:
Why native? Why not use PhoneGap or Titanium?
A quick look at how each app was built:
What libraries were used.
How was Drupal used.
How to get started with each platform.
Difficulties learning a new language and platform.
Crea il TUO database con LevelDB e Node.jsMatteo Collina
Avete mai pensato di scrivere un vostro database? Un Key/Value store, o un database documentale? Oppure un Graph DB? O magari volete un database che si sincronizzi fra Browser e Server in modo trasparente? Nodebase è il movimento che fa per voi!
Un gruppo di mad scientist nella comunità Node.js hanno preso l'ultraveloce LevelDB e hanno sviluppato decine di piccole librerie che consentono di aggiungerci tutte le funzionalità di cui avete bisogno, dalla replicazione all'indicizzazione: stiamo parlando di LevelUp!
In the ”Internet of Things” (IoT) vision the physical world blends with virtual one, while machine-to-machine interaction improve our daily life. Clearly, how these virtual objects are exposed to us is critical, so that their user interface must be designed to support the easiness of usage that is driven by the users’ needs, which is different from what machines requires. These two requirements must be solved, and an integrated solution should emerge, if we want to bring the IoT to the 50 billions network that is predicted to became in the next years.
In this talk, you will see how these requirements cannot be met by the same communication protocol, as the user interfaces dictates a way of communication that is no suitable for the "machines". We will analyze what are the state-of-art protocols for both machines and users, and finally we will propose a solution to solve this problem.
DrupalCampNYC 10 - Native mobile apps with Drupalzroger
Eric Duran and Roger López discuss the benefits and challenges of building
the native iOS and Android DrupalCampNYC apps.
Topics include:
Why native? Why not use PhoneGap or Titanium?
A quick look at how each app was built:
What libraries were used.
How was Drupal used.
How to get started with each platform.
Difficulties learning a new language and platform.
Crea il TUO database con LevelDB e Node.jsMatteo Collina
Avete mai pensato di scrivere un vostro database? Un Key/Value store, o un database documentale? Oppure un Graph DB? O magari volete un database che si sincronizzi fra Browser e Server in modo trasparente? Nodebase è il movimento che fa per voi!
Un gruppo di mad scientist nella comunità Node.js hanno preso l'ultraveloce LevelDB e hanno sviluppato decine di piccole librerie che consentono di aggiungerci tutte le funzionalità di cui avete bisogno, dalla replicazione all'indicizzazione: stiamo parlando di LevelUp!
In the ”Internet of Things” (IoT) vision the physical world blends with virtual one, while machine-to-machine interaction improve our daily life. Clearly, how these virtual objects are exposed to us is critical, so that their user interface must be designed to support the easiness of usage that is driven by the users’ needs, which is different from what machines requires. These two requirements must be solved, and an integrated solution should emerge, if we want to bring the IoT to the 50 billions network that is predicted to became in the next years.
In this talk, you will see how these requirements cannot be met by the same communication protocol, as the user interfaces dictates a way of communication that is no suitable for the "machines". We will analyze what are the state-of-art protocols for both machines and users, and finally we will propose a solution to solve this problem.
Making things that works with us codemotionMatteo Collina
In the ”Internet of Things” (IoT) vision the physical world blends with virtual one, while machine-to-machine interaction improve our daily life. Clearly, how these virtual objects are exposed to us is critical, so that their user interface must be designed to support the easiness of usage that is driven by the users’ needs, which is different from what machines requires. These two requirements must be solved, and an integrated solution should emerge, if we want to bring the IoT to the 50 billions network that is predicted to became in the next years.
In this talk, you will see how these requirements cannot be met by the same communication protocol, as the user interfaces dictates a way of communication that is no suitable for the "machines". We will analyze what are the state-of-art protocols for both machines and users, and finally we will propose a solution to solve this problem.
Building a multi protocol broker for the internet of things using nodejsMatteo Collina
Have you ever wondered how to interconnect your apps with physical things? Have you ever felt that the request/response pattern of HTTP is not enough? What about a binary protocol? In this talk you will discover the internal of the open source QEST broker, a Node.js-based broker for the Internet of Things that implements a classic publish/subscribe pattern, while making it accessible from HTTP and MQTT, an ultra-fast binary protocol.
No. la sottile arte di trovare il tempo dove non esite - codemotion 2015Matteo Collina
Non abbiamo mai tempo per fare nulla. Quante volte avete detto: "Vorrei rilasciare un progetto Open Source" oppure "Vorrei studiare Obj-C e imparare a fare App!". E poi andate su GitHub e trovate persone che hanno rilasciato o contributo a CENTINAIA di progetti, conoscono 6-7 linguaggi di programmazione diversi e parlano a conferenze in giro per l'Italia e l'Europa. Come fanno a gestire il tempo? Sono più bravi di noi? NO è la risposta.
Today's trending technologies is tomorrows popular technologies, be updated with the most trending technologies and choose the technology that fits with your business needs.
In the ”Internet of Things” (IoT) vision the physical world blends with virtual one, while machine-to-machine interaction improve our daily life. Clearly, how these virtual objects are exposed to us is critical, so that their user interface must be designed to support the easiness of usage that is driven by the users’ needs, which is different from what machines requires. These two requirements must be solved, and an integrated solution should emerge, if we want to bring the IoT to the 50 billions network that is predicted to became in the next years.
How To Combine Back-End & Front-End Testing with BlazeMeter & Sauce LabsSauce Labs
Sauce Labs and BlazeMeter teamed up for an awesome webinar, giving step-by-step instructions on how to get real-world results from your front end while applying load to the backend.
This lecture is intended to introduce the concepts and terminology used in Quantum Computing, to provide an overview of what a Quantum Computer is, and why you would want to program one.
The material here is using very high level concepts and is designed to be accessible to both technical and non-technical audiences.
Some background in physics, mathematics and programming is useful to help understand the concepts presented.
You can develop native mobile applications using HTML/CSS/JS with the help of PhoneGap. I will show you how to achieve the best possibe native experience using web technologies and optimize your workflow with automation.
IONIC VS. REACT NATIVE – WHICH FRAMEWORK IS BETTER FOR CROSS-PLATFORM MOBILE ...Laura Miller
Yes, you read it correctly. We are speaking about the Native Cross-platform Mobile App Development. Now, you do not need to bang your head in determining whether to opt for Native or for cross-platform mobile app development. What you need is a consolidation of both in one mobile app offering duel benefits.
Making things that works with us codemotionMatteo Collina
In the ”Internet of Things” (IoT) vision the physical world blends with virtual one, while machine-to-machine interaction improve our daily life. Clearly, how these virtual objects are exposed to us is critical, so that their user interface must be designed to support the easiness of usage that is driven by the users’ needs, which is different from what machines requires. These two requirements must be solved, and an integrated solution should emerge, if we want to bring the IoT to the 50 billions network that is predicted to became in the next years.
In this talk, you will see how these requirements cannot be met by the same communication protocol, as the user interfaces dictates a way of communication that is no suitable for the "machines". We will analyze what are the state-of-art protocols for both machines and users, and finally we will propose a solution to solve this problem.
Building a multi protocol broker for the internet of things using nodejsMatteo Collina
Have you ever wondered how to interconnect your apps with physical things? Have you ever felt that the request/response pattern of HTTP is not enough? What about a binary protocol? In this talk you will discover the internal of the open source QEST broker, a Node.js-based broker for the Internet of Things that implements a classic publish/subscribe pattern, while making it accessible from HTTP and MQTT, an ultra-fast binary protocol.
No. la sottile arte di trovare il tempo dove non esite - codemotion 2015Matteo Collina
Non abbiamo mai tempo per fare nulla. Quante volte avete detto: "Vorrei rilasciare un progetto Open Source" oppure "Vorrei studiare Obj-C e imparare a fare App!". E poi andate su GitHub e trovate persone che hanno rilasciato o contributo a CENTINAIA di progetti, conoscono 6-7 linguaggi di programmazione diversi e parlano a conferenze in giro per l'Italia e l'Europa. Come fanno a gestire il tempo? Sono più bravi di noi? NO è la risposta.
Today's trending technologies is tomorrows popular technologies, be updated with the most trending technologies and choose the technology that fits with your business needs.
In the ”Internet of Things” (IoT) vision the physical world blends with virtual one, while machine-to-machine interaction improve our daily life. Clearly, how these virtual objects are exposed to us is critical, so that their user interface must be designed to support the easiness of usage that is driven by the users’ needs, which is different from what machines requires. These two requirements must be solved, and an integrated solution should emerge, if we want to bring the IoT to the 50 billions network that is predicted to became in the next years.
How To Combine Back-End & Front-End Testing with BlazeMeter & Sauce LabsSauce Labs
Sauce Labs and BlazeMeter teamed up for an awesome webinar, giving step-by-step instructions on how to get real-world results from your front end while applying load to the backend.
This lecture is intended to introduce the concepts and terminology used in Quantum Computing, to provide an overview of what a Quantum Computer is, and why you would want to program one.
The material here is using very high level concepts and is designed to be accessible to both technical and non-technical audiences.
Some background in physics, mathematics and programming is useful to help understand the concepts presented.
You can develop native mobile applications using HTML/CSS/JS with the help of PhoneGap. I will show you how to achieve the best possibe native experience using web technologies and optimize your workflow with automation.
IONIC VS. REACT NATIVE – WHICH FRAMEWORK IS BETTER FOR CROSS-PLATFORM MOBILE ...Laura Miller
Yes, you read it correctly. We are speaking about the Native Cross-platform Mobile App Development. Now, you do not need to bang your head in determining whether to opt for Native or for cross-platform mobile app development. What you need is a consolidation of both in one mobile app offering duel benefits.
React Native, as a new way to develop mobile applications with little to no knowledge about native development, allowed us to go from nothing to a released mobile app in less than 3 months. This presentation will cover: Why did Nuxeo choose React Native for its new mobile application, what are the advantages for us and how did we work around: issues / limitations.
Ionic adventures - Hybrid Mobile App Development rocksJuarez Filho
Ionic frameworks is the new kid on the block related to Hybrid Mobile Apps created by Drifty and rapidly growth with a variety of tools like ionic lab, ionic creator, ionic view, ionic crosswalk integration and other exciting tools is coming this year like ionic PUSH.
Check this presentation to have a short getting start in this amazing framework.
Let's create amazing apps with Ionic. \o/
9 reasons why programmers should learn react nativeReact Sharing
A React Native app is a real mobile app
With React Native, you don't build a “mobile web app”, an “HTML5 app”, or a “hybrid app”. You build a real mobile app that's indistinguishable from an app built using Objective-C or Java. React Native uses the same fundamental UI building blocks as regular iOS and Android apps. You just put those building blocks together using JavaScript and React.
Programming on the Android mobile platform is, generally-speaking, a Java-based affair. This talk introduces the Scripting Layer for Android(SL4A) project by Damon Kohler and the Python for Android(Py4A) project, both of which work together to provide a Python interpreter environment for the Android platform. I will talk about the history, background and architecture and design of these projects, the current status, and what to expect in the near future. There will be a demo in this talk, which is inspired by the Cellbots project. In this demo, I show how a robot based on the Arduino open source hardware platform can be manipulated using the an Android mobile phone, and the open source projects discussed during the talk.
Presentation given at RubyWorld 2014 (Matsue, Japan), a business conference about the Ruby programming language. Slides in Japanese / English.
Sample code: https://github.com/lrz/rubymotion-hybrid-sample
How native is React Native? | React Native vs Native App DevelopmentDevathon
As a popular development framework, React Native helps you to develop near-native mobile apps. Find out all the differences between React Native and Native App Development:
https://devathon.com/blog/how-native-is-react-native-vs-native-app-development/
#reactjs #app #tech #software #developer #Mobile
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
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.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
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.
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.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
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.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...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.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Designing and developing mobile web applications with Mockup, Sencha Touch and Sinatra @RubyDay
1. Designing and developing
mobile web applications with
Mockup, Sencha Touch and
Sinatra
Matteo Collina @matteocollina
Daniele Bottillo @cribcaged7
ITALIAN RUBY DAY, 10 GIUGNO 2011
2. Who is Mavigex
Mavigex is an academic spin-off of the
University of Bologna which focuses
on:
• Mobile applications
• Digital signage
• VoIP applications
• Mobile broadcasting
ITALIAN RUBY DAY, 10 GIUGNO 2011
3. Who We Are
Daniele Bottillo:
Web mobile designer and developer
@cribcaged7
Matteo Collina:
Software Engineer
Ph.D. Candidate @ UoB
@matteocollina
ITALIAN RUBY DAY, 10 GIUGNO 2011
5. vs
HTML5 and CSS3:
Look & Feel similar to
native applications
Advanced graphics
effects (gradients,
fades, slides…)
ITALIAN RUBY DAY, 10 GIUGNO 2011
6. vs
Javascript:
Everybody think they
know it :-)
Powerful language just
like Java and Obj-C
Several frameworks for
mobile development
ITALIAN RUBY DAY, 10 GIUGNO 2011
7. vs
Native Applications:
Full control of the
Hardware
Maximum Performance
IDEs (Xcode, Eclipse)
ITALIAN RUBY DAY, 10 GIUGNO 2011
8. vs
PhoneGap:
Allows to reach App
Stores with Mobile Web
Apps
Full hardware access
Mixed Native/Web code
Limited performances
ITALIAN RUBY DAY, 10 GIUGNO 2011
9. Development Process
Native Approach Hybrid Approach
Write Write More Work
Write Less Work
= =
More € Less €
Test Test Test
Build Build Build Build
ITALIAN RUBY DAY, 10 GIUGNO 2011
11. • enhanches existing mobile web sites
• has unobtrusive behaviour
• is not structured enough for a full application
development
• has small Javascript & CSS Files
• supports many devices
• is in alpha status
ITALIAN RUBY DAY, 10 GIUGNO 2011
12. • derives from ExtJS
• has MVC structure
• has the Look & Feel of native applications
• has big Javascript & CSS files
• is stable (but not bug free, and you?)
ITALIAN RUBY DAY, 10 GIUGNO 2011
14. Frontend + Backend
Native Apps Mobile Web Apps
The frontend and the Frontend and Backend
backend are are tightly bound
developed separately As often as not there
Often there is no is a backend
backend Easy sharing of data
When backend between the browser
functionality is and the JSON APIs
needed, the
integration is complex
ITALIAN RUBY DAY, 10 GIUGNO 2011
15. Backend Requirements
REST principles
Exposure of JSON APIs
Fast-Fast development
Easy HTTP caching
Easy testing
Easy deployment
ITALIAN RUBY DAY, 10 GIUGNO 2011
16. Ruby + Sinatra
REST is just built-in
JSON conversion is just a method call
away
Really flexible APIs for HTTP caching
Community mad with testing
ITALIAN RUBY DAY, 10 GIUGNO 2011
17. Ruby + Sinatra
require 'sinatra'
get '/hi' do
"Hello World!"
end
ITALIAN RUBY DAY, 10 GIUGNO 2011
19. Development Process
Problem
Definition
Refactoring Mockups
JSON API
Deployment
definition
Testing Development
ITALIAN RUBY DAY, 10 GIUGNO 2011
20. Problem Definition
GeoReview
A simple geo localized App to review
locations. A user can:
Enter a star-based review of some
coordinates
View all the reviews in a map
View the review details of a point
ITALIAN RUBY DAY, 10 GIUGNO 2011
21. GeoReview
The GeoReview App
is available at: georeview.mavigex.com
is downloadable from the Android Market
is open source software, and the repository are on
github:
App
PhoneGapIntegration
is not bug free, but who it is?
ITALIAN RUBY DAY, 10 GIUGNO 2011
22. Mockups
GeoReview
ITALIAN RUBY DAY, 10 GIUGNO 2011
23. Mockups
GeoReview
ITALIAN RUBY DAY, 10 GIUGNO 2011
24. JSON APIs
GeoReview
• POST /reviews
– params:
{ review:{ name: “Pippo”, stars:
3, comment: “the comment”,
location: “…” } }
– response:
{ result: true }
ITALIAN RUBY DAY, 10 GIUGNO 2011
26. Developing with Sencha
GeoReview
Getting started:
• Download Sencha Touch
• Create an empty index.html
• Include the JS+CSS libraries
ITALIAN RUBY DAY, 10 GIUGNO 2011
27. Developing with Sencha
GeoReview
Sencha Touch is a MVC framework,
what does it mean?
• Views and models are separated
• Controllers perform actions
• Every component has its own definition
ITALIAN RUBY DAY, 10 GIUGNO 2011
28. Developing with Sencha
GeoReview
Organization views:
Map
MapContainer InsertReview
Viewport
About ListReview
ITALIAN RUBY DAY, 10 GIUGNO 2011
29. CSS Generation
GeoReview
Sencha Touch allows to be
customized by regenerating
its CSS:
to change the ‘basecolor’
to bundle only the parts
you need
to do some crazy CSS
personalization, like inlining
images
ITALIAN RUBY DAY, 10 GIUGNO 2011
30. CSS Generation
GeoReview
In order to regenerate the CSS:
we use compass, a ruby library to
dinamically generate CSS templates
normally, generating the CSS is just
a ‘compass compile’ away
in the GeoReview project we have
automatized it using a rake task
to see more details, look at this
blog post:
http://www.sencha.com/blog/an-
introduction-to-theming-sencha-
touch/
ITALIAN RUBY DAY, 10 GIUGNO 2011
31. Deployment
GeoReview
We deployed our mobile web app on
Heroku:
heroku create
heroku addons:add mongohq:free
git push heroku
ITALIAN RUBY DAY, 10 GIUGNO 2011
32. Testing
We have a full department of testers!
ITALIAN RUBY DAY, 10 GIUGNO 2011