Whirlwind tour of Firebase. Talking about the concepts and offerings that make up the product. Code examples on Github and linked in presentation. Given to a GDG Belfast meetup in Jan 2018
So you just finished quick start of Firebase. Or maybe you just heard about Firebase. ThreeBase tries to answer all your initial-questions-still-in-mind about Firebase effeciently right under 3 minutes!
Don’t get bogged down by all the technical jargon and unnecessary syntax of programming languages. We help you separate the wheat from chaff, do what matters the most - ideate, design and develop the web site and Mobile application with the right technologies and tools. All in an interactive, fun and enjoyable way, just like how you would play games.
Texavi’s Code Bootcamp will equip you with the life skills of critical thinking, clarity of thought, analysis, design-thinking, coding and more importantly learning technology in a practical manner. Besides the hands-on learning, you will get access to our treasure of insightful, high-quality resources and materials, course certificate and some nice swag items like digital badges, laptop stickers and more!
Still not convinced, get a low-down on what you would get out of the 'Code Bootcamp for Kids - Learn Programming workshop’, check this out!
Building faster websites: web performance with WordPressJohannes Siipola
Nobody likes a slow website. Faster sites lead to happier users, and happier users lead to more conversions and revenue. That’s why you should take performance into account in your WordPress project. Learn what practical techniques and WordPress plugins to use in order to optimize your site for speed.
So you just finished quick start of Firebase. Or maybe you just heard about Firebase. ThreeBase tries to answer all your initial-questions-still-in-mind about Firebase effeciently right under 3 minutes!
Don’t get bogged down by all the technical jargon and unnecessary syntax of programming languages. We help you separate the wheat from chaff, do what matters the most - ideate, design and develop the web site and Mobile application with the right technologies and tools. All in an interactive, fun and enjoyable way, just like how you would play games.
Texavi’s Code Bootcamp will equip you with the life skills of critical thinking, clarity of thought, analysis, design-thinking, coding and more importantly learning technology in a practical manner. Besides the hands-on learning, you will get access to our treasure of insightful, high-quality resources and materials, course certificate and some nice swag items like digital badges, laptop stickers and more!
Still not convinced, get a low-down on what you would get out of the 'Code Bootcamp for Kids - Learn Programming workshop’, check this out!
Building faster websites: web performance with WordPressJohannes Siipola
Nobody likes a slow website. Faster sites lead to happier users, and happier users lead to more conversions and revenue. That’s why you should take performance into account in your WordPress project. Learn what practical techniques and WordPress plugins to use in order to optimize your site for speed.
Box to Google Drive Business Migration Guide for IT AdminsVazhayil Aiswarya
This article discusses Box to Google Drive migration (Google Workspace/Formerly G Suite) in detail. The information is primarily intended to help IT admins and managers trying to migrate data from Box to Google Drive.
This presentation walks you through the process of performing an upgrade from SharePoint 2007 to SharePoint 2010. It covers what you can do today to get ready, the prerequisites for the upgrade, the support upgrade approaches and concludes with an upgrade demonstration.
Presentation from June 2013, Surrey, BC, Drupal Group meetup.
- Some tips how to improve Drupal 7 performance.
- Get Drupal 7 working faster
- Optimize code in order to get proper responses
- Use cache (memcache, APC cache, entity cache, varnish)
- Scale Drupal horizontally in order to balance load
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Amazon Web Services
Traditionally, content delivery networks (CDNs) were known to accelerate static content. Amazon CloudFront has come a long way and now supports delivery of entire websites that include dynamic and static content. In this session, we introduce you to CloudFront’s dynamic delivery features that help improve the performance, scalability, and availability of your website while helping you lower your costs. We talk about architectural patterns such as SSL termination, close proximity connection termination, origin offload with keep-alive connections, and last-mile latency improvement. Also learn how to take advantage of Amazon Route 53's health check, automatic failover, and latency-based routing to build highly available web apps on AWS.
Dynamic Content Acceleration: Amazon CloudFront and Amazon Route 53 (ARC309) ...Amazon Web Services
Traditionally, content delivery networks (CDNs) were known to accelerate static content. Amazon CloudFront has come a long way and now supports delivery of entire websites that include dynamic and static content. In this session, we introduce you to CloudFront’s dynamic delivery features that help improve the performance, scalability, and availability of your website while helping you lower your costs. We talk about architectural patterns such as SSL termination, close proximity connection termination, origin offload with keep-alive connections, and last-mile latency improvement. Also learn how to take advantage of Amazon Route 53's health check, automatic failover, and latency-based routing to build highly available web apps on AWS.
Free Technology Tools for Better Engagement, Efficiency & Cost Controls.
The internet has many tools to help improve your productivity, organization, client collaboration and marketing – all for FREE. Are you taking advantage of these tools? In this fast-paced session, participants will be introduced to online tools for your day-to-day business processes, including alternatives to big-name software packages. We’ll cover what the tools can do for you and where to get them. Don’t miss this opportunity to explore new ways to solve common problems with uncommon tools.
Stress Test Drupal on Amazon EC2 vs. RackSpace cloudAndy Kucharski
RackSpace vs Amazon EC2 stress evaluation of responding to user registration on a Drupal 6 ubercart ecommerce site test using LoadStorm.
We have stood up an eCommerce site built with Drupal6 and ubercart and stood it up on two most popular cloud providers. We then built a stress test using LoadStorm and tried to push the sites and servers to the limit. Here are the results of our experiment.
Questa presentazione descrive l’esperienza di uno sviluppatore Java che vuole affrontare lo sviluppo frontend di un’applicazione web moderna nel migliore dei modi senza rinunciare alle comodità cui è abituato. Vedremo una serie di strumenti, dei veri e propri JavaScript Power Tools come Bower per la gestione delle dipendenze, Grunt per le build e Yeoman per la gestione dei progetti, che permettono di creare applicazioni javascript ben strutturate e funzionali in modo semplice e rapido.
Firebase Basics - Dialog Demo for Group Tech StaffTharaka Devinda
This slide deck was used to demonstrate how Firebase can be used to host a webpage and store data in Firebase Database while authenticating users with Firebase Auth
This was done for the second meetup of GDG Cloud Sri Lanka on request by Dialog.
Please use the following gist to access the demo page
https://gist.github.com/tdevinda/db586b5f101c1f08978b2b74840be2e3
This talk looks at converting an existing GCP serverless application into one build using Firebase. Firebase helps to simplify deployment, particularly around simple web hosting. The talk also looks at how easy it is to use GCP services integrated with Firebase such as authentication and Cloud Firestore.
Box to Google Drive Business Migration Guide for IT AdminsVazhayil Aiswarya
This article discusses Box to Google Drive migration (Google Workspace/Formerly G Suite) in detail. The information is primarily intended to help IT admins and managers trying to migrate data from Box to Google Drive.
This presentation walks you through the process of performing an upgrade from SharePoint 2007 to SharePoint 2010. It covers what you can do today to get ready, the prerequisites for the upgrade, the support upgrade approaches and concludes with an upgrade demonstration.
Presentation from June 2013, Surrey, BC, Drupal Group meetup.
- Some tips how to improve Drupal 7 performance.
- Get Drupal 7 working faster
- Optimize code in order to get proper responses
- Use cache (memcache, APC cache, entity cache, varnish)
- Scale Drupal horizontally in order to balance load
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Amazon Web Services
Traditionally, content delivery networks (CDNs) were known to accelerate static content. Amazon CloudFront has come a long way and now supports delivery of entire websites that include dynamic and static content. In this session, we introduce you to CloudFront’s dynamic delivery features that help improve the performance, scalability, and availability of your website while helping you lower your costs. We talk about architectural patterns such as SSL termination, close proximity connection termination, origin offload with keep-alive connections, and last-mile latency improvement. Also learn how to take advantage of Amazon Route 53's health check, automatic failover, and latency-based routing to build highly available web apps on AWS.
Dynamic Content Acceleration: Amazon CloudFront and Amazon Route 53 (ARC309) ...Amazon Web Services
Traditionally, content delivery networks (CDNs) were known to accelerate static content. Amazon CloudFront has come a long way and now supports delivery of entire websites that include dynamic and static content. In this session, we introduce you to CloudFront’s dynamic delivery features that help improve the performance, scalability, and availability of your website while helping you lower your costs. We talk about architectural patterns such as SSL termination, close proximity connection termination, origin offload with keep-alive connections, and last-mile latency improvement. Also learn how to take advantage of Amazon Route 53's health check, automatic failover, and latency-based routing to build highly available web apps on AWS.
Free Technology Tools for Better Engagement, Efficiency & Cost Controls.
The internet has many tools to help improve your productivity, organization, client collaboration and marketing – all for FREE. Are you taking advantage of these tools? In this fast-paced session, participants will be introduced to online tools for your day-to-day business processes, including alternatives to big-name software packages. We’ll cover what the tools can do for you and where to get them. Don’t miss this opportunity to explore new ways to solve common problems with uncommon tools.
Stress Test Drupal on Amazon EC2 vs. RackSpace cloudAndy Kucharski
RackSpace vs Amazon EC2 stress evaluation of responding to user registration on a Drupal 6 ubercart ecommerce site test using LoadStorm.
We have stood up an eCommerce site built with Drupal6 and ubercart and stood it up on two most popular cloud providers. We then built a stress test using LoadStorm and tried to push the sites and servers to the limit. Here are the results of our experiment.
Questa presentazione descrive l’esperienza di uno sviluppatore Java che vuole affrontare lo sviluppo frontend di un’applicazione web moderna nel migliore dei modi senza rinunciare alle comodità cui è abituato. Vedremo una serie di strumenti, dei veri e propri JavaScript Power Tools come Bower per la gestione delle dipendenze, Grunt per le build e Yeoman per la gestione dei progetti, che permettono di creare applicazioni javascript ben strutturate e funzionali in modo semplice e rapido.
Firebase Basics - Dialog Demo for Group Tech StaffTharaka Devinda
This slide deck was used to demonstrate how Firebase can be used to host a webpage and store data in Firebase Database while authenticating users with Firebase Auth
This was done for the second meetup of GDG Cloud Sri Lanka on request by Dialog.
Please use the following gist to access the demo page
https://gist.github.com/tdevinda/db586b5f101c1f08978b2b74840be2e3
This talk looks at converting an existing GCP serverless application into one build using Firebase. Firebase helps to simplify deployment, particularly around simple web hosting. The talk also looks at how easy it is to use GCP services integrated with Firebase such as authentication and Cloud Firestore.
DevOps Workshop Part 1
Daniel Laufer on January 19, 2022
Learn all about DevOps, and get the chance to set up automated deployment and testing of your applications using GitHub Actions and Firebase!
This presentation contains an introduction to Firebase and walks through a code-lab for creating a real-time Android Chat application with offline functionality.
When I arrived at Credit Karma I needed to find and connect with people from different teams across multiple projects and verticals.
The problem was that there was no good way to accomplish this except by talking to as many people at the company as possible to find out about the different roles and groups working on things. I decided I needed a way to search for people in order to speed up my workflow.
This resulted in the design and implementation of a pet project called Aura. This presentation is about the process of creating Aura and how it gathered a cult following of support at Credit Karma. I will be covering the problem space, the technology and the methods of winning mind share that led to the execution of the project. This includes React, Electron, Firebase and a host of other libraries and services that allowed Aura to be built over some weekends without the need of a server.
The slides printed for attendees of the Pycon 2010 Long Pinax Tutorial. James Tauber was the co-author and deserves tons of credit for his work. So does Brian Rosner and the rest of the Pinax team.
Build a serverless web app using Google Firebase! The sample app is called FriendlyChat and uses Firebase Hosting, Firebase Functions, Node.js Google Cloud Vision API, authentication and more!
From the Serverless Days Milano 2018 workshop event given by Bret McGowen.
Lessons learned using Firebase in ProductionMaik Buchmeyer
Talk held at the MiniConf #3 by Code Chrysalis at the beautiful IDEO Office in Omotesando, Tokyo.
If you hold the right to any picture used in the presentation, please contact me and I will take them down.
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.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
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.
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.
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
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.
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.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
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.
5. A journey through
Firebase
Firebase does a lot of things
including
● Authorization and Authentication
● Data Storage
● Cloud Messaging
● Cloud Functions
● Machine Learning
● Advertising and monetization
● Analytics and Insights
● Hosting
● File Storage…
There’s a lot and it can feel a bit overwhelming so
let’s start to make it feel homely and adorable
6. G.O.A.T of goats It’s a MILLION DOLLAR IDEA
● STEP 1 : ALLOW PEOPLE TO RATE GOATS
● STEP 2: ????
● STEP 3 : PROFIT
This is huge it’s such a shame that it’s too big an
idea to just develop in Firebase so we’re ending
the talk here
8. Getting Started in
Firebase
Grab https://github.com/firebase/firebase-tools
This is going to be your friend and confidante on our
Firebase travels.
It can help you
- Scaffold your project
- Deploy it (with pre and post hooks available)
- Serve app locally (web app of course)
- Make Database calls
- Update Cloud Functions
9. Firebase Init Let’s do this <DO A DEMO THING HERE PLEASE>
Now pop a hello world react app in or something
10. Firebase Init -
Results
So we see a lot of config files. The firebase.json one is
the most important
You can see these in Github
https://github.com/PatrickWalker/g.o.a.t-of-goats
11. Add Firebase to
existing Projects -
Web
So you don’t need to use the firebase tools helper you
can use whichever CLI you love and adore.
https://firebase.google.com/docs/web/setup
- Get Config Code from Firebase Console
- Use CDN or package manager to fetch
dependencies
- Base some fire
Firebase Tools will however be needed for deploying
changes and hosting
12. Add Firebase to
existing Projects -
Android
You don’t have firebase tools here so yeah you
probably can’t use it
https://firebase.google.com/docs/android/setup
Contains links to FireCast on this as well
13. Firebase Serve Uses Firebase.json to get things going.
Firebase serve -- project <your project id or an alias>
Firebase use --add to create an alias. This is
worthwhile as the generated id of your project is
probably muddled, too long and annoying. Like this
section of the talk.
14. Firebase Deploy Things look good locally time to share the wealth of
your creative genius with the INTERNETS
This checks the syntax of your files (the firebase
management ones) to try and stop you breaking
everything and then uploads anything it needs to...
Once complete you’ll get a hosting URL like
https://gdgbelfast-cb650.firebaseapp.com
YOU can connect a domain btw and it’s made super
easy for you
16. Realtime Database This was how it started. A lovely and very flat
database.
JSON based so backups/imports/exports are pretty
easy. Complex relational models not so much.
Authorization made easy with awesome rules (oh man
2017 want their GDG firebase talk back)
Supports multiple instances (on premium tier)
Support for Offline access (not for you WEB PEOPLE)
18. Realtime Database
Challenges
You use references to data through paths rather than
queries as much. There are some helpers for ordering
and filtering data though
https://firebase.google.com/docs/database/android/l
ists-of-data
Marshalling data in Android was a bit tricky for me as
my intellect is small
Authorization rules aren’t filters. It’s more an atomic
on or off so filtering with rules is not possible. The
answer to this...structuring your data in ways you
aren’t used to
https://firebase.google.com/docs/database/android/
structure-data
21. Firestore Conor told you more about this. Please god let him
have shown up.
Document and collection based rather than being
totally flat.
Transactions, merged inserts and batched writes are
possible.
The focus here is improving sorting and filtering.
That’s the number 1 challenge people have with the
firebase realtime DB is working with result sets.
They are officially recommending it for new projects
(if you’re cool with Beta stuff) so this WILL BE
FIREBASE
23. Authentication Supports: Web; IOS, C++, Unity and Android
Docs: https://firebase.google.com/docs/auth/
Tutorials: Up There
24. Authentication Firebase auth provides different methods of signing in
through the console. These include Google, Facebook,
GitHub and even custom email/password accounts
You can customise the how the user logs in
- building own interface
- using the Firebase customisable UI
25. Unity Hold up. DId you say Unity there a minute ago?
Yeah. Some FireBase products integrate with Unity
allowing you to focus on building a game not
infrastructure
We’ll highlight the features that have Unity support but
it’s actually a pretty solid list and they seem to be
getting some traction
27. Cloud Storage Supports: Web; IOS, C++, Unity and Android
Docs: https://firebase.google.com/docs/storage/
Tutorials: Up There
28. Firebase File
Storage
Free static hosting is pretty cool and so is cloud
functions but what about ALL MY THINGS?
Good news. Firebase offers cloud storage where you
can dump anything that wouldn’t make sense in the
firebase DB. This is envisaged for User Generated
content so goat pictures to rate is “ON BRAND”
You get a default bucket for storage in your free app
but you can upgrade and get yourself some more.
29. Authorization You also get pretty nice authorization rules you can
put in which are similar to the ones for the database.
This allow you to build pretty nice access rules like
- Member only content
- Ability to manage own files
- Based on metadata of the files
- File validation before upload
You can even monitor the upload process and
pause/resume/cancel if you want. Might be good
news for big files but for GOATS we aight.
Let’s do it
30. The Code
// This makes a storage object available elsewhere
export const storage = firebaseApp.storage()
// This is our function to save the goats. It’s pretty stripped down but
should give you an idea
upload (file, meta) {
this.uploadTask = storage.ref('goats/' + file.name).put(file, meta)
this.uploadTask.then(snapshot => {
this.downloadURL = this.uploadTask.snapshot.downloadURL
this.$emit('url', this.downloadURL)
}) } },
31. Upload yo Goat Head to https://gdgbelfast-
cb650.firebaseapp.com/Home#/ and upload your
best goat
33. Cloud Functions Supports: Web; IOS, C++, Unity and Android
Docs: https://firebase.google.com/docs/functions/
Tutorials: Up There
34. Cloud Functions -
What is their
purpose?
This allows you to add server side functionality to your
firebase app which is kind of cool. They act as triggers
and are similar to serverless technology.
Examples of Triggers
- On Storage changes
- On DB Changes
- On Authorization Changes (new users added
etc)
- Time based
- There’s even a pub/sub message bus for
custom events
- HTTP Triggers
35. Server Side
Rendering
Yes this also includes server side rendering if you’re
all about that SEO or page load time (fast first render)
Not sure what it is?
https://www.youtube.com/watch?v=GQzn7XRdzxY&li
st=PLl-K7zZEsYLkbvTj8AUUCfBO7DoEHJ-
ME&index=2
David East - https://github.com/davideast/react-ssr-
firebase-hosting
https://www.youtube.com/watch?v=nbTn1czE2L8 -
series on server rendering covering Angular, React,
Preact, Vue and more
36. Creating User
Profile
We’re going to step through an auth trigger
Adding functions to existing project - “firebase init
functions”
Creates a functions folder with seperate package.json
and index.js
Put your JS code right der
37. Couldn’t you just
do this on Client?
Well yeah for these examples we probably could but
- We would have to duplicate the logic in
IOS/Andriod and Web
- We might not want to deliver some of the
code/logic to the client if it’s sensitive or deals
with orders/billing
- It would also make demoing cloud functions
really dull
38. Functions Console The console gives the following views
Dashboard - your function names, the events they are
tied to, their executions and median run time
Logs - So you can see or trace any errors
Usage - Graphical representation of usage and link to
your Quota
39. WANT SOME
MORE?
Then go check out the series of videos by
@ThatJenPerson on youtube which are awesome
https://www.youtube.com/watch?v=EvV9Vk9iOCQ -
Getting Started
https://github.com/firebase/functions-samples - Code
Samples
LARGE DISCLAIMER - ITS IN BETA
40. Pricing It’s important to say every now and again that there is
a free tier but if you’re doing something big it’s going
to cost money
https://cloud.google.com/functions/pricing?hl=en_US
&_ga=2.152612537.-1887928721.1515079257
Free Tier -
2 million invocations ($0.40 per million after that)
400,000 GB-seconds, 200,000 GHz-seconds of
Compute Time
5gb of outbound data per month ($0.12 per gb after)
42. STEP 3 PROFIT -
a.k.a Admob
Admob - This is basically adwords for firebase. You
can reuse your existing account etc the hook here is
it’s for Mobile Apps
Containers are used as adwords would have worked.
It’s all pretty similar vibes.
Weirdly I don’t think it plays ball with PWA which is
weird due to Googles PDA for them… Adwords
however still works for that.
44. App Indexing Supports: IOS and Android*
Docs: https://firebase.google.com/docs/functions/
Tutorials: Up There
*Requires a website too
45. App Indexing Your app appears in google search results. If installed
there is a link to open it, if not can create a link to
install it. NICE.
This can help re-engage users.
You do need a website for this to work as well. Plays
quite well with dynamic links.
Reasonably involved process so didn’t get a chance.
47. Dynamic Links Supports: Web; IOS, C++, Unity and Android
Docs: https://firebase.google.com/docs/dynamic-
links/
Tutorials: Up There
48. Dynamic Links Firebase Dynamic Links are links that work the way you
want, on multiple platforms, and whether or not your app is
already installed.
Use Cases -
● Link to content in your app that works for people
who have or haven’t it currently installed
● Converting Desktop users to app users
● User to User sharing (I think this is replacing the
former Firebase Invites product)
● QR Codes. Physical web.
50. Cloud Messaging Supports: Web*; IOS, C++, Unity and Android
Docs: https://firebase.google.com/docs/cloud-
messaging/
Tutorials: Up There and this one is for web
https://firebase.google.com/docs/cloud-
messaging/js/client
*https://caniuse.com/#feat=serviceworkers
51. Cloud Messaging Message Payload up to 4kb
Has to be over HTTPS (due to service workers)
Apps can receive messages too so instant messaging
or maybe support is possible. Or for gaming chats.
Messages can be sent to topics or defined groups
Permission driven…
52. Cloud Messaging Message Payload up to 4kb
Web to be over HTTPS (due to service workers)
Firebase Apps can receive messages too so instant
messaging or maybe support is possible. Or for
gaming chats.
Messages can be sent to topics or defined groups
Permission driven…
54. Cloud Messaging -
Message Composer
Firebase Console contains a message composer for
marketing messages. Let’s look at it
55. A/B Testing Can A/B Test your notifications.
Checking engagement against goal and track success
of variants. A/B Testing is now in your reach and it’s
not just for your messaging….
https://firebase.google.com/docs/remote-
config/parameters
https://firebase.google.com/docs/remote-
config/abtest-config
https://firebase.google.com/docs/remote-
config/abtest-video
57. Remote Config Supports: ; IOS, C++, Unity and Android
Docs: https://firebase.google.com/docs/remote-
config/
Tutorials: Up There
58. Remote Config A/B testing, custom user functionality and roll-outs of
ephemeral app functionality without needing an
application install.
You fetch values from firebase that override values in
your app if present so you can have defaults in code.
59. Remote Config You can use loads of value types so it’s not just about
replacing strings. You can use booleans to toggle
element visibility or load different styles in
You can use a number of things to segment your
experiments
- App Version
- OS
- Gender
- Location
- Device
- Custom User Parameters
61. Predictions - BETA Predictions uses Google Machine learning to try and
identify/predict user groups of interest for you to
target with remote confgi.
There are inbuilt groups including churn and non-
spend but you can ask for predictions on your own
conversion events (whatever they may be)
Case Study of a game company that used the
predictions and remote config to grow their 7 day
retention rate
63. Analytics and
Insights -
Dashboard ,
Audience, Events
and Attribution
Dashboard - Allows you to track your own key
metrics/conversions and have up to 10.
More detail in Events. 3 predefined conversion events
around new users and purchases
Allows you to see revenue, retention of users,
engagement and location of audience etc
You can drill deeper into your audience.
Attribution allows you to use last click or adwords to
identify what marketing options are working the best
for you
Out of the box there’s dozens of common events and
parameter types but if thats not enough….
64. Analytics and
Insights - Custom
Event
Custom Events and Custom Parameters are handy
enough to add for mobile apps.
However they oly show up when you have an audience
> 10
Description of custom parameters
https://support.google.com/firebase/answer/739730
4?hl=en&ref_topic=6317489
65. Analytics and
Insights - Funnels
and Cohorts
Funnels are an interesting one. Similar thing you may
find in GA. This is about mapping workflow and
tracking usage across flow to identify areas of churn
or where you may be losing customers. <- Ties in
nicely with Remote Config A/B Testing ->
Cohorts groups users together who started using app
at same time so you can see retention differences.
Streamview gives you a live view of who is using your
app and how
66. Other things we
didn’t talk about
but might still be
cool to think about
Crashlytics
Test Lab
How you never really know how you’re supposed to
life your life
Performance Monitoring
67. I can’t believe I ate
the whole thing
So it’s all free?
Errr kind of
https://firebase.google.com/pricing/
68. Why Firebase rocks
my world
The free tier actually gives you a lot
Hosting! Auth and other things which get in the way of
building your actual app and it’s easy to plug in to
For most things the RealTime DB works and the auth
rules are cool
Functions seem really nice for cross-platform apps.
Docs docs doc
The Firebase Team
69. What isn’t great
about Firebase
Functions language support could be better
Realtime database can feel unintuitive at times
because of SQL muscle memory
Quite a few of the cool features are still Beta and may
not have Web support which raises the cost of entry a
bit
70. You want More? Then hit these places
https://www.youtube.com/user/Firebase
https://firebase.google.com/docs/samples/
https://twitter.com/Firebase
71. Don’t forget ● More Meetups !
● About Dre
● To Go Home
● To never talk about this to anyone
You may be thinking what can’t it do- It cant feel remore
It cant be stopped
It can’t make you love me
Local Server is something called Superstatic. You can also install it via npm globally.
To be clear you don’t need to take all the pieces. All this functionality we talk about are seperate Firebase products so you can mix and match. Like an Angular CLI? Fine. Like Vue-Cli cool. Prefer React, get some fucking help but ok. I’M JOKING IM JUST TOO STUPID TO LIKE REACTReally though you might not find firebase init is best for you. Maybe using the CLI you love and know is better because you can do this after the fact
Firebase.json is used to deploy and serve locallyDbrules are your auth rules for the db so you can keep them in source and they get deployed nicely. Which is pretty neat.
Firebase.json is used to deploy and serve locallyDbrules are your auth rules for the db so you can keep them in source and they get deployed nicely. Which is pretty neat.
It then gets added to a .firebaserc file like dis{
"projects": {
"goat": "gdgbelfast-cb650"
}
}
WOW WE DON’T EVEN NEED A VANITY URL
When authenticated
Info about user returned to device via call backs
Unique ID
- to identify user and determines which part of your backend system they can access
(Can be set up by adding rules)
PUT IT IN A BACKPACK
This is a bit of a cheeky one because whilst Cloud functions are supported by all of these things they actually run on firebase. It’s for server side processing
Create a Jira ticket when Crashlytics has a new issue is another cool example
Web support is predicated on service worker support so not everything is going to work which means yeah think about your browser support policy
Service workers can intercept and redirect traffic etc so you don’t want anyone doing that for youThe options they give for topics is pretty cool so it could be news or weather updates
Service workers can intercept and redirect traffic etc so you don’t want anyone doing that for youThe options they give for topics is pretty cool so it could be news or weather updates
There is a cache on the values
Or maybe you prefer just hearing it from actual experts
Or maybe you prefer just hearing it from actual experts