Как стать автором
Обновить
8
0
Анатолий Березняк @Bezk

Пользователь

Отправить сообщение

Дисковая балансировка в Nginx

Время на прочтение4 мин
Количество просмотров25K

В этой статье я опишу интересное решение на базе Nginx для случая, когда дисковая система становится узким местом при раздаче контента (например, видео).
Читать дальше →
Всего голосов 42: ↑35 и ↓7+28
Комментарии60

Swift + CoreData + Немного напильника

Время на прочтение13 мин
Количество просмотров29K
image

Зачесались у меня тут руки узнать, что это за зверь такой Swift и с чем его собственно едят. Как и ожидалось проблем и подводных камней пока оказалось много, ну либо я совсем не умею этот Swift готовить. Самая большая проблема ожидала меня при попытке подружить этот самый Swift с CoreData — штука принципиально отказывалась работать. Обильное гугление не приводило к хоть каким-либо хорошим результатам — информация была либо крайне обрывочной, либо попахивала костылями. Посему в первый вечер терзаний я капитулировал и решил использовать самое тупое решение в работе с CoreData по-старинке — хранить весь код в старом добром Objective-C и уже к нему обращаться из Swift (например в интерфейсах). Однако, перфекционизм в душе не давал покоя и требовалось реализовать чистое одноязычное решение, что я собственно и смог сделать, хотя признаться и не без костылей тоже. Кому интересен процесс прошу под кат. Также попутно предлагаю собирать баги и не самые на мой взгляд удобные вещи, которые пришли вместе с новым языком. Возможно, что-то я сделал криво — буду благодарен комментариям и поправкам, а также обсуждению лучших практик.
Читать дальше →
Всего голосов 32: ↑27 и ↓5+22
Комментарии21

Язык программирования Swift. Русская версия

Время на прочтение17 мин
Количество просмотров377K
imageПривет, Хабр! 2 июня все мы воочию могли наблюдать, как компания Apple начала творить революцию в стане Objective-C разработчиков, представив миру свой новый язык программирования – Swift. Вместе с этим, она выложила в открытый доступ небольшую документацию по языку, которую мы решили перевести, если на то будет спрос. Предлагаем вашему вниманию перевод первой главы. Если тема будет интересна, то мы продолжим публиковать перевод каждую неделю.
Читать дальше →
Всего голосов 117: ↑103 и ↓14+89
Комментарии51

Разработка iOS8 приложения на Apple Swift

Время на прочтение6 мин
Количество просмотров62K
Статья является своеобразным продолжением статьи «Знакомьтесь, Swift!» за авторством Helecta, а также вольным переводом статьи Developing iOS Apps Using Swift Tutorial Part 2.



Итак, в первой статье мы написали простое Single View приложение, включающее таблицу с несколькими ячейками.
На этот раз мы немного углубимся и сделаем несколько более амбициозных вещей. Мы будем обращаться к API поиска iTunes, парсить ответ, полученный в JSON и отображать результаты в Table View.
На первый взгляд может показаться, что все это довольно сложно и предстоит много работы, но на самом деле это не так. Все описанное выше является достаточно простым функционалом для iOS приложений и каждый уважающий себя iOS разработчик должен это уметь.
Читать дальше →
Всего голосов 49: ↑41 и ↓8+33
Комментарии32

Swift — нововведения

Время на прочтение1 мин
Количество просмотров77K
image

Привет, Хабр!

Я не сомневаюсь, что многие из нас вчера смотрели презентацию WWDC 2014 от Apple. Были представлены новая операционная система OS X Yosemite, а так же iOS 8. Но главное, чем наверное взбудоражило Apple программистов во всем мире, так это новым языком — Swift!

Swift является новым инновационным языком программирования для Cocoa and Cocoa Touch с еще более кратким и выразительным синтаксисом, с помощью которого приложения пишутся молниеносно. Это делает написание кода интерактивнее и веселее, и работает бок о бок с Objective-C. По словам Федериги, некоторые функции Swift работают быстрее, чем в других объектно-ориентированных языках: например, сортировка сложных объектов происходит в 3,9 раза быстрее, чем в Python, и почти в полтора раза быстрее, чем в Objective-C.
Читать дальше →
Всего голосов 200: ↑131 и ↓69+62
Комментарии264

Видео-курс по Swift на русском языке

Время на прочтение1 мин
Количество просмотров115K
Здравствуй, Хабр!

Мы сделали видео-уроки по языку Swift на основе бесплатной книги The Swift Programming Language от Эппл.



Все 32 урока доступны на нашем сайте. Несколько уроков – под катом.
Читать дальше →
Всего голосов 146: ↑129 и ↓17+112
Комментарии62

Знакомьтесь, Swift!

