Peter Friese Profile Banner
Peter Friese Profile
Peter Friese

@peterfriese

Followers
7,387
Following
1,904
Media
1,551
Statuses
15,167

Developer Advocate @Google on the @Firebase team · Gemini SDK · Book: · Newsletter:

Hamburg, Germany
Joined January 2009
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
Pinned Tweet
@peterfriese
Peter Friese
3 months
Learn how to implement the App Store Hero Animation with SwiftUI's new NavigationTransition
3
24
347
@peterfriese
Peter Friese
4 years
@twostraws Make Xcode's Assistant aware of your ViewModels, Views, etc: defaults write .dt.Xcode IDEAdditionalCounterpartSuffixes -array-add "ViewModel" "View" "Screen" Quite handy when working with SwiftUI:
Tweet media one
7
118
663
@peterfriese
Peter Friese
1 year
Looking for the definitive resource to learn how to use Firebase in iOS apps? I spent 100+ hours to build this FREE interactive tutorial that walks you through replicating Apple's reminders app using SwiftUI and Firebase:
Tweet media one
16
94
515
@peterfriese
Peter Friese
1 year
Waiting for WWDC and not sure how to spend your time? How about learning how to use SwiftUI and @Firebase with this interactive tutorial! Running just shy over 5 hours, this should give you a head start for next week.
Tweet media one
12
74
501
@peterfriese
Peter Friese
1 year
“Various improvements and performance enhancements”
Tweet media one
18
6
483
@peterfriese
Peter Friese
2 years
How would you like an interactive tutorial for SwiftUI and Firebase...?
14
22
435
@peterfriese
Peter Friese
2 years
Working with a view…
Tweet media one
20
6
378
@peterfriese
Peter Friese
3 years
It might seem like a small thing, but this is actually a pretty big deal. Thanks for listening to our feedback, and bringing bindable list items to SwiftUI, @luka_bernardi , @natpanferova , and team! #WWDC21 #SwiftUI
Tweet media one
11
45
355
@peterfriese
Peter Friese
1 year
Working with a view…
Tweet media one
13
7
343
@peterfriese
Peter Friese
2 years
Look what was in the post today! More details (and how to get your personal copy) at
Tweet media one
Tweet media two
16
31
284
@peterfriese
Peter Friese
2 years
👋🏻 Hey Apple developers! Here are some quick tips for setting up Firebase with iOS.
9
39
230
@peterfriese
Peter Friese
3 years
👋🏻 Hey Apple developers! Here are some quick tips for setting up Firebase with iOS.
13
36
210
@peterfriese
Peter Friese
2 years
Me when your app asks me to create an account before I can even try it first:
9
17
196
@peterfriese
Peter Friese
3 years
With all the information Apple shared about async/await and structured concurrency at #wwdc21 , it easy to get lost. So here is a quick guide to get you started. /1
1
33
197
@peterfriese
Peter Friese
3 years
@migueldeicaza ... "languages and techniques never used before"...
Tweet media one
8
8
180
@peterfriese
Peter Friese
11 months
If you'd like to learn how to build SwiftUI components, check out this hands-on interactive tutorial I built for you! You will learn: - Different techniques for composing views - How to make your views customisable - Making your views interactive - And how to style your views
Tweet media one
4
19
159
@peterfriese
Peter Friese
2 years
Don't map your Firestore documents manually, folks. Tell your friends, too.
Tweet media one
Tweet media two
2
15
144
@peterfriese
Peter Friese
1 year
For a chance to win a signed copy of my book “Asynchronously Programming with SwiftUI and Combine”, come to my workshop “Building Reusable SwiftUI Components” at @IOSDEVUK (starting at 1pm).
Tweet media one
6
19
139
@peterfriese
Peter Friese
2 years
👋🏻 Hey Apple developers! Here are some quick tips for setting up Firebase with iOS.
6
21
119
@peterfriese
Peter Friese
7 months
You can now use the @RemoteConfigProperty wrapper to connect your SwiftUI views to Firebase Remote Config.
6
11
115
@peterfriese
Peter Friese
1 year
Just finished uploading the slides for my talk "Building Reusable SwiftUI Components" that I gave at @SwiftConf . Thanks everyone who attended, and all the inspiring conversations we had about views, components, and architecture for SwiftUI apps!
8
25
109
@peterfriese
Peter Friese
1 year
Let me take you behind the scenes of recording @Firebase Fundamentals.
Tweet media one
9
6
107
@peterfriese
Peter Friese
1 year
Also, for a chance to win a signed copy of my book “Asynchronous Programming with SwiftUI and Combine”, come to my talk “Building Reusable SwiftUI components” at @swiftheroes_it this Friday, 15:15.
15
57
98
@peterfriese
Peter Friese
3 years
When building UIs in SwiftUI, you can easily end up with a large chunk of code that is hard to understand. Here are three simple things you can do to fix this:
1
14
97
@peterfriese
Peter Friese
2 years
@Oreo Blink twice if you’re being held hostage by Kitkat.
5
1
92
@peterfriese
Peter Friese
2 years
I'll just leave this here....
4
2
90
@peterfriese
Peter Friese
2 years
Oh, look - the designer of the Magic Mouse has a new job:
@ScoutHouseLab
Scout House
2 years
Apple's self-driving car could feature VR technology and no windows:
Tweet media one
3K
2K
11K
7
7
83
@peterfriese
Peter Friese
2 years
Learn how to build re-usable SwiftUI components in my talk at @AppriseConf on March 23rd in Oslo! For a chance to win a hand-signed copy of my book "Asynchronous Programming with SwiftUI and Combine", like and RT this tweet, and attend my talk.
Tweet media one
1
28
79
@peterfriese
Peter Friese
2 years
👋🏻 Hey Apple developers! Here are some quick tips for setting up Firebase with iOS.
2
10
81
@peterfriese
Peter Friese
3 years
Follow along as I replicate Apple's Reminder app using SwiftUI 3 and Firebase! /1
5
5
78
@peterfriese
Peter Friese
2 years
Unpopular opinion: light mode screenshots are easier to read on most projectors.
Tweet media one
6
2
76
@peterfriese
Peter Friese
8 months
I’ve created a landing page for the DocC tutorials I created. Here are two of them - more will follow:
Tweet media one
Tweet media two
1
9
75
@peterfriese
Peter Friese
5 years
Calling all Firebase developers - we want to hear from you! Did you build something amazing using @Firebase ? Found a creative use for one of our APIs? Come write for us and the community at . Details:
14
27
69
@peterfriese
Peter Friese
8 months
I remember my first day at the @google office in London (Belgrave House on Buckingham Palace Road) like it's yesterday. A lot of things have changed in the past 10 years, but I am still as excited about my job as I was back then. Maybe even more! Over the years,...
Tweet media one
11
0
62
@peterfriese
Peter Friese
5 years
Join me on a journey to replicate the iOS Reminders app using SwiftUI and 🔥 @Firebase ! In the first part of this series, I'll show you how to build the UI using SwiftUI and Combine:
3
17
60
@peterfriese
Peter Friese
1 year
Oh, look who dropped by in Hamburg to get a tour of the Google office! It’s @mikaela__caron !
Tweet media one
4
1
59
@peterfriese
Peter Friese
11 months
On my way to @cocoaheads_hh . Might as well arrive in style.
Tweet media one
3
1
58
@peterfriese
Peter Friese
6 months
These might be some of the most lickable UI components I've ever seen. Go ahead and try them out - but be prepared to never come back...
Tweet media one
1
2
54
@peterfriese
Peter Friese
2 years
@killedbygoogle Ok, next: use ISO for dates and 24h time format.
1
1
51
@peterfriese
Peter Friese
2 years
Someone just said something really nice about a piece of work of mine, and it made me feel sooo good 🤗 Here's your reminder to give praise to people when they did something nice. It doesn't cost you, but it will light up their day ☀️
0
8
52
@peterfriese
Peter Friese
2 years
Typing calls to methods with many optional parameters used to be a pain. With Xcode 14, this is now much easier, thanks to fuzzy code completion - check this out:
2
5
50
@peterfriese
Peter Friese
2 years
👀
Tweet media one
2
1
51
@peterfriese
Peter Friese
1 year
Time for some Keynote Magic! Here is how I re-created the animation you can see in Apple's SwiftUI intro tutorial - just using Keynote.
4
5
50
@peterfriese
Peter Friese
8 months
Version 15.3 beta (15E5178i) includes menu commands for exporting the current preview snapshot. Super useful when you're building DocC tutorials.
Tweet media one
1
8
51
@peterfriese
Peter Friese
1 year
Sign in with Apple is *the* authentication mechanism of choice on iOS. Here is how you can use it in your @Firebase project:
0
3
50
@peterfriese
Peter Friese
1 year
Sound on!
@peterfriese
Peter Friese
2 years
Me when your app asks me to create an account before I can even try it first:
9
17
196
2
3
51
@peterfriese
Peter Friese
9 months
Can't wait to share w/ you what we've been working on so you can Build with Gemini!
Tweet media one
3
3
50
@peterfriese
Peter Friese
11 months
Look who dropped by the Google office in London for a chat! It’s the one and only @acbdev !
Tweet media one
1
0
49
@peterfriese
Peter Friese
3 years
Tweet media one
1
2
43
@peterfriese
Peter Friese
5 years
Building complex form validation logic can be messy. Not so when you combine SwiftUI and Combine:
0
11
47
@peterfriese
Peter Friese
2 years
Behind the scenes of producing a Firebase Stories interview.
Tweet media one
4
1
46
@peterfriese
Peter Friese
1 year
If you’re at #GoogleIOConnect in AMS, come and say hi!
Tweet media one
3
5
46
@peterfriese
Peter Friese
2 years
Inspired by @merowing_ 's talk about @Injection4Xcode at @swiftheroes_it , I decided to see if this works for @Firebase (particularly Firestore) as well. Check this out: hot reloading a SwiftUI app! With these time savings, I think I can call it a day. Thanks, Krzysztof and John!
2
5
43
@peterfriese
Peter Friese
9 months
In Not only Swift issue #49 : 🧠 Gemini LLM in your Swift apps 🛡️ Secure code with Typestate 👀 Trigger property observers 🔁 Overload SwiftUI's onSubmit ⌨️ Xcode keyboard shortcuts 🔑 Don't ship API keys! 🤝 Life of an Open Source dev 👀 A little secret
3
8
44
@peterfriese
Peter Friese
1 year
Welcome to day 2 of @swiftheroes_it ! The room is PACKED!
Tweet media one
@peterfriese
Peter Friese
1 year
First presentation of the day @swiftheroes_it : @icanzilb takes us on a roller coaster of UI development through the years, starting with text-based UIs: “A 100% SwiftUI app”
Tweet media one
3
1
19
1
1
44
@peterfriese
Peter Friese
4 years
@twostraws Show build times in Xcode's status bar: defaults write .dt.Xcode ShowBuildOperationDuration YES (all on one line)
0
0
44
@peterfriese
Peter Friese
8 months
As a Developer Advocate, I am legally obliged to eat avocado toast at least once a week:
Tweet media one
4
1
44
@peterfriese
Peter Friese
7 months
@krzyzanowskim “Incredible IDE integration”:
Tweet media one
2
0
42
@peterfriese
Peter Friese
2 years
🔥 Quick Firebase Tip 🔥 Most of Firebase's API calls are asynchronous. If you're using Swift, you've got three options to make asynchronous calls: 1) Trailing closures 2) Combine 3) async/await Curious to learn more? Read on 👉🏻 /1
1
3
43
@peterfriese
Peter Friese
8 months
👋🏻 Hey #visionOS developers! If you're trying to add Firebase to your visionOS project, and the compiler just shows you a long list of errors, don't fret! Instead, set FIREBASE_SOURCE_FIRESTORE=1 before launching Xcode:
Tweet media one
Tweet media two
3
4
42
@peterfriese
Peter Friese
2 years
When building UIs in SwiftUI, you can easily end up with a large chunk of code that is hard to understand. Here are three simple things you can do to fix this:
1
4
40
@peterfriese
Peter Friese
4 years
Someone in my stream mentioned @hashnode as an alternative to Medium, so I thought I’d give it a try. Here’s the result of mirroring my Gatsby-powered blog: - let me know what you think! #SwiftUI #Firebase
1
12
41
@peterfriese
Peter Friese
3 years
🔥 Quick Firebase Tip 🔥 Most of Firebase's API calls are asynchronous. If you're using Swift, you've got three options to make asynchronous calls: 1) Trailing closures 2) Combine 3) async/await Curious to learn more? Read on 👉🏻 /1
3
8
41
@peterfriese
Peter Friese
1 year
This year’s edition of *working with a view* brought to you courtesy of Coffee #1 in Aberystwyth. Looking forward to seeing y’all at @IOSDEVUK
Tweet media one
Tweet media two
@peterfriese
Peter Friese
2 years
Working with a view…
Tweet media one
20
6
378
4
0
40
@peterfriese
Peter Friese
1 year
The new Swift macros are 🔥 stuff! Macros enable you to write code that generates code from your code.
Tweet media one
3
4
40
@peterfriese
Peter Friese
2 years
SwiftUI's view styling APIs are one of the most underappreciated parts of the framework. Learn why they are much more powerful than you might have thought.
0
6
40
@peterfriese
Peter Friese
1 year
Finishing up my script for “Getting Started with Firestore on iOS” before heading to the studio at Google’s London campus at King’a Cross. Can you spy Sparky?
Tweet media one
6
3
38
@peterfriese
Peter Friese
3 years
I know I’m not the only one who is super excited about this milestone - *all* of Firebase’s products can now be integrated using Swift Package Manager.
@Firebase
Firebase
3 years
👏🥳 And with this, *all* Firebase's products now support Swift Package Manager. Check out the blog for full details →
1
17
54
2
5
38
@peterfriese
Peter Friese
2 years
I hear @FloWritesCode is in the UK at @swift_leeds - but he’s also at #FirebaseSummit in New York in @charlotteCLiang ’s talk thanks to his work on the @FirestoreQuery property wrapper! 🔥
Tweet media one
Tweet media two
2
3
39
@peterfriese
Peter Friese
1 year
What if it’s just a rainbow-coloured parachute?
Tweet media one
Tweet media two
1
1
39
@peterfriese
Peter Friese
2 years
I love this place.
Tweet media one
1
1
36
@peterfriese
Peter Friese
11 months
SwiftUI can render basic Markdown, but sometimes you need more advanced features, like tables, headings, blockquotes, and more. @gonzalezreal wrote a fantastic library for this: MarkdownUI. Check it out:
0
6
37
@peterfriese
Peter Friese
4 years
Can you map a struct to a Firestore document and save it to a collection in a single line of code? Reply here with your solutions and come back tomorrow to compare notes!
Tweet media one
2
9
36
@peterfriese
Peter Friese
3 years
Did you know Firestore supports Codable out of the box, making mapping documents to Swift types a one-liner? Interested to learn more? I’m working on a comprehensive article - feel free to follow along as I write it:
2
4
35
@peterfriese
Peter Friese
3 years
So I condensed all the cool new pieces of information from this conversation and some additional research into a blog post. Thanks to everyone who contributed! Enjoy:
0
6
33
@peterfriese
Peter Friese
3 years
Tomorrow. 11:30.
Tweet media one
2
0
35
@peterfriese
Peter Friese
8 months
A common source of confusion I see in many StackOverflow questions is that most Firebase API calls are asynchronous. Here is how to call them:
1
5
34
@peterfriese
Peter Friese
2 years
Going by train has the undoubted advantage of having some quiet time to work on my slides. #appdevcon
Tweet media one
7
0
31
@peterfriese
Peter Friese
3 years
Some exciting things coming in Swift 5.5. For example, here are some refactorings to help you migrate your callback-style code to using async/await. Great work by @_hamishknight !
2
3
34
@peterfriese
Peter Friese
3 years
SwiftUI is constantly evolving: actionSheet has been deprecated, but confirmationDialog offers a much better API. Learn more about confirmation dialogs and interactive dismissal (and how to prevent it):
Tweet media one
0
1
32
@peterfriese
Peter Friese
2 years
When building UIs in SwiftUI, you can easily end up with a large chunk of code that is hard to understand. Here are three simple things you can do to fix this:
1
3
33
@peterfriese
Peter Friese
3 years
My post about error handling in Combine is taking shape! Currently at 14k characters, and there’s still ground to cover. Interested in reading a preview? If this tweet gets at least 14 likes, I will share a preview link. I might or might not write about incremental back off…
Tweet media one
@peterfriese
Peter Friese
3 years
@migueldeicaza I'm working on a blog post about error handling in Combine that shows some techniques for exposing errors to the actual users (in the screenshot above, this is mostly for the developer's benefit).
0
0
1
1
0
32
@peterfriese
Peter Friese
1 year
ICYMI: Firestore supports Codable. No need to map your documents manually. Codable also gives you all the flexibility you need (changing attribute names, mapping only partial documents, etc.). Full details in our comprehensive guide:
@Firebase
Firebase
2 years
📑💯 Friends don't let friends map their Firestore documents manually. In this episode of #FirebaseBytes , @peterfriese shows you how Codable can help map your documents, with code that's easier to read and less error-prone. Start learning →
1
9
52
1
2
33
@peterfriese
Peter Friese
10 months
Firebase developer writing SwiftUI code at their desk in the Google office. Gotta love the fireplace 😍
Tweet media one
@riggaroo
Rebecca Franks
10 months
Android Developer in Google office :D
Tweet media one
7
22
251
5
0
31
@peterfriese
Peter Friese
3 years
“Starting over doesn’t mean you failed” #SwiftLeeds
Tweet media one
0
3
33
@peterfriese
Peter Friese
2 years
Great Scott!
Tweet media one
3
0
31
@peterfriese
Peter Friese
1 year
🎁 We're GIVING AWAY three tickets to our workshop "SwiftUI & Firebase" at plSwift next week! For a chance to win, like and RT this tweet - we will draw the lucky winners tomorrow. Details about the workshop:
@swift_pl
plSwift 2024
1 year
Firebase & SwiftUI workshop by @peterfriese and @coelho_dev - authentication - fetching data - real-time sync - security rules and much more, all using Combine and async/await
Tweet media one
0
7
30
2
16
31
@peterfriese
Peter Friese
3 years
If you're using xcodes to download and install Xcodes (you should!), you'll want to make sure to install aria2 as well. This will use up to 16 parallel connections, making the process **a lot** faster. See the docs:
1
8
31
@peterfriese
Peter Friese
2 years
iOS developers - I'm curious: do you run a personal blog, and if so, where do you host it? Feel free to reply with a link to your blog (after voting, of course)!
Hashnode
47
Dev Community
29
Medium
124
Self-hosted
268
46
5
31
@peterfriese
Peter Friese
2 years
SwiftUI - Greatest Hits of 2022 w/ @malinsundberg at @IOSDEVUK #iOSDevUK - answering the question “can you build apps entirely in SwiftUI?”
Tweet media one
Tweet media two
1
1
31
@peterfriese
Peter Friese
5 years
@Firebase Let's replicate the iOS Reminders App using SwiftUI, Combine, and @Firebase 🔥! In part 2 of this series, I'll show you how to store your data in ☁️ Cloud Firestore, and seamlessly log your users in with Firebase Anonymous Authentication 🕵🏻‍♀️
2
7
31
@peterfriese
Peter Friese
2 years
@_davideast That’s what I ask myself every morning.
Tweet media one
3
0
31