• 10 навыков и знаний необходимых начинающему iOS разработчику

      image

      Профессия iOS разработчик сейчас довольно востребована, хорошо оплачивается и, возможно даже, модная, а потому привлекает много людей. 

      Ко мне и коллегам на собеседования приходит много кандидатов на открытые у нас вакансии, и я отчетливо вижу у многих новичков отсутствие базовых знаний или просто неуверенное владение ими. Хотя в интернете и много статей, книг и курсов (платных и бесплатных), из которых можно получить необходимые знания, не всегда просто понять, на изучении каких тем стоит сконцентрироваться.

      В этой заметке я поделюсь информацией про то, какие навыки и знания я считаю важными для начинающего iOS разработчика, попробую объяснить зачем они нужны и дам ссылки на материалы для их изучения. 
      Читать дальше →
    • Немного практики функционального программирования в Swift для начинающих

      • Tutorial


      Я хотела бы представить концепцию Функционального Программирования новичкам самым простейшим образом, выделив некоторые его преимущества из множества остальных, которые реально позволят сделать код более читаемым и выразительным. Я подобрала для вас интересные демонстрационные примеры, которые находятся на Playground в Github.

      Функциональное Программирование: Определение


      Прежде всего, Функциональное Программирование — это не язык или синтаксис, а скорее всего — способ решения проблем путем разбиения сложных процессов на более простые и последующей их композиции. Как следует из названия "Функциональное программирование", единицей композиции для данного подхода является функция; и цель такой функции — избежать изменения состояния или значений за пределами своей области действия (scope).

      В Мире Swift для этого есть все условия, ибо функции здесь являются такими же полноправными участниками процесса программирования, как и объекты, а проблема изменяемости (mutation) решается на уровне концепции value ТИПОВ (структур struct и перечислений enum), которые помогают управлять изменяемостью (mutation) и четко сообщают о том, как и когда это может произойти.

      Однако Swift не является в полном смысле языком Функционального программирования, он не принуждает вас к Функциональному программированию, хотя и признает преимущества Функциональных подходов и находит способы встраивания их.

      В этой статье мы сфокусируемся на использовании встроенных в Swift (то есть «из коробки») элементов Функционального программирования и понимании того, как можно их комфортно использовать в вашем приложении.
      Читать дальше →
    • Йода из Кремниевой долины

      • Translation

      Дональд Кнут, мастер алгоритмов, размышляет над 50 годами работы над своим главным творением, книгой «Искусство программирования», которую не прекращает дополнять



      Дональд Кнут в своём доме в Стэнфорде, Калифорния. Жуткий перфекционист, назначил награду за нахождение ошибки в своих книгах.

      Уже полвека стэнфордский специалист по информатике Дональд Кнут, немного напоминающий Йоду – хотя ростом он 193 см и носит очки – занимает доминирующее положение духовного учителя в области алгоритмов.
      Читать дальше →
    • Выборочный обход блокировок на маршрутизаторах с прошивкой Padavan и Keenetic OS

        Инструкций с разными вариантами обхода блокировок Интернет-ресурсов опубликовано огромное количество. Но тема не теряет актуальности. Даже всё чаще звучат инициативы на законодательном уровне заблокировать статьи о методах обхода блокировок. И появились слухи, что Роскомнадзор получит ещё одну пачку денег налогоплательщиков на «более лучшие» блокировки. Опытные пользователи ничего нового и полезного из статьи не узнают. А вот другие получат готовые пошаговые инструкции для простого и эффективного выборочного обхода блокировок на популярных маршрутизаторах с прошивкой Padavan и Keenetic.


        Читать дальше →
      • Android-бокс Mecool KM9 на свежей SoC Amlogic S905X2 с 4 Гбайт ОЗУ и Android TV 8.1 — понять и простить

          Недавно на рынке появилось достаточно много боксов на свежей SoC от Amlogic — S905X2. Все они дешёвые, «холодные» прямо из коробки, имеют неплохие технические характеристики, но все проблемные в той или иной степени. Те, кто читает мои обзоры боксов, знает, что если ваши требования выше «включается и как-то показывает видео», а бюджет существенно ограничен, то к выбору бокса нужно подходить очень аккуратно. Скоро у меня будет единый детальный обзор нескольких актуальных боксов на S905X2 (не все ещё прилетели). Ну, а сегодня я расскажу вам детально об одном боксе — Mecool KM9. Самое важное отличие от своих собратьев состоит в том, что он поставляется с системой Android TV 8.1 и Bluetooth-пультом.


          Читать дальше →
        • Покупаем на taobao.com

            Я оставил в России много настольных игр, везти их с собой во Вьетнам смысла не видел. Надеялся, что можно будет что-то купить на месте. Облом-с, тут про настольные игры мало чего слышали, никаких магазинчиков специализированных нет. Выход был найден — рядом Китай, с огромным ассортиментом и относительно небольшими ценами. Сейчас я вам расскажу, на примере закупки настольных игр, как можно покупать что-то в Китае.

            taobao.com — это китайский ebay, или что-то на него похожее. Большое количество разных магазинов, предоставляющих разного вида товары. Если я все правильно понял — сам taobao это как аггрегатор таких магазинов. Можно найти огромное количество разных товаров: игрушки, техника, одежда, и т.д. и т.п. Разброс цен большой, как всегда для Китая, от очень и очень низких, до обычных европейских. Качество соответственное.

            Читать дальше
          • Размеры экранов

            • Tutorial
            Планшеты и смартфоны оснащаются экранами с разными соотношениями сторон и разной плотностью пикселей, однако эти параметры редко указываются в технических характеристиках.

            Попробуем разобраться со всеми хитростями, связанными с этими параметрами. Начнём с планшетов.
            Вот соотношение размеров экранов, использующихся в большинстве современных планшетов.



            Обратите внимание, насколько экран 8" с соотношением сторон 4:3 визуально больше широкого экрана 7". А широкий экран 10.1" на сантиметр меньше экрана 9.7" по высоте.

            Я свёл в таблицу параметры экранов, чаще всего использующихся в планшетах.



            Текст на экранах с низким PPI (количеством точек на дюйм) читается не комфортно. Я бы не стал покупать планшет с экраном, имеющим PPI ниже 150. Даже 164 PPI экрана iPad mini многим кажутся недостаточными. Отлично воспринимаются экраны с PPI больше 200.

            Для меня было большим открытием, что экран 9.7" 1024x768 имеет даже меньшее PPI, чем экран 7" 800x480.

            Читать дальше →
          • Переlator

              По ходу своей работы я сталкиваюсь с маленькими задачами, которые отнимают много времени (при решении «в лоб»). Иногда получается найти средства для быстрого решения этих задач, иногда нет. Во втором случае, чаще всего, я быстренько пишу собственные маленькие программы, которые позволяют максимально упросить решение задачи.

              Недавно столкнулся с одной такой задачей. Всё чаще стала возникать необходимость перевести какой-то текст. То на иврите нужно перевести абзац, то на китайском сайте нужно было почитать обсуждение, то при написании письма зарубежным коллегам не получается перевести «хитрое» предложение — приходится обращаться к онлайн сервисам перевода («подглядеть», что подскажут). Я пользовался сервисами ПРОМТ и Google. Такой подход мне начал надоедать, и я за пару вечеров набросал контекстный переводчик, который использует сразу три сервиса от компаний: Google (Google Translator), Microsoft (Bing Translator), ПРОМТ (мобильная версия).

              image

              Уверен, что мои наработки кому-то окажутся полезными.

              Эту мини-статью я разделю на две части. Первая посвящена тем, кто хочет просто установить программу и пользоваться ей. А вторая, тем только делает первые шаги в освоение разработки «под» Mac OS X и iPhone (сделали первую программа «Конвертер» по руководству от Apple, но уже имеющие желание писать коммерческое ПО).

              Читать дальше →
            • На какие языки лучше переводить свой продукт?

                Какие языки лучше выбрать для локализации своего продукта? Этот вопрос часто ставит разработчиков в тупик. А от правильного ответа на него могут зависеть самые важные показатели – величина прибыли, количество скачиваний или посетителей. Что ж, спешим поделиться с вами любопытной статистикой на эту тему.

                Читать дальше →
              • Лучшие свободные моноширинные шрифты с поддержкой кириллицы



                В 2011 году была переведена хорошая статья „Лучшие шрифты для программирования“. Теперь представляется список самых удачных шрифтов для кода на момент июня 2014 года.
                Хотя я и уверен, что многих устраивает Courier New, используемый по умолчанию в Windows во многих редакторах. Но, как человек любящий типографику, настаиваю обратить внимание на одну из гарнитур из этой статьи. Хороший шрифт — это прекрасно!
                Читать дальше →
              • Как заставить себя работать?

                  В понедельник утром за неделю до Нового Года этот вопрос, думаю, актуален для многих.

                  Есть куча статей на эту тему. Вот основные советы:
                  • Начинайте с самой сложной задачи
                  • Сделайте первый шаг — продолжать будет уже легче
                  • Составьте план и неукоснительно ему следуйте
                  • Занимайтесь любимым делом
                  • Не отвлекайтесь

                  Всё просто. Закройте Хабр и приступайте к работе!

                  Только почему-то на меня все эти советы не действуют. Вроде правильные вещи люди говорят, но — не работает. Кстати, на тему «Почему не получается заставить себя работать?» тоже есть статьи. В них проблема описывается с точки зрения психологии и предлагаются решения вроде «избавьтесь от внутренних противоречий и страха перед неудачей». Наверное, если это сделать, то всё получится, но где найти эту волшебную кнопку «Избавиться от...»?
                  Читать дальше →
                • Ресурсы, о которых должен знать каждый Android-разработчик

                  • Translation
                  Сегодня я хочу поделиться с вами моим вольным переводом статьи, написанной Сергеем Повзнером (Sergey Povzner). Сергей ведёт блог bongizmo.com и занимается разработкой туристических гидов под общим названием Citybot.

                  В то время как Android продолжает свой невероятный рост, всё больше и больше программистов начинают разрабатывать приложения на этой платформе. Если ты начинаешь свой путь сегодня, то ты определенно — счастливчик. За последние годы Android значительно повзрослел и избавился от множества детских болезней. Информации по платформе более чем достаточно. Я же расскажу о самых важных ресурсах.

                  Статья будет полезна как новичкам, так и опытным разработчикам. Это гид по миру Android-разработки.
                  Читать дальше →
                • Книга “Разработка приложений для Windows 8 на языке C#” доступна для скачивания


                    Стала доступна для бесплатной загрузки первая русскоязычная книга по разработке Windows Store приложений на языке C#.
                    Вы можете скачать PDF версию данной книги на сайте:

                    http://www.spugachev.com/windows8book
                    Также, можно купить бумажную версию на OZON.RU.
                    Авторы книги: я (WizardBox), Atreides07 и kichik.
                    Читать дальше →
                  • Полезные штуки для дизайнера интерфейсов iOS приложений



                      Прочитав посты Полезные штуки для iOS разработчиков #1 от Coder89 и Полезные штуки для iOS разработчика #2 от SeriiZ, решил собрать «полезные штуки» для дизайнеров пользовательского интерфейса iOS приложений.
                      Читать дальше →
                    • Полезные штуки для iOS-разработчика #2

                      Некоторое время назад я прочитал интересный пост, посвященный полезным фрэймворкам и библиотекам для разработки под iOS. С вашего позволения и согласия Coder89 представляю «Полезные штуки для iOS-разработчика часть вторая».
                      Читать дальше →
                    • Прекратите скручивать!

                      • Tutorial
                      Ну действительно, прекратите. Есть куча прикольных штук для соединения самых разнообразных проводов, а все равно технология «откусить зубами изоляцию, скрутить, замотать изолентой» жива до сих пор.

                      Дальше много текста, фотографий, разборок. Ну все как обычно
                    • Книги, видео и другие материалы по разработке под iOS

                        «Хочу программировать под iPhone — говори, что почитать...»
                        Любимая девушка


                        Когда решаешься заняться разработкой под iOS, то трудно выбрать литературу и ресурсы, которые действительно были бы полезны. Хорошо еще, что Apple предоставляет множество учебных материалов и программ с открытым исходным кодом в своем центре для разработчиков. В остальных книжках можно если и не утонуть, то порядочно захлебнуться. Сейчас я жалею, что потратил время на пару «мануалов». Не буду делать им антирекламу, а лучше порекомендую хорошие материалы по программированию под iOS.

                        Под катом книги, видеокурсы и блоги, которые будет полезно прочитать/посмотреть.
                        Читать дальше →