RUVIDEO
Поделитесь видео 🙏

#40 - How hard could debugging an issue be?

My solution to the Advanced exercise in the latest mailing list (Join here: https://mailchi.mp/hey/weekly-swift-exercise-signup)

The exercise is here: https://mailchi.mp/hey/from-junior-to-senior-weekly-40

Follow me on Twitter: https://twitter.com/fromjrtosr

Useful sections are marked with a ???

00:00:00 - Intro to the newsletter
00:01:05 - Explaining the weekly exercise
00:02:25 - Attempting to reproduce the bug
00:03:55 - Waiting for the app to compile
00:04:25 - Continue reproducing the bug
00:05:40 - Issue reproduced. Fernando begins shooting himself in the foot.
00:06:40 - ??? Fernando explains Objective-C.
00:07:30 - ??? Fernando explains Promises and async data fetching
00:10:30 - Continue trying to find the root of the issue via the promise
00:11:40 - Dead end #1
00:12:35 - Backtracking and going to the login function
00:15:12 - Dead end #2
00:16:18 - Finally found what appears to be ground zero
00:17:46 - Begin forming hypothesis: is the password ok?
00:18:30 - Frustration rant #1 (modifying our hypothesis)
00:20:25 - ??? Asking Paw for help
00:22:25 - ??? Fernando rants again but finds an eureka moment
00:24:10 - ??? URL encoding and what that means for a password with an "&"
00:27:45 - ??? & as data vs. & as format
00:32:45 - The app is not URL encoding the password
00:33:50 - How do we URL encode strings in Swift?
00:35:10 - ??? Learning vs. Shipping
00:37:40 - Keep trying to URL encode
00:38:40 - You keep saying URL encoding. I don't think it means what you think it means.
00:40:40 - Xcode doesn't like that we copied and pasted old code
00:43:00 - We did URL encode the password, but...
00:43:30 - Frustration rant #2 (Fernando says there's nothing wrong with copying and pasting code but proceeds to fumble for the next 7 minutes)
00:50:00 - Manage your frustration and persevere even if it's boring
00:52:00 - Fernando says "Maybe that's it" and it's not it
00:52:37 - A new error appears. That's definitely good news. Really.
00:53:40 - Test one URL parameter at a time
00:58:15 - Fernando says "oh my god I hope that's the issue". It was not so he pauses the video.
00:59:00 - Frustration rant #3: Finally moves to where the issue really is
01:00:00 - Fernando says "I think this is the right move" and this time it is.
01:01:34 - Finally finding the root cause. No, really.
01:02:37 - Fernando thinks he can begin coding the actual solution
01:05:25 - ??? The actual, correct explanation as to what's happening
01:06:36 - Begin coding the solution
01:08:50 - ??? Fernando explains compactMap
01:11:50 - Xcode is defeated and we build to test our solution
01:12:08 - Fernando cries. The beast is slain.
01:12:45 - ??? Refactor the solution so it's good code.
01:14:50 - Fernando thinks he can code. He cannot.
01:17:17 - Fernando realizes a static variable is not the same as an instance variable
01:18:00 - ??? Continue refactoring
01:19:20 - ??? Self code review of what we're doing + the solution
01:21:00 - ??? There is a bug in our implementation
01:22:00 - ??? Doing things the right way takes time
01:25:30 - ??? Should I learn or ship? Refactor or ship?
01:28:30 - Actual self code review
01:29:15 - ??? Comments are extremely important; doesn't matter how clean your code is
01:32:00 - Push to Github and open PR
01:33:40 - It is done. Good bye.

Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «#40 - How hard could debugging an issue be?», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.

Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.

Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!

Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.