Свифтовый подход к локализации строк, на замену всем надоедшего NSLocalizedString. Можно и к автогенераторам прикрутить.
https://swifting.io/blog/2016/11/20/27-localize-your-strings-swiftly/
#swift
Пятиминутка ликбеза. Простыми словами про протокол аутентификации Zero-knowledge proof - сравнение с другими методами, устройство и применение на практике.
https://www.cossacklabs.com/zero-knowledge-protocols-without-magic.html
#security
Строим архитектуру приложения с оглядкой на опыт бэкенда - но не микросервисы, а микрофичи. Отличная статья про использование фреймворков.
http://ppinera.es/2016/07/10/microfeatures.html
#architecture
Когда рефакторинг в Xcode перестает работать, стоит посмотреть и на сторонние утилиты. Первая мысль - AppCode, но есть и более простое решение - Refactorator.
http://johnholdsworth.com/refactorator.html
#tools
Так, обещаю, последний наброс в топку ООП-холивара. Статья "Я не понимаю ООП" и 850+ комментариев к ней.
http://habrahabr.ru/post/147927/
#oop
Если вы пропустили, то UIRefreshControl с десятки можно пользоваться не только в таблицах, а вообще в UIScrollView и всех ее наследниках. Теперь ваши фейковые таблицы никто не отличит от настоящих.
http://useyourloaf.com/blog/refresh-control-changes-in-ios-10/
#uikit
А тут, кстати, альфа версия Typhoon для Swift подоспела. В отличие от всех прочих DI-контейнеров, он целиком построен на кодогенерации. Тестите, заводите баги, стабильная версия тоже не за горами.
https://github.com/appsquickly/TyphoonSwift
#tools
Бодренькое видео про разработку обеих составляющих простого клиент-серверного приложения на Swift с использованием фреймворка Kitura.
https://www.youtube.com/watch?v=PNoO6UcFucU
#swift #backend
А тем временем открылась регистрация на декабрьский митап CocoaHeads Moscow. В программе промисы, использование SpriteKit не только в игрушках и обсуждение процессов разработки App in the Air.
https://rambler-digital-solutions.timepad.ru/event/410499/
#meetups
Исследование разницы времени сборки проекта на новых макбуках - тринадцати- и пятнадцатидюймовом. Ну и со старыми моделями тоже сравнивают.
https://blog.curtisherbert.com/13-vs-15-macbook-a-developers-perspective-in-2016/
#xcode
Подоспели видео с прошедшего CocoaHeads, есть несколько определенно интересных докладов.
https://habrahabr.ru/post/315748/
#meetups
Сравнительный анализ реализации циклов в разных языках программирования, в том числе Python, Ruby, Swift.
https://eev.ee/blog/2016/11/18/iteration-in-one-language-then-all-the-others/
#languages
Смерть open source - известный специалист по безопасности iOS рассказывает о проблемах сообщества и о том, почему он решил из него выйти.
https://www.zdziarski.com/blog/?p=6296
#opensource
Если вы уже дошли до своего любимого коворкинга, то заварите черничный смузи и наслаждайтесь переведенным на русский стартап-манифестом. И да, немного мата.
http://ebanoe.it/2016/11/12/fuck-you-startup-world/
#philosophy
Подробный доклад о том, что делает число рандомным и какие в iOS есть способы его получить. Спойлер: используется GameplayKit.
https://realm.io/news/tryswift-natalia-berdy-random-talk-consistent-world-noise-swift-gamekit-ios/
#math #sdk
Нечем заняться в воскресенье? К черту эти ваши сноуборды или коньки - лучше напишите свой pass для llvm! Зачем - уже другой вопрос, но куча идей на поверхности - автогенерация моков, обфускация кода и все такое.
http://llvm.org/docs/WritingAnLLVMPass.html
#llvm
Через 5 минут начинается прямая трансляция CocoaHeads Moscow. Первый доклад - про использование Promise в iOS от Михаила Рахманова.
https://www.facebook.com/afishamansarda/videos/1360997547257627/
#meetups
Несколько примеров ситуаций, когда подходы из protocol-oriented programming явно лишние, за авторством Криса Эйдхофа.
http://chris.eidhof.nl/post/protocol-oriented-programming/
#swift #architecture
Rob Napier рассказывает о том, почему, несмотря на то, что Swift нельзя считать чисто функциональным языком, от некоторых концепций из мира функциональщины он сильно выигрывает.
https://realm.io/news/tryswift-rob-napier-swift-legacy-functional-programming/
#swift
Краткий пересказ противостояния поклонников и ненавистников ООП с подборкой литературы на тему. Отличный материал для завтрашнего холивара с коллегами.
http://blogerator.ru/page/oop_why-objects-have-failed
#oop
Устал двигать и красить вьюшки и хочется прокачаться в понимании устройства языков программирования вообще и работы компиляторов в частности? Ты такой не один. Определить дальнейшие действия поможет небольшой чек-лист.
http://belkadan.com/blog/2016/05/So-You-Want-To-Be-A-Compiler-Wizard/
#cs #languages
Крик души про состояние международного iOS сообщества и качество контента на конференциях. Во многом правда, что скажешь.
http://ppinera.es/2016/11/16/in-a-world.html
#meetups #community
Про протокол RawRepresentable и использование любых типов в качестве rawValue для enum'ов.
https://oleb.net/blog/2016/11/rawrepresentable/
#swift
Давайте поговорим о хайпе. Признайтесь, многие из вас начали внедрять VIPER/Realm/Rx* не после тщательного анализа того, какие проблемы эти инструменты решают, а под влиянием разных выступлений на конференциях, статей и всего такого. Вот статья именно про такой подход - Hype-Driven Development.
Отдельные лайки за шикарную цитату "Let’s skip tests! Our Guru says so. We didn’t write them anyway."
https://blog.daftcode.pl/hype-driven-development-3469fc2e9b22#.lbln1wc2u
#philosophy #tools
Детальный разбор того, что же такое CQRS, и чем он отличается от традиционного CRUD-подхода. В комплекте таблички, схемы, все, что вы любите.
http://blog.softmemes.com/2016/11/12/using-cqrs-with-event-sourcing/
#architecture
Немножечко вечерней мотивации вам в мессенджер. Приходилось ли вам говорить что-то вроде "Выступить на митапе? Да о чем мне рассказывать, все это и так знают". Если да - то статья для вас.
https://medium.com/upday-devs/tech-talks-you-do-have-something-to-say-a1a0ae23fa0#.5te5buwmd
#talks #motivation
Максимально подробный гайд по написанию информативного и лаконичного сообщения для коммита.
http://chris.beams.io/posts/git-commit/
#git
Отличный разбор механики работы thread sanitizer'а с готовым примером, на котором его можно погонять.
http://blog.benjamin-encz.de/post/understanding-data-race-detection-by-implementing-in-swift/
#tools #swift #concurrency
Десяточка практических советов по свифту из разряда "бери и делай". Капитанство, но все же.
https://medium.com/ios-geek-community/10-tips-to-become-better-swift-developer-a7c2ab6fc0c2#.ucw1u7cas
#swift
Про watch dogs и симболикацию objc вызовов в рантайме. Забираем в свои проекты!
k06a/puppy-watchdog-20f43ac0b086" rel="nofollow">https://medium.com/@k06a/puppy-watchdog-20f43ac0b086
#perfomance #tools