Previous Episode: 40: Merge Commits Are Evil

Welcome to Code Completion, Episode 41! We are a group of iOS developers and educators hoping to share what we love most about development, Apple technology, and completing your code!
Follow us @CodeCompletion (https://twitter.com/CodeCompletion) on Twitter to hear about our upcoming livestreams, videos, and other content.
Today, we discuss:
- Code Completion Club: https://codecompletion.io/jointheclub
- Indie App Spotlight, with a new app for you to check out:
- ToothFairy by Michael Tsai (@mjtsai): https://c-command.com/toothfairy/
- Fernando:
- Self Control: https://selfcontrolapp.com/
- YouTube premium
- Fernando’s Chess Clock: https://www.amazon.com/ajedrez-digital-temporizador-profesional-funci%C3%B3n/dp/B07M5RP9SC/ref=sr14_sspa
- Seven Link: https://apps.apple.com/us/app/seven-7-minute-hiit-workout/id650276551
- Paul:
- Getting Sleep
- Are you stuck?
- Exercise
- Analog: https://ugmonk.com/blogs/journal/analog-the-simplest-productivity-system
- Journal: https://jamesclear.com/habit-journal
- SuperEasyTimer: https://apps.apple.com/us/app/super-easy-timer/id1353137878?mt=12
- MultiMarkdown Composer: https://multimarkdown.com/composer4/
- Doing Research
- Solid blocks of time to focus, Meditation with Calm: https://apps.apple.com/us/app/calm/id571800810
- Pomodoro method: https://todoist.com/productivity-methods/pomodoro-technique
- Intermittent Fasting app (Zero): https://www.zerofasting.com
- Document your energy
- Spencer:
- Taking naps
- Cultivate the zone
- Having Music on
- Reducing Friction
- Spencer’s super-wide display: https://www.samsung.com/us/computing/monitors/gaming/49--odyssey-g9-gaming-monitor-lc49g95tssnxza/
- Financial motivations
- Ben:
- Have reminders
- Keeping main work in front of you
- Soundtracks are great for concentration
- Batman soundtrack link
- Cyberpunk/FtL, Passengers
- Keeping things fresh with coding problems
- A distraction you have control over
- Noise cancelling headphones
- Protect your energy and time
- Decision fatigue
- Dimitri:
- Drift between interests to avoid burnout
- Burnout anecdote: https://rattibha.com/thread/1388107620574171140?lang=en
- Concentrating in silence
- Understand the problem well before diving in
- Dimitri was wrong; Gluconeogenesis: https://en.wikipedia.org/wiki/Gluconeogenesis
Also, join us for #CompleteTheCode and Compiler Error, two segments that test both your knowledge and our knowledge on Swift, Apple, and all things development!
Your hosts for this week:
* Spencer Curtis (https://twitter.com/SpencerCCurtis)
* Ben Gohlke (https://twitter.com/FerrousGuy)
* Fernando Olivares (https://twitter.com/FromJRtoSR)
* Paul Solt (https://twitter.com/PaulSolt)
* Dimitri Bouniol (https://twitter.com/DimitriBouniol)
Be sure to also sign up to our monthly newsletter (https://codecompletion.io/), where we will recap the topics we discussed, reveal the answers to #CompleteTheCode, and share even more things we learned in between episodes.
You are what makes this show possible, so please be sure to share this with your friends and family who are also interested in any part of the app development process.
Sponsor
This week's episode of Code Completion is brought to you by Weekly Swift Exercises. Go to https://mailchi.mp/hey/weekly-swift-exercise-signup today to subscribe!
Complete the Code
What could potentially go wrong with this particular error handling code?
```objc
// What could potentially go wrong with the code below?
NSError *theError;
BOOL result = [anObject doSomethingThatCanFailWithError:&theError];
if (theError) {
NSLog(@"The operation failed! %@", theError);
}
```
Be sure to tweet us (https://twitter.com/intent/tweet?text=%23CompleteTheCode%20cc%2F%20%40CodeCompletion&original_referer=https%3A%2F%2Fcodecompletion.io) with hashtag #CompleteTheCode (https://twitter.com/hashtag/CompleteTheCode) if you know the answer!
Compiler Error
This week's Compiler Error has a theme: Blast from the past!
1 - Swift Literals: Although Dictionaries prohibit it, ExpressibleByDictionaryLiteral allows for multiple entries with the same key.
2 - Emacs key bindings in Cocoa: You may know of the ⌘⌫ command to delete the entire line to the left of the text cursor, but ⌃K can be used to delete the line to the right of the text cursor.
3 - Objective-C method names in the iOS SDK: convolveWithDestination:tempBuffer:sourceOffsetToRegionOfInterestX:sourceOffsetToRegionOfInterestY:kernel:kernelHeight:kernelWidth:divisor:backgroundColor:options: is one of many related Objective-C methods in the Accelerate framework for manipulating images.
4 - Unicode names for Mac modifier keys: Located between the control and command keys on the keyboard, the option key is unoriginally called OPTION KEY in the unicode specification, but was also known as the “closed apple key” on Apple II series computers.

Welcome to Code Completion, Episode 41! We are a group of iOS developers and educators hoping to share what we love most about development, Apple technology, and completing your code!

Follow us @CodeCompletion on Twitter to hear about our upcoming livestreams, videos, and other content.

Today, we discuss:

Code Completion Club: https://codecompletion.io/jointheclub
Indie App Spotlight, with a new app for you to check out:

ToothFairy by Michael Tsai (@mjtsai): https://c-command.com/toothfairy/

Fernando:

Self Control: https://selfcontrolapp.com/
YouTube premium
Fernando’s Chess Clock: https://www.amazon.com/ajedrez-digital-temporizador-profesional-funci%C3%B3n/dp/B07M5RP9SC/ref=sr_1_4_sspa
Seven Link: https://apps.apple.com/us/app/seven-7-minute-hiit-workout/id650276551

Paul:

Getting Sleep
Are you stuck?
Exercise
Analog: https://ugmonk.com/blogs/journal/analog-the-simplest-productivity-system
Journal: https://jamesclear.com/habit-journal
SuperEasyTimer: https://apps.apple.com/us/app/super-easy-timer/id1353137878?mt=12
MultiMarkdown Composer: https://multimarkdown.com/composer4/
Doing Research
Solid blocks of time to focus, Meditation with Calm: https://apps.apple.com/us/app/calm/id571800810
Pomodoro method: https://todoist.com/productivity-methods/pomodoro-technique
Intermittent Fasting app (Zero): https://www.zerofasting.com
Document your energy

Spencer:

Taking naps
Cultivate the zone
Having Music on
Reducing Friction
Spencer’s super-wide display: https://www.samsung.com/us/computing/monitors/gaming/49--odyssey-g9-gaming-monitor-lc49g95tssnxza/
Financial motivations

Ben:

Have reminders
Keeping main work in front of you
Soundtracks are great for concentration
Batman soundtrack link
Cyberpunk/FtL, Passengers
Keeping things fresh with coding problems
A distraction you have control over
Noise cancelling headphones
Protect your energy and time
Decision fatigue

Dimitri:

Drift between interests to avoid burnout
Burnout anecdote: https://rattibha.com/thread/1388107620574171140?lang=en
Concentrating in silence
Understand the problem well before diving in
Dimitri was wrong; Gluconeogenesis: https://en.wikipedia.org/wiki/Gluconeogenesis

Also, join us for #CompleteTheCode and Compiler Error, two segments that test both your knowledge and our knowledge on Swift, Apple, and all things development!

Your hosts for this week:

Spencer Curtis
Ben Gohlke
Fernando Olivares
Paul Solt
Dimitri Bouniol

Be sure to also sign up to our monthly newsletter, where we will recap the topics we discussed, reveal the answers to #CompleteTheCode, and share even more things we learned in between episodes.

You are what makes this show possible, so please be sure to share this with your friends and family who are also interested in any part of the app development process.

Sponsor

This week's episode of Code Completion is brought to you by Weekly Swift Exercises. Go to https://mailchi.mp/hey/weekly-swift-exercise-signup today to subscribe!

Complete the Code

What could potentially go wrong with this particular error handling code?

// What could potentially go wrong with the code below?
NSError *theError;
BOOL result = [anObject doSomethingThatCanFailWithError:&theError];

if (theError) {
NSLog(@"The operation failed! %@", theError);
}

Be sure to tweet us with hashtag #CompleteTheCode if you know the answer!

Compiler Error

This week's Compiler Error has a theme: Blast from the past!

1 - Swift Literals: Although Dictionaries prohibit it, ExpressibleByDictionaryLiteral allows for multiple entries with the same key.

2 - Emacs key bindings in Cocoa: You may know of the ⌘⌫ command to delete the entire line to the left of the text cursor, but ⌃K can be used to delete the line to the right of the text cursor.

3 - Objective-C method names in the iOS SDK: convolveWithDestination:tempBuffer:sourceOffsetToRegionOfInterestX:sourceOffsetToRegionOfInterestY:kernel:kernelHeight:kernelWidth:divisor:backgroundColor:options: is one of many related Objective-C methods in the Accelerate framework for manipulating images.

4 - Unicode names for Mac modifier keys: Located between the control and command keys on the keyboard, the option key is unoriginally called OPTION KEY in the unicode specification, but was also known as the “closed apple key” on Apple II series computers.

Twitter Mentions