iOS Makes Me Hate pinned «🍏 Сбор заявок для закрытой беты В общем, желающих стало больше, чем ожидалось. Писать каждому в лс и ждать ответа будет долго и дорого. Поэтому вот форма От вас нужно только: 1. email с привязанным к нему icloud 2. имя + фамилия 3. ник в телеграме для связи…»
This media is not supported in your browser
VIEW IN TELEGRAM
Сорри, что так долго. Учился делать гифку в афтер эффекте.
Итак, голодные игры начались, епта. Всем отправившим инфу скоро придет на почту приглашение в тестфлайт. Скачайте его заранее.
В первой версии будет 2 функции:
- Тесты. Они будут на время и с испытанием
- Материалы. Там можно изучить разные статьи
Дальше будут наращиваться мясо и мышцы. Каждую новую фичу будем презентовать тут, но не полностью, оставляя пасхалки и детали для самостоятельного изучения.
Сразу заложим вектор чего ожидать и нет. Это приложение не будет иметь цель слепой зубрежки. Идея — выжить (и выжать) из мобильного устройства все возможности для комфортного и приятного обучения и тренировок. Возможно, и игру напишем в будущем со сценарием...
Каждое испытание должно челенджить и иметь последствия. Ваш фидбэк будет приветствоваться
Заявки можно докидать сюда
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🐳1
Я не считаю деньги главным, но считаю важным инструментом для справедливости оплаты труда. Чем выше твой навык под изменчивые требования рынка, тем должна быть выше стоимость на спрос твоих услуг.
Абсолютно логично, что симулятор иосника должен увеличивать навыки пользователя, а значит и стоимость на рынке
https://getmatch.ru/salaries/ios
Please open Telegram to view this post
VIEW IN TELEGRAM
getmatch.ru
Сколько зарабатывают IT-специалисты в России?
Узнайте, достаточно ли вы получаете и какие компании платят специалистам разных уровней больше всего
😢6🔥3🤔1
Добавил первых 25 человек в бету. Вам должен придти инвайт.
Всем тем, кому не отправил — сорри. Буду добавлять по наличию свободного времени. Если есть вопросы по инвайтам, вы хотите ускорить свое добавление, подать заявку, написать фидбэк — прошу в чат.
Тех, кому выслал инвайт, попрошу в чат зайти самим. У многих стоит запрет на добавление в группы. Так вы покажите свою вовлеченность.
Активность в тестфлайт будет мониториться и в случае долгого простоя вас удалят из тестеров.
Всем тем, кому не отправил — сорри. Буду добавлять по наличию свободного времени. Если есть вопросы по инвайтам, вы хотите ускорить свое добавление, подать заявку, написать фидбэк — прошу в чат.
Тех, кому выслал инвайт, попрошу в чат зайти самим. У многих стоит запрет на добавление в группы. Так вы покажите свою вовлеченность.
Активность в тестфлайт будет мониториться и в случае долгого простоя вас удалят из тестеров.
Принцип, который приходит с опытом. Усложнять намного легче, чем упрощать. В емкости и лаконичности решений и кода чувствуется мастерство. Любой код должен решать четко поставленные задачи и чаще не больше.
Обычно о нем говорят так: "Это позволяет вести разработку, руководствуясь экономическими критериями — Заказчик не должен оплачивать ненужные ему функции, а разработчики не должны тратить своё оплачиваемое время на реализацию того, что не требуется".
Как заметили в предыдущем посте про KISS, то они с YAGNI очень похожи. Но все же есть отличия.
Если KISS нацелен на упрощение и полезен в плане работы с теми требованиями, которые имеют место быть, то YAGNI более категоричен и применяется для ограждения проектов по разработке ПО от «размывания» их рамок.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍1
Время важных опросов: как выбираете работу?
Anonymous Poll
74%
Достойная оплата труда
46%
Интересные задачи
39%
Коллектив
26%
Бренд компании
45%
Сильные разрабы
22%
Техно культура
52%
Перспективы развития
32%
Возможность работы заграницей
18%
Прозрачность
14%
Я безработный
Инвестиция в знания
Опрос выше показал ожидаемую картину. Первый пункт не так важен, потому что он необходим для базового существования. Гораздо важнее, что ниже. Как распределены голоса не показывают реальную картину мира, а скорее портрет моих читателей. Меня радует, какие лидирующие показатели, ведь для людей, проголосоваших за это, я и пишу.
Каждый день мы сопротивляемся. Заработанные вчера деньги завтра не принесут счастье. В нашей реальности значимость цифр диктуется курсом и инфляцией. Держа в кармане деньги не станешь богаче. Хвалясь вчерашним победам не станешь счастливей.
Каждый день я пишу. Думая, кем стану делая это год. Идя на работу для меня важнее, кем я стану проработая там год. Я готов сократить расходы сегодня, чтоб приумножить завтра. Но не наоборот. Синица в руках обесценится как только попала в руки.
Такую философию прошу учитывать при бета-тестинге симулятора) Гребанный эйпл тестит экстернал сборку тысячу лет. Всем приду в лс, кто оставлял заявки.
Опрос выше показал ожидаемую картину. Первый пункт не так важен, потому что он необходим для базового существования. Гораздо важнее, что ниже. Как распределены голоса не показывают реальную картину мира, а скорее портрет моих читателей. Меня радует, какие лидирующие показатели, ведь для людей, проголосоваших за это, я и пишу.
Каждый день мы сопротивляемся. Заработанные вчера деньги завтра не принесут счастье. В нашей реальности значимость цифр диктуется курсом и инфляцией. Держа в кармане деньги не станешь богаче. Хвалясь вчерашним победам не станешь счастливей.
Каждый день я пишу. Думая, кем стану делая это год. Идя на работу для меня важнее, кем я стану проработая там год. Я готов сократить расходы сегодня, чтоб приумножить завтра. Но не наоборот. Синица в руках обесценится как только попала в руки.
Такую философию прошу учитывать при бета-тестинге симулятора) Гребанный эйпл тестит экстернал сборку тысячу лет. Всем приду в лс, кто оставлял заявки.
🔥9😐1
Почему книги Мартина такие популярные? Быть может дело в его форме подачи. В простых вещах. Высоких стандартах. Хз.
Её я впервые взял 5 лет назад еще до начала разработки на iOS. Тогда я писал на Node.js и React. Изучал SOLID и микросервисную архитектуру.
Идеи Мартина всегда и везде трактуют по-разному. И каждый готов написать по тысячи слов или сотни часов рассказов в чем ты не прав и о чем же по-настоящему хотел рассказать Мартин. Будь это 40 летний пхпшник или мобильщик с 10 годами опыта — каждый из них посчитает, что если он не попытается ни с кем поспорить, то он не настоящий эксперт
Но если отбрасывать теориков и смотреть к адекватным практикам, то главное не слова, а код. Хорошо организованный проект должен помогать выполнять задачи, а не слепо следовать чьим-то интерпретациям. Все идеи из книги должны быть использованы не отбрасывая здравый смысл и пожелания бизнеса. А если они не помогают — значит идеи были не так поняты и использованы.
Поэтому стоит приходить к этой книге после нескольких лет практики, когда потыкаешь безобразный прод. Перечитав ее сейчас я освежил знания и понял какую пользу должен приносить хороший дизайн проекта
#books
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥3
По каким причинам система может решить убить приложение?
🟢 lvl: jun+
Удивительно, но многие часто ограничивают свои знания о сбоях в приложениях только force unwraping'ом или дедлоком. Простой вопрос "По каким причинам у нас может вылететь приложение?" вызывает панику.
У эйпл есть куча материалов. Пройдемся по базе:
Aborts (Abnormal Exits) — Это обычно происходит, когда апка сталкивается с вызовом abort(). Чаще это какое-то нежелательное поведение или assert.
Memory Limit — ну тут все просто, память переполняется и происходит крэш
Bad Access — Неправльный доступ к памяти. Например, попытка обратиться к несуществующему индексу массива.
Illegal Instruction — если простыми словами, это когда система не может понять инструкции языка. Как-то раз у меня такое было с одной версией хкода, где внутри структуры был тюпла и это приводило к крашу в рантайме. Пофиксилось обновлением.
App Watchdog — внутри системы есть таймер, который определяет время запуска нашего приложения. И, если майнтред отвечает слишком долго, то происходит принудительное завершение апки
Memory Pressure — иногда апка может сдохнуть, если находится в бекграунде и при этом используемому приложению потребуется больше памяти. Тогда система завершает свернутые в фон приложения.
- Почему мое приложение убивается?
- Причины заверешения работы апки
Удивительно, но многие часто ограничивают свои знания о сбоях в приложениях только force unwraping'ом или дедлоком. Простой вопрос "По каким причинам у нас может вылететь приложение?" вызывает панику.
У эйпл есть куча материалов. Пройдемся по базе:
Aborts (Abnormal Exits) — Это обычно происходит, когда апка сталкивается с вызовом abort(). Чаще это какое-то нежелательное поведение или assert.
Memory Limit — ну тут все просто, память переполняется и происходит крэш
Bad Access — Неправльный доступ к памяти. Например, попытка обратиться к несуществующему индексу массива.
Illegal Instruction — если простыми словами, это когда система не может понять инструкции языка. Как-то раз у меня такое было с одной версией хкода, где внутри структуры был тюпла и это приводило к крашу в рантайме. Пофиксилось обновлением.
App Watchdog — внутри системы есть таймер, который определяет время запуска нашего приложения. И, если майнтред отвечает слишком долго, то происходит принудительное завершение апки
Memory Pressure — иногда апка может сдохнуть, если находится в бекграунде и при этом используемому приложению потребуется больше памяти. Тогда система завершает свернутые в фон приложения.
- Почему мое приложение убивается?
- Причины заверешения работы апки
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍4
Экспертность
Любая форма управления вам скажет, что нет ничего лучше для работника и поддержки своей ценности на рынке, в компании, семье — это уровень твоей экспертизы. Но как почувствовать этот уровень?
Достаточно ли обдурить человека многочасовыми непонятными докладами на разных бесполезных площадках? Провести 1000 часов менторства? Собрать 1млн подписчиков на канале? Выпустить крутой продукт? Сделать полезную либу? Выиграть телеграмм конкурс? Получить должность тимлида?
Ни один из перечисленных выше приемов не доказывают ничего. Подписчики на канале легко накручиваются, а на накрутки идут зеваки. Джунам можно заливать любую дичь. Продукт становится успешным благодаря командам, а не разрабам. Должность тимлида можно получить просто потому, что предыдущий решил уйти, а никого рядом не было.
Экспертность проверяется выдержкой. Многолетним успехом. С опытом понимаешь, что только регулярные практики помогают поддерживать форму. Олимпийские игры идут раз в 4 года, и 3 года из них люди готовятся к ним. Хотим ли мы быть программистами олимпийского уровня и высока ли их ценность с экспертизой, ответ дает каждый сам себе.
Любая форма управления вам скажет, что нет ничего лучше для работника и поддержки своей ценности на рынке, в компании, семье — это уровень твоей экспертизы. Но как почувствовать этот уровень?
Достаточно ли обдурить человека многочасовыми непонятными докладами на разных бесполезных площадках? Провести 1000 часов менторства? Собрать 1млн подписчиков на канале? Выпустить крутой продукт? Сделать полезную либу? Выиграть телеграмм конкурс? Получить должность тимлида?
Ни один из перечисленных выше приемов не доказывают ничего. Подписчики на канале легко накручиваются, а на накрутки идут зеваки. Джунам можно заливать любую дичь. Продукт становится успешным благодаря командам, а не разрабам. Должность тимлида можно получить просто потому, что предыдущий решил уйти, а никого рядом не было.
Экспертность проверяется выдержкой. Многолетним успехом. С опытом понимаешь, что только регулярные практики помогают поддерживать форму. Олимпийские игры идут раз в 4 года, и 3 года из них люди готовятся к ним. Хотим ли мы быть программистами олимпийского уровня и высока ли их ценность с экспертизой, ответ дает каждый сам себе.
❤🔥6👍2
никогда не перестану делиться лучшим контентом из лучшего канала на ютубе
https://www.youtube.com/watch?v=X8W-6RDHqxM
https://www.youtube.com/watch?v=X8W-6RDHqxM
YouTube
ТЕОРИЯ ВЕРОЯТНОСТЕЙ ДЛЯ ПРОГРАММИСТА
Курс “Профессия Разработчик” от Skillbox — https://l.skbx.pro/GcgzunНовогодняя скидка на курс - 55%! Акция действует до конца декабря
Кэшбэк 10% на всё до конца года с бесплатной дебетовой Альфа-Картой. Закажите и получите вечное бесплатное обслуживание:…
Кэшбэк 10% на всё до конца года с бесплатной дебетовой Альфа-Картой. Закажите и получите вечное бесплатное обслуживание:…
👍5❤🔥3
Чтобы ответить на этот вопрос надо определить что такое вообще "просадка"? Frame drop? Ошибка движка отрисовки?
Нет, куда проще начать с простейшей реализации счетчика. Зачем же нам счетчик? Я уже говорил о системном Watchdog'e.
Концепция сложнее для многих, чем реализация. Сторожевой пес следит за нашим главным потоком и если он выполнится дольше, чем нужно, то он начинает лаять. Супер простая концепция узнать об избыточной нагрузки на main thread.
Распишу простую реализацию в картинках. Пример максимально упрощенный и нужен лишь для понимания самой концепции. Реальный боевой код был бы более масштабируемым, и покрывал бы больше корнер-кейсов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4
Один из важнейших вопросов на финалках во многие продуктовые компании от hr и тимлидов. Чьи интересы важнее при выполнении задач?
Anonymous Poll
65%
Бизнеса
52%
Пользователей
4%
Разрабов
1%
Дизайнеров
4%
Мои
5%
Ничьи. Че по кайфу то и делаем
1%
Нам планы генерирует нейронка
15%
Всех
О коммуникации
Я же обещал делиться материалами с учебы. Попробую в формате мини-эссе.
Многие разработчики не любят общаться. Не любят, не хотят, не умеют. Это нормально. У многих осталось мышление, что разраб — только исполнитель. Он должен просто писать код.
Но чем больше твоя компания и команда, тем сложнее твой продукт и больше у тебя продуктовых и технических зависимостей.
Программирование становится лишь малой частью твоей работы. Прежде чем написать код нужно много думать, искать компромиссы, формулировать и согласовывать. Ведь много вопросов, а ответов почти нет.
Даже имея две руки супер сеньор никогда не сможет кодить быстрее 15 джунов. Ему их нужно будет координировать и обучать. Здесь придется идти к бизнесу. Брать задачи. Отдавать их и писать замечания на код ревью (как минимум).
Писать и общаться на родном языке придется больше, чем на любом из программирования.
Никто не любит разговаривать, но это неизбежно. Этому нужно учиться, чтоб речи не стали пустыми, избыточными, слишком сухими или чересчур эмоциональными.
Эффективные коммуникации супер важная вещь для карьеры
Я же обещал делиться материалами с учебы. Попробую в формате мини-эссе.
Многие разработчики не любят общаться. Не любят, не хотят, не умеют. Это нормально. У многих осталось мышление, что разраб — только исполнитель. Он должен просто писать код.
Но чем больше твоя компания и команда, тем сложнее твой продукт и больше у тебя продуктовых и технических зависимостей.
Программирование становится лишь малой частью твоей работы. Прежде чем написать код нужно много думать, искать компромиссы, формулировать и согласовывать. Ведь много вопросов, а ответов почти нет.
Даже имея две руки супер сеньор никогда не сможет кодить быстрее 15 джунов. Ему их нужно будет координировать и обучать. Здесь придется идти к бизнесу. Брать задачи. Отдавать их и писать замечания на код ревью (как минимум).
Писать и общаться на родном языке придется больше, чем на любом из программирования.
Никто не любит разговаривать, но это неизбежно. Этому нужно учиться, чтоб речи не стали пустыми, избыточными, слишком сухими или чересчур эмоциональными.
Эффективные коммуникации супер важная вещь для карьеры
👍4😁1🤔1
Поприветствуем один из популярных паттернов. А также один из моих любимых.
Удивительно, как многие не знают реализацию самого популярного паттерна для изменения данных.
Для большинства легче затащить RxSwift или Combine, которые в 90% юзаются только для прослушки данных пары классов.
Здесь на помощь приходит он.
Пример опять максимально упрощенный и скорее академический, который не советует требованиям в реальном проде. Это вы должны всегда учитывать, когда смотрите что-то в интернете.
Чего вы еще ждете от бесплатных постов? Тут банально формат не позволяет делать качественный контент для ВАШЕГО прода и не подходит под контексты. Проектирование - очень индивидуальная вещь, которая зависит от бизнес приоритетов, легаси и ресурсов.
Хотите норм разборы — заказывайте консультацию или оформите в будущем подписку на симуляторе
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10👍6💯3🏆2⚡1🔥1