Время на прочтение5 мин
Количество просмотров107K
2 июня на конференции WWDC 2014 Apple представила новый объектно-ориентированный язык программирования — Swift. Я думаю, многие уже успели посмотреть, что из себя представляет этот язык (Swift — нововведения), поэтому я не буду останавливаться на нововведениях. Я предлагаю создать простенький проект на языке Swift, чтобы понять на деле основные отличия от привычного Obj-C.


Читать дальше →
Всего голосов 88: ↑68 и ↓20+48
Комментарии63

Как запилить свой дешборд на все случаи жизни?

Время на прочтение9 мин
Количество просмотров81K
В работе почти каждого человека непременно есть цифры, от которых зависит всё. Посещаемость сайта, время отклика или количество коммитов — что угодно! И если поместить эти цифры на самое видное место, они сразу становятся либо отличным способом оперативно принимать решения, либо просто наглядным инструментом мотивации. А самый лучший способ сделать это — это собственный дешборд, информационное табло, которое можно повесить на самом видном месте в офисе.


Читать дальше →
Всего голосов 91: ↑81 и ↓10+71
Комментарии12

WWDC 2014. Новости среды

Время на прочтение4 мин
Количество просмотров16K
В третий день WWDC были более технические и менее «интригующие» сессии (Integrating Swift with Objective-C, What's New in LLVM, Cross Platform Nearby Networking, Creating Custom iOS User Interfaces и т.д.), прошли мастер-классы по использованию компонентов и погружению в Swift.

Отчет Артура mc_murphy Сахарова, Redmadrobot


Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии5

Работу над HTTP 2.0 предлагают начать заново

Время на прочтение2 мин
Количество просмотров29K
Open source разработчик Пол-Хеннинг Камп (Poul-Henning Kamp) обратился к членам HTTP Working Group с призывом выбросить текущие наработки по стандарту HTTP 2.0.

Пол-Хеннинг Камп — автор MD5crypt и большого количества системных компонентов FreeBSD, GBDE, UFS2, malloc и проч. Он считает, что рабочей группе HTTP следует признать поражение — и начать всё заново.

В качестве образцового фиаско Пол-Хеннинг Камп приводит пример SPDY. В классических произведениях по управлению проектами сказано, что «прототип системы всегда нужно выбрасывать», здесь Камп ссылается на Фредерика Брукса и книгу «Мифический человеко-месяц или Как создаются программные системы». По его словам, принятый за основу спецификаций HTTP 2.0 протокол SPDY является именно прототипом.
Читать дальше →
Всего голосов 106: ↑75 и ↓31+44
Комментарии19

Кросскомпиляция библиотек под iOS, делаем это правильно

Время на прочтение4 мин
Количество просмотров11K
Во время разработки большого проекта наступает такой момент, когда надо встроить в приложение библиотеку из мира open source с подходящей лицензией. Например, вам захотелось ускорить декодирование картинок, или понадобился sqlite3 с fts4, или нужны какие-то плюшки из libicu, которых нету в системной libicucore.

Для этого библиотеку, которая понадобилась, нужно будет собрать для 5 архитектур: armv7, armv7s, arm64, i386, x86_64. С кросскомпиляцией есть много подводных камней, на которые не хотелось бы наткнуться, когда есть уже проверенные решения. В этом коротком посте я расскажу об автоматизации сборки библиотек на примере protobuf и sqlite3.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии4

Полезные материалы для мобильного разработчика #51 (28 апреля-4 мая)

Время на прочтение2 мин
Количество просмотров11K
В праздничную неделю новостей немного, но «их есть у меня». Главным, наверное, на этой неделе стал Facebook с конференцией F8 — компания объявила о снижении цен на Parse, о глубоких ссылках, мобильной кнопке Like и нескольких других интересных нововведениях.

Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии0

IT-сервис или сервис в IT — как сделать клиента чуть счастливее?

Время на прочтение5 мин
Количество просмотров20K
Все компании, которые так или иначе основывают свой бизнес на предоставлении услуг в секторе ИТ (а я говорю о ИТ-аутсорсерах, интеграторах, хостерах, компаниях-разработчиках и т.д.), стремятся к оказанию качественных услуг.
Однако очень часто, когда от компании уходят клиенты, никто, начиная от простых эникеев, заканчивая топ-менеджерами, до конца не может понять почему это произошло.

В компаниях, где я работал/кому предоставлял свои услуги, часто происходили аналогичные ситуации. И хотя зачастую тяжело точно определить причину, можно следовать основным правилам, соблюдение которых поможет сделать клиента счастливее. Когда я спрашивал у топ-менеджеров, менеджеров проектов, программистов, системных администраторов, что нужно сделать того, чтобы обрадовать клиента, я слышал: «чаще выпускать новые версии», «нанимать квалифицированный персонал», «соблюдать сроки», «грамотнее управлять проектами» и т.д.

При этом выяснялось, что проблемы, из-за которых был потерян очередной клиент, заключаются в другом. В мелочах, которые часто лежат на поверхности. Чаще всего все проблемы кроются не в технической части проекта, а именно в коммуникации, в том, каким правилам сотрудники не следуют, когда общаются с клиентом.
Именно о таких, казалось бы базовых правилах общения, я хочу поговорить под катом.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Комментарии4

Тестировщик — больше, чем профессия

Время на прочтение16 мин
Количество просмотров242K
За время своей работы в сфере тестирования, у меня сложилось своё, особое мнение об этой области, начиная с позиции младшего тестировщика (junior tester) до руководителя отдела тестирования (test manager). И, в целом, это мнение достаточно критичное с долей любви и обожания к этой замечательной профессии.



Читать дальше →
Всего голосов 40: ↑32 и ↓8+24
Комментарии46

Дайджест интересных новостей и материалов из мира PHP № 40 (14 апреля — 27 апреля 2014)

Время на прочтение4 мин
Количество просмотров20K


Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.

Приятного чтения!
Читать дальше →
Всего голосов 52: ↑49 и ↓3+46
Комментарии27

Новый выделенный сервер: приемка и проверка

Время на прочтение10 мин
Количество просмотров41K
Новый сервер: приемка и проверка

Начиная работу с новым сервером, нелишним будет проверить, соответствует ли он заявленной конфигурации. Многие начинающие пользователи испытывают затруднения в случаях, когда требуется просмотреть информацию о сервере с использованием команд, доступных только в консоли.

В этой статье мы расскажем о том, как можно получить спецификацию Linux-сервера в командной строке.
Читать дальше →
Всего голосов 85: ↑73 и ↓12+61
Комментарии36

Интересные приемы программирования на Bash

Время на прочтение6 мин
Количество просмотров130K
Эти приемы были описаны во внутреннем проекте компании Google «Testing on the Toilet» (Тестируем в туалете — распространение листовок в туалетах, что бы напоминать разработчикам о тестах).
В данной статье они были пересмотрены и дополнены.
Читать дальше →
Всего голосов 181: ↑175 и ↓6+169
Комментарии67

Практические рекомендации: устраняйте неполадки, используя команду 'Top' в Linux

Время на прочтение8 мин
Количество просмотров91K
Сейчас мы работаем над новой фичей нашего сервиса мониторинга, для того чтобы можно было мониторить не только внешние параметры сервера, но и внутренние, такие как загрузку системы, состояние жестких дисков, оперативной памяти и других. В процессе разработки мы натолкнулись на полезную статью, которая рассказывает о параметрах системы которые можно получить с помощью системной команды top, перевод этой статьи мы представляем вашему вниманию.

Load average может представлять собой непростой для понимания показатель производительности сервера. В этой статье мы попытаемся дать некоторое представление о том, что означают те величины, которые можно найти в выводе команды «top» и в других linux-командах. В статье, также объясняются параметры специфичные для виртуального хостинга, которые обычно не отображается в стандартном выводе команды top.
Читать дальше →
Всего голосов 59: ↑46 и ↓13+33
Комментарии30

Используем nginx, docker, skydns и skydock для обновления кода на лету (zero-downtime deployment)

Время на прочтение5 мин
Количество просмотров24K

Инструменты, которые мы будем использовать


Docker


Docker — простая и элегантная библиотека для создания легковесных изолированных друг от друга виртуальных контейнеров, в которых можно исполнять любой код. Совершенно не требователен к ресурсам, минимальный overhead.

Собрав контейнер один раз, его можно многократно использовать.

Простой пример — это БД Redis. Если нам необходимо несколько серверов Redis на одном компьютере, при обычном подходе нам придется изменять конфигурационные файлы в /etc/redis и менять файлы в /etc/init.d. Можно написать bash скрипт, но это не делает процесс легче.
Читать дальше →
Всего голосов 39: ↑37 и ↓2+35
Комментарии14

Есть ли жизнь после кода?

Время на прочтение6 мин
Количество просмотров15K
Что происходит с кодом после того, как он написан? Во многих областях разработки ПО его жизнь только начинается. Например, в разработке для веба, приложение исполняется где-то на сервере. Значит, после написания кода встаёт задача интегрировать его в приложение и доставить на конечную машину. Именно этот процесс мы сегодня обсудим.

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

Статья написана на основе материалов внутреннего семинара компании Аори, и рассказывает о принципах деплоймента на примере процесса, построенного у нас.
Читать дальше →
Всего голосов 33: ↑28 и ↓5+23
Комментарии7

Информация

В рейтинге
Не участвует
Откуда
Петродворец, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность