Skip to main content
CourseFlix

Build a Google Analytics in Go

7h 18m 48s
English
Paid

This course assumes you've taken my Build SaaS apps in Go course or are familiar with Go's standard library for building web applications.

We cover the following aspects:

  1. The client-side tracker.
  2. The Go backend API.
  3. Geo-localization from an IP address.
  4. Storing the data into PostgreSQL.
  5. Using Docker to improve your developer's life.
  6. Generating traffic and testing the performance of our system.
  7. Optimizing the DB, table, and queries.
  8. Using ClickHouse to handle 100x the volume of our database.
  9. Building a CLI dashboard.
  10. Deploying our approach to a VM.

About the Author: Dominic St-Pierre

Dominic St-Pierre thumbnail
Hi, I'm Dominic St-Pierre. I write about software engineering. I'm a polyglot programmer, but have a huge preference for Go. I'm the host of go podcast() and co-host of The SaaS Marathon podcasts. I published a book / course in 2018 named Build SaaS apps in Go.

Watch Online 32 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 32 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Course intro
All Course Lessons (32)
#Lesson TitleDurationAccess
1
Course intro Demo
03:19
2
What we need
09:27
3
Setup project
11:38
4
Tracker class
16:23
5
Track page views
13:09
6
Handle missing data
16:24
7
API design
03:19
8
Track handler
10:02
9
Decode data
15:27
10
Data structure
20:29
11
Use Docker to test
27:56
12
Architecture design
03:12
13
Run the project
16:26
14
Call from API
12:18
15
Fill database
04:19
16
Generate 15M rows
14:24
17
Import the data
15:41
18
The problem
14:12
19
Let's normalize
16:30
20
This sucks!
09:57
21
ClickHouse
10:34
22
Is it faster than PG
12:30
23
Swap PG for ClickHouse
14:18
24
Queue and batch inserts
27:24
25
Adding referrer domain
03:05
26
Proof of concept
18:35
27
Refactor and display metrics
19:18
28
Dashboard v1
26:46
29
Add configuration
11:21
30
API authentication
08:45
31
Servers config setup
23:31
32
Dashboard config
08:09
Unlock unlimited learning

Get instant access to all 31 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

  • Golang mini course for beginners thumbnail

    Golang mini course for beginners

    Sources: Anthony GG
    Golang mini course for beginners is a compact and comprehensible course for developers who are just beginning to get acquainted with the Go programming...
    2 hours 54 minutes 34 seconds 0 / 5
  • Ardan Labs Live Bytes (Ultimate Go Syntax LIVE) thumbnail

    Ardan Labs Live Bytes (Ultimate Go Syntax LIVE)

    Sources: ardanlabs.com
    Recording of live translation Ultimate Go Syntax LIVE (March 2020 year) using Zoom. Recording of live translation Ultimate Go Syntax LIVE (March 2020 year) using Zoom.
    1 hour 48 minutes 40 seconds
  • Weekly LIVE sessions thumbnail

    Weekly LIVE sessions

    Sources: Anthony GG
    A playlist of weekly LIVE session recordings for those who couldn't attend live or want to revisit the material.
    7 hours 31 minutes 22 seconds 5 / 5
  • Refactoring With Bill thumbnail

    Refactoring With Bill

    Sources: ardanlabs.com
    Refactoring with Bill presents hour-long videos of Bill working on different projects while providing a stream of consciousness on what he is doing and why.
    7 hours 49 minutes 54 seconds
  • Golang + Lambda Masterclass [EARLY-ACCESS] thumbnail

    Golang + Lambda Masterclass [EARLY-ACCESS]

    Sources: Gourav Kumar
    This course teaches you everything you need to create production-ready Golang + Lambda Microservices, REST APIs, and Event-Driven serverless applications on AWS cloud like a…
    1 hour 41 minutes 25 seconds
  • Web Development with Google’s Go (golang) Programming Language thumbnail

    Web Development with Google’s Go (golang) Programming Language

    Sources: greatercommons.com
    The Go programming language was created by Google to do what Google does: performant web applications at scale. Open-sourced in 2009 and reaching version one in
    18 hours 59 minutes 31 seconds