Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe...

13
Getting Started with Firebase

Transcript of Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe...

Page 1: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Getting Started with Firebase

Page 2: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Johannes Reuter

Master student HS Karlsruhe

currently writing my thesisneural networks in the web

[email protected]

@johannes_reuter

Günter Josef Radig (https://upload.wikimedia.org/wikipedia/commons/7/7d/Karl-Friedrich-Denkmal_am_Schlossplatz_Karlsruhe_%28cropped%29.JPG)

Page 3: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

The Problem● Fat clients

● Backends always very similar (“dumb backend”)

● Lots of code for a simple backend

● Hosting ($$$)

● Security

● Monitoring

● Scaling

● ...

Page 4: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

The Solution● BaaS - “Backend as a Service”

● a.k.a Serverless Apps

● Hosted Service

● Generic APIs (get and set)

● Register and ready to go (“in the cloud”)

Page 5: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Firebase ● Maintained by Google since 2014

● Realtime-Database

● Lots of auxiliary features

● Free for small apps

● iOS, Android and Web ...

Page 6: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Features

Authentication by Google, Facebook, GitHub, E-Mail

Integrated Hosting

File-Storage

Security Rules for Database

Cloud Messaging

Page 7: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Web-like features for Android and iOS

Analytics → Google Analytics

Dynamic Links → <a href=”myapp.com/deep/link”>Click me</a>

App Indexing → Webmaster Tools

AdWords Integration → AdWords

Page 8: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Example● Twitter-Clone● 30 mins from scratch● HTML / CSS / Javascript

Features:

● Login via Google● Realtime-Updates● Search-Function

Page 9: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Demo-Time

Page 10: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Takeaways● Very fast prototyping

● Security can be tricky

● No full-fledged database○ Advanced Indexing○ Aggregation○ ...

→ Possible solution: Microservices connected to Firebase

Page 11: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

(Almost) Serverless Apps

Aggregation

Indexing

Batch-Jobs

User

Firebase

App Engine

Page 12: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Upshot● Fast development

● Easy to use

● Focus on the business logic

● Lots of features

● Not suited for all apps

Page 13: Getting Started with Firebase - inovex GmbH · Johannes Reuter Master student HS Karlsruhe currently writing my thesis neural networks in the web email@johannes-reuter.de @johannes_reuter

Thank youCode: github.com/flash1293/gdg-firebase-demo

[email protected] @johannes_reuter