Как мы убрали секцию алгоритмов и к чему это привело
Алгосы — самая спорная вещь в собесах. Одни считают, что уметь программировать важнее знания теории и только продакшен задачи на работе не подготовят тебя лучше синтетических задач под разные ситуация. Другие, что алгосы это далекая от практики вещь и нет никакой от них пользы.
И те, и другие в чем-то правы. Я же держу позицию, что уметь программировать важнее знания доки. А каким путем ты нарабатываешь скилл кодинга — уже вторичное.
Вот Дзен написали о том, как убрали секцию по алгосам и к чему это привело....
Алгосы — самая спорная вещь в собесах. Одни считают, что уметь программировать важнее знания теории и только продакшен задачи на работе не подготовят тебя лучше синтетических задач под разные ситуация. Другие, что алгосы это далекая от практики вещь и нет никакой от них пользы.
И те, и другие в чем-то правы. Я же держу позицию, что уметь программировать важнее знания доки. А каким путем ты нарабатываешь скилл кодинга — уже вторичное.
Вот Дзен написали о том, как убрали секцию по алгосам и к чему это привело....
Хабр
Еще меньше алгоритмов: как мы убрали одно алгоритмическое интервью в Дзене и к чему это привело
Привет, меня зовут Ваня Емельянов, я руковожу разработкой видеохостинга Дзена и провожу собеседования в свою команду. Полгода назад мы поменяли процесс найма бэкенд-разработчиков: заменили одно...
👍16
Как часто layoutSubviews вызывается во время скролла UICollectionView?
Большая статья про подкопотную работу одного из частого компонента в UIKit.
В ней разбирается:
- как работает UIScrollView
- Что такое CATransaction
- Где лучше расчитывать анимации
Поможет в оптимизациях и глубоких дебагах
Большая статья про подкопотную работу одного из частого компонента в UIKit.
В ней разбирается:
- как работает UIScrollView
- Что такое CATransaction
- Где лучше расчитывать анимации
Поможет в оптимизациях и глубоких дебагах
Medium
How frequently is UICollectionView layoutSubviews being called during scrolling?
It is my most favorite question regarding iOS development. As I often can hear wrong answers to it, unfortunately, even from ChatGPT, I…
👍11❤🔥4
Тут я попользовался одним приложением зеленого банка и давно такой злости не испытывал…
Четыре раза хотел оформить заявку на чайник и он сбрасывал все данные. Чайник в итоге я не купил. Но подумал, может сделать рейтинг худших апок? Золотая малина от мира моб.апов
Иногда нужно учиться у худших, чтобы не допускать ошибки
Кидайте свои варианты
Четыре раза хотел оформить заявку на чайник и он сбрасывал все данные. Чайник в итоге я не купил. Но подумал, может сделать рейтинг худших апок? Золотая малина от мира моб.апов
Иногда нужно учиться у худших, чтобы не допускать ошибки
Кидайте свои варианты
😁15👍8
Как обычно лучшими техническими докладами славится яндекс. За этот год от них выгло много интересных статей и видосов. Не говоря уже про всякие конкурсы с алгосами
На самом деле тут нет сильных откровенний и часто +- такие же результаты из года в год
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6😁2
Ну и не уходя далеко. Тут особо много чего не меняется.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👎3
Сначала я хотел фильтровать, а потом решил опубликовать всех и каждого, кого написали. Возможно, кто-то написал имя своего тимлида или псевдоним пса.
Меня можете не считать всерьез. Это просто потому, что я делал опрос в своем канале.
Вообще честно не стоит близко к сердцу воспринимать этот вопрос. Считаю много кого из разрабов упустили. Например, Витю из iOS Dev и его победах в тг конкурсах. Но самое время задуматься о public visibility
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
В этом году я хотел побороть страхи публичных выступлений и рассказать доклад, а в итоге придумал митап и буду в нем ведущим.
Также нашел лучших спикеров для крутых тем:
🧵 Async / Await. Лучшие практики, советы и особенности — Максим Сурков, МТС
В своём докладе Максим рассмотрит structured concurrency в Swift, поговорит о async/await, actors, tasks и проведёт аналогии с уже существующими инструментами для работы с многопоточностью. Доклад будет полезен тем, кто хочет интегрировать подход async/await в свои проекты или же в прод, но всё ещё сомневается.
SwiftUI шагает по планете уже 4 года. Пора ли уже переводить свои приложения на него или стоит подождать? Тимур расскажет про свой опыт перехода на новый (старый) фреймворк, подводные камни и выводы, к которым он пришёл.
На WWDC 2023 компания Apple представила новое решение — mergeable libraries, Оно объединяет преимущества статических и динамических фреймворков. Александр рассмотрит их внутреннее устройство и разберёт, как можно интегрировать их в свои iOS-проекты. В ходе доклада он выполнит сравнение производительности, чтобы понять, соответствуют ли обещания Apple действительности.
Приходите к нам в офис или подключайтесь. Я не так часто куда-то выхожу и выступаю.
🤼♂️ Ссылка на офлайн
Please open Telegram to view this post
VIEW IN TELEGRAM
👍36❤🔥10👎2
Как airbnd переходили на SwiftUI
Эту статью опубликовали все, кому не лень. И я не хотел бы о ней говорить. Но из-за кучи неправильных вбросов и читки авторами каналов по диагонали решил все же поделиться мнением.
Пусть у них все же и вышло что-то положительное, только есть много но:
- это аирбнб. мы все помним их эксперименты, когда они выбирают технологию, пишут вбросы и потом отказываются от нее
- было куча багов
- полного перехода нет из-за навигации
- airbnb поддерживают только 16 и 17 iOS
- они потратили пару спринтов только на обучение SwiftUI
Эту статью опубликовали все, кому не лень. И я не хотел бы о ней говорить. Но из-за кучи неправильных вбросов и читки авторами каналов по диагонали решил все же поделиться мнением.
Пусть у них все же и вышло что-то положительное, только есть много но:
- это аирбнб. мы все помним их эксперименты, когда они выбирают технологию, пишут вбросы и потом отказываются от нее
- было куча багов
- полного перехода нет из-за навигации
- airbnb поддерживают только 16 и 17 iOS
- они потратили пару спринтов только на обучение SwiftUI
Medium
Unlocking SwiftUI at Airbnb
How Airbnb adopted SwiftUI in our iOS app
👍13👎2
Как async/await работает внутри
Крупная статья с подноготной Swift Concurrency и сравнение со старыми инструментами.
Как мы знаем почти все инструменты для многопоточности дают большую свободу, но также и возможность сделать критические ошибки.
- Как async/await влияет на безопасность
- Какие элементы использует из GCD
- Зачем нам создавать свои Actor'ы
Итог: async/await упрощает концепцию параллелизма, но не везде облегчает ее. Допускать ошибки все также возможно.
Крупная статья с подноготной Swift Concurrency и сравнение со старыми инструментами.
Как мы знаем почти все инструменты для многопоточности дают большую свободу, но также и возможность сделать критические ошибки.
- Как async/await влияет на безопасность
- Какие элементы использует из GCD
- Зачем нам создавать свои Actor'ы
Итог: async/await упрощает концепцию параллелизма, но не везде облегчает ее. Допускать ошибки все также возможно.
Swiftrocks
How async/await works internally in Swift
You probably know how to use async/await. But have you ever wondered how it works under the hood?
👍13❤🔥7
Еще один доклад про побочные эффекты нового инструмента для многопоточности:
- утечки памяти
- нелогичное поведение
- хаки для обходов
- непредсказуемость с SwiftUI
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Matthew Massicotte - The Bleeding Edge of Swift Concurrency
Swift Concurrency is all about succinct, safe code. Yet, it comes with a surprising amount of subtly and new pitfalls. It’s actually quite easy to accidentally introduce races and hangs. Learn about bringing async/await and actors into your code without the…
👍12👎1
Вебинары о новых iOS-технологиях: «Swift Macros» и «SwiftData»
Apple выпускает слишком много инструментов, которые заметно могут изменить правила игры. Чтобы не потерять форму и держаться в тонусе нужно следить за индустрией.
Очень сильно помогают вебинары от сильных, практикующих инженеров. Они не только пересказывают доклады, но и добавляют свой опыт и примеры.
Еще один вебинар от моих знакомых. На прошлый пришло 50 человек, получилось очень лампово и ребята собрали много положительных отзывов.
🔺Swift Macros
Макросы языка Swift — одно из самых заметных улучшений языка за последний год. Они помогают сократить количество шаблонного кода и упростить внедрение сложных функций. Проанализируем, как макросы могут быть использованы в проекте.
Рассказывает Настя Ищенко
🔺SwiftData
Core Data — мощный и удобный фреймворк для работы с данными в iOS-приложениях. Однако он был разработан еще во времена Objective-C и не поддерживает многие новые возможности языка Swift. На WWDC 2023 представили новый фреймворк — SwiftData, который призван заменить Core Data и упростить работу с данными в Swift. Расскажем, что такое SwiftData и как его использовать в своих проектах.
Рассказывает Даниил Алексеев
👉 Начало 4-го октября в 18:30. Получить ссылку на трансляцию можно в боте. Он заранее пришлёт напоминания перед вебинаром, а на следующий день — запись.
Все предыдущие вебинары можно посмотеть в записи по ссылке.
Apple выпускает слишком много инструментов, которые заметно могут изменить правила игры. Чтобы не потерять форму и держаться в тонусе нужно следить за индустрией.
Очень сильно помогают вебинары от сильных, практикующих инженеров. Они не только пересказывают доклады, но и добавляют свой опыт и примеры.
Еще один вебинар от моих знакомых. На прошлый пришло 50 человек, получилось очень лампово и ребята собрали много положительных отзывов.
🔺Swift Macros
Макросы языка Swift — одно из самых заметных улучшений языка за последний год. Они помогают сократить количество шаблонного кода и упростить внедрение сложных функций. Проанализируем, как макросы могут быть использованы в проекте.
Рассказывает Настя Ищенко
🔺SwiftData
Core Data — мощный и удобный фреймворк для работы с данными в iOS-приложениях. Однако он был разработан еще во времена Objective-C и не поддерживает многие новые возможности языка Swift. На WWDC 2023 представили новый фреймворк — SwiftData, который призван заменить Core Data и упростить работу с данными в Swift. Расскажем, что такое SwiftData и как его использовать в своих проектах.
Рассказывает Даниил Алексеев
👉 Начало 4-го октября в 18:30. Получить ссылку на трансляцию можно в боте. Он заранее пришлёт напоминания перед вебинаром, а на следующий день — запись.
Все предыдущие вебинары можно посмотеть в записи по ссылке.
👍11👎3
Какими важными качествами должен обладать код?
Anonymous Poll
48%
Тестируемость
35%
Отказоустойчивость
55%
Логичность
29%
Быстрота исполнения
50%
Изменяемость
80%
Читаемость
42%
Единный CodeStyle
2%
Другое
8%
Никакими
👍2👎1
На удивление, хоть почти все банки удалены из appstore, но желание работать в них не уменьшилось и продолжает быть лидирующим. Возможно и понятно, на подсознательном уровне "работать в банке" звучит авторитетно. Да и там денег точно хватает.
Вторая ниша, где хотят работать разрабы — это маркетплейсы и агрегаторы.
Ну и третье место это всякие видеоредакторы и тп.
Please open Telegram to view this post
VIEW IN TELEGRAM
Мотивацию надо поднять
О минимализме и ресурс менеджменте. Недавно я снова мельком перечитывал "Джедайские техники" Дорофеева и пришел к одному выводу:
Главная задача эффективности — это не поиск ресурсов. Это оптимизация уже имеющихся, которые расходуются зря.
Многие из нас смогли бы перевернуть мир, но нам не хватает главного — желаний, амбиций и мотивации. Я могу победить любую задачу, но мне лень...
Когда я занимался спортом, то смотрел техники подготовки элитных атлетов. Важная деталь любых подготовок — это ограничить себя от дешевых сжигателей дофамина: от дешевой еды, видов развлечений и даже от мастурбаций и наркотиков. Физических, цифровых, эмоциональных.
Вместо достижения амбициозных целей мы ищем дешевую альтернативу. Ретрансляцию чужой жизни и наших грез. Закапываемся в маркетинговых небылицах, мифах и сказках. Выдумываем свои виртуальные оправдания. А почувствовав сложности снижаем ставки. Не зря ученные находят даже в просмотре порно большой вред для мозга.
Отказ от таких вещей очень важен для сохранения концентрации. А только недавно понял зачем эти все истязания. Насколько глубока кроличья нора.
О чем я? Знать как сделать не значит сделать. Чтобы закончить дело нужна дисциплина и мотивация пройти путь. Нужно избавиться от любых пожирателей энергии и соблазнов, которые шепчут тебе "Да зачем тебе это? Разве тебе не хватает дешевой замены. Покушай бургера, посмотри видео на ютубчике или займись тем, что приносит удовольствие здесь и сейчас". Нашему мозгу тяжело сопротивляться ради призрачной цели, если запах дешевого и готового опьяняет мозг.
Самый главный враг — соблазн.
Мы сами снижаем ставки. Меняем свою мотивацию ради дешевых удовольствий здесь и сейчас. А в конце говорим "Я не достиг успеха, потому что не хотел его". Но я все чаще задаю себе вопрос правда ли я этого не хотел или дешево прожег свои амбиции?
У нас есть все ресурсы. Важнее как их не потратить зря.
выключаю режим мотивационных речей Рокки Бальбо. А вы вот еще прикольную статью можете почитать про дофаминовый детокс
О минимализме и ресурс менеджменте. Недавно я снова мельком перечитывал "Джедайские техники" Дорофеева и пришел к одному выводу:
Главная задача эффективности — это не поиск ресурсов. Это оптимизация уже имеющихся, которые расходуются зря.
Многие из нас смогли бы перевернуть мир, но нам не хватает главного — желаний, амбиций и мотивации. Я могу победить любую задачу, но мне лень...
Когда я занимался спортом, то смотрел техники подготовки элитных атлетов. Важная деталь любых подготовок — это ограничить себя от дешевых сжигателей дофамина: от дешевой еды, видов развлечений и даже от мастурбаций и наркотиков. Физических, цифровых, эмоциональных.
Вместо достижения амбициозных целей мы ищем дешевую альтернативу. Ретрансляцию чужой жизни и наших грез. Закапываемся в маркетинговых небылицах, мифах и сказках. Выдумываем свои виртуальные оправдания. А почувствовав сложности снижаем ставки. Не зря ученные находят даже в просмотре порно большой вред для мозга.
Отказ от таких вещей очень важен для сохранения концентрации. А только недавно понял зачем эти все истязания. Насколько глубока кроличья нора.
О чем я? Знать как сделать не значит сделать. Чтобы закончить дело нужна дисциплина и мотивация пройти путь. Нужно избавиться от любых пожирателей энергии и соблазнов, которые шепчут тебе "Да зачем тебе это? Разве тебе не хватает дешевой замены. Покушай бургера, посмотри видео на ютубчике или займись тем, что приносит удовольствие здесь и сейчас". Нашему мозгу тяжело сопротивляться ради призрачной цели, если запах дешевого и готового опьяняет мозг.
Самый главный враг — соблазн.
Мы сами снижаем ставки. Меняем свою мотивацию ради дешевых удовольствий здесь и сейчас. А в конце говорим "Я не достиг успеха, потому что не хотел его". Но я все чаще задаю себе вопрос правда ли я этого не хотел или дешево прожег свои амбиции?
У нас есть все ресурсы. Важнее как их не потратить зря.
выключаю режим мотивационных речей Рокки Бальбо. А вы вот еще прикольную статью можете почитать про дофаминовый детокс
vc.ru
Как провести дофаминовый детокс? — Психология Журнал на vc.ru
Современный мир насчитывает множество быстрых и увлекательных способов получить удовольствие: фастфуд, социальные сети, сериалы, онлайн-шопинг, компьютерные игры и другие. В сравнении с прошлыми эпохами, люди XXI века имеют доступ к значительно большему количеству…
👍23😁1
Делаю один из главных шагов для своей дофаминовой стабильности — понемногу ограничиваю комментарии в канале. Одна из самых неэффективных трат энергии.
Мне, честно, не хочется тратить свой ресурс на споры в интернетах. Но и полностью комменты ограничивать я не хочу.
Для этого начнем описывать рекомендации по эффективной коммуникации в интернетах:
1. Пишем уважительно. Ко всем. К автору статьи. Ко всем остальным.
2. Если не согласны, то не просто выражаем мнение, но и заботимся о читателях.
3. Не скидываем ссылку "здесь все написано". Это неответственная коммуникация, которая жрет много энергии и создает условия спора ради спора. Объясняем свою мысль и подкрепляем ссылками,а не заменяем свои слова чужими.
4. Стараемся писать лаконично.
5. Напоминаем о правилах. Особенно мне.
6. Помним, что мы не тратим свое и чужое время зря просто вываливая эмоцию или мнение.
7. Любые намеки на троллинг, оскорбление, спам, провокации сначала штрафуются, а потом идет бан.
Накидывайте еще правила. Чуть попозде сформируем свой стайлгайд по эффективной коммуникации в интернетах
Мне, честно, не хочется тратить свой ресурс на споры в интернетах. Но и полностью комменты ограничивать я не хочу.
Для этого начнем описывать рекомендации по эффективной коммуникации в интернетах:
1. Пишем уважительно. Ко всем. К автору статьи. Ко всем остальным.
2. Если не согласны, то не просто выражаем мнение, но и заботимся о читателях.
3. Не скидываем ссылку "здесь все написано". Это неответственная коммуникация, которая жрет много энергии и создает условия спора ради спора. Объясняем свою мысль и подкрепляем ссылками,а не заменяем свои слова чужими.
4. Стараемся писать лаконично.
5. Напоминаем о правилах. Особенно мне.
6. Помним, что мы не тратим свое и чужое время зря просто вываливая эмоцию или мнение.
7. Любые намеки на троллинг, оскорбление, спам, провокации сначала штрафуются, а потом идет бан.
Накидывайте еще правила. Чуть попозде сформируем свой стайлгайд по эффективной коммуникации в интернетах
👍15😁7👎2
Forwarded from iOS Dev
Изучение Swift Concurrency за 2 часа
📺 В этом масштабном (иначе и не сказать) видео Vincent Pradeilles рассказывает о Swift Concurrency с нескольких разных точек зрения.
А вот и сами статьи, которые Винсент использовал:
📖 Async await в Swift с примерами.
📖 Конвертация асинхронного кода в async/await в Swift.
📖 Async let: параллельный вызов async-функций.
📖 Какую роль Tasks играют в системе параллелизма Swift?
📖 Разбор Swift Tasks Groups на примере.
😃 iOS Dev
📺 В этом масштабном (иначе и не сказать) видео Vincent Pradeilles рассказывает о Swift Concurrency с нескольких разных точек зрения.
А вот и сами статьи, которые Винсент использовал:
📖 Async await в Swift с примерами.
📖 Конвертация асинхронного кода в async/await в Swift.
📖 Async let: параллельный вызов async-функций.
📖 Какую роль Tasks играют в системе параллелизма Swift?
📖 Разбор Swift Tasks Groups на примере.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤🔥3
Хорошего инженера, впервую очередь, определяет код, а не колличество докладов, доказательств в чатах, пройденных интервью и размер выторгованного оффера.
Проведя уже более 200 менторских занятий я понял главное — навык программирования не зазубришь слитой базой ответов, списанным чужим тестовым или прочитав книги великих умов.
Написать слова в код сложнее всего. Нужно много кодить и работать руками. Мы можем поднимать высокие темы или опускаться глубоко в кишки, выпускать курсы, объясняться на словах. Но лучше всего определяет программиста — это лайфкодинг.
Мое любопытство завело в сторону "А что такое высококачественный код программиста за десятки тысяч долларов?". Мы будем изучать лучшие практики из всех трудов программирования и переводить его в Swift.
Недавно я делал опрос какое для вас важное качество хорошего кода. Поэтому начнем с читаемости.
Открываю новую рубрику "Код на миллион долларов", где будем разбираться что такое читаемость, тестируемость и другие непонятные слова теорикам.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30❤🔥2
Стоит ли нанимать сверхквалифицированных инженеров в ит?
Вы часто можете слышать от многих разработчиков: "Зачем мне решать алгосы/знать математику/уметь стоять на голове/писать крутой код, если буду красить кнопки".
И многие не врут, что собесы чаще сложнее реальных задач. Но для чего же такие собесы? Бизнесу нужно найти лучшего кандидата для усиления.
Проблема сверхквалификации не редкость в других экономических сферах, но в ит она не так страшна. Ведь она более экономически динамическая и лучше перебздеть и нанять лучшего кандидата за выделенный бюджет, чем рисковонного. Скажите, что не сделали бы тоже самое и вы соврете.
Человек, который справляется со сложными задачами легко — полезен команде для роста даже если для него сейчас нет задач.
Но что же лучше? Повышать свою квалификацию, когда на рынке уже нет места для твоих глубоких знаний или расширять свои навыки в смежных областях? На этот вопрос ответили т-шейпом.
Вы часто можете слышать от многих разработчиков: "Зачем мне решать алгосы/знать математику/уметь стоять на голове/писать крутой код, если буду красить кнопки".
И многие не врут, что собесы чаще сложнее реальных задач. Но для чего же такие собесы? Бизнесу нужно найти лучшего кандидата для усиления.
Проблема сверхквалификации не редкость в других экономических сферах, но в ит она не так страшна. Ведь она более экономически динамическая и лучше перебздеть и нанять лучшего кандидата за выделенный бюджет, чем рисковонного. Скажите, что не сделали бы тоже самое и вы соврете.
Человек, который справляется со сложными задачами легко — полезен команде для роста даже если для него сейчас нет задач.
Но что же лучше? Повышать свою квалификацию, когда на рынке уже нет места для твоих глубоких знаний или расширять свои навыки в смежных областях? На этот вопрос ответили т-шейпом.
Austin Nichols Technical Search
Why to Consider Hiring Overqualified Software Engineers | Austin Nichols
Hiring an overqualified software engineer to your company can have both advantages and disadvantages. Here's what you should consider.
👍3
Программирование — это конструирование
Наша главная проблема, когда мы новички — выдумывать велосипеды. И чаще они получаются крайне неудобными. Ездить на них сложно, ведь вместо мягкой сидушки бутылка.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25😁1