Как стать автором
Обновить
0
0
Александрян Александр @sp1se

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

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

Реализация интерфейса с выдвижной панелью в iOS приложении

Время на прочтение6 мин
Количество просмотров14K
В сегодняшней статье мы расскажем о приемах и инструментах, которыми пользовались разработчики из Everyday Tools при работе над интерфейсом с выдвижной панелью, или, говоря проще, «шторкой». Шторки — оптимальное решение для приложений, в которых пользователь взаимодействует преимущественно с главным экраном, но периодически нуждается в быстром доступе к дополнительной информации.


Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии6

Xcode: наверное, лучший способ работы со сторибордами

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

Этот пост является вольным переводом статьи Xcode: A Better Way to Deal with Storyboards by Stan Ostrovskiy


Некоторые примеры кода в оригинальной статье устарели (ввиду выхода Swift 3) и в переводе были изменены.


Советы и рекомендации по работе с Interface Builder.


Apple серьезно улучшили Interface Builder в новом Xcode 8. Использование size classes стало более интуитивным, возможность масштабирования сториборда — очень удобной, а полное превью прям в Interface Builder — просто великолепным. Для тех у кого были сомнения насчет использования Interface Builder, это может стать хорошими плюсами.


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


В этой статье я поделюсь некоторыми из лучших практик для работы со сторибордами в вашем проекте. Вы уже пользуетесь Interface Builder, или только делаете первые шаги в этом направлении? — в любом случае, эти советы будут полезны для вас.


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

В вашем проекте есть один файл main.storyboard, который выглядит вот так?



С точки зрения дизайнера, все хорошо: полностью видно UI и навигацию. И это именно то, для чего Interface Builder и был создан.

Но для разработчика это несет множество проблем:

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

Что браузеры делают с вашим JavaScript-кодом: об оптимизациях в JS-движках на примере V8

Время на прочтение7 мин
Количество просмотров40K
Оптимизация кода начинается не столько с изучения особенностей языка программирования, сколько с понимания схемы работы всей «технологической цепочки», задействованной при создании приложения — от алгоритма программы до компилятора.

Мы поговорили с Вячеславом Егоровым aka mraleph, инженером из Google, компиляторщиком до мозга костей, который работал над JavaScript движком под названием V8, встроенным в Chromium (и, как следствие в Chrome, Android версию браузера, облачную операционную систему Chrome OS) и в менее известный Maxthone.
JavaScript-программистам Вячеслав, скорее всего, известен как автор постов про внутренности V8 и как докладчик, увлеченно показывающий машинный код на конференциях для Web-разработчиков.

В настоящее время Вячеслав активно работает в Google над Dart VM.
В этом интервью он рассказал о том, что происходит внутри движка, выполняющего динамический JS-код и поделился примерами, как выполняются некоторые оптимизации и почему важно глубоко понимать работу движка, чтобы обеспечить быстрое выполнение кода.

Читать дальше →
Всего голосов 61: ↑58 и ↓3+55
Комментарии34

Канбан в IT (Kanban Development)

Время на прочтение7 мин
Количество просмотров281K
Я собираюсь написать несколько статей про новую методологию гибкой разработки Канбан (Kanban Development) в целях подготовки к Scandinavian Agile Conference 2009, где я буду делать один из докладов (кстати, заодно приглашаю всех на конференцию).
Сегодня публикую первую из статей.
Основная задача первой статьи — это как можно проще описать основы Канбан: что это такое, в чем отличие от других гибких методологий и зачем это нужно.
Также я хотел бы собрать как можно больше вопросов и сомнений в комментариях, чтобы ответить на них в следующих статьях, так что пишите всё, что вам непонятно, или что ещё вы хотели бы узнать про Канбан.
Я не то, чтобы большой специалист по этой новой методологии, но мы внутри команды пришли к Канбану самостоятельно и последовательно прошли все этапы мутации от SCRUM до Канбан, так что практический опыт есть.

Читать дальше →
Всего голосов 61: ↑58 и ↓3+55
Комментарии91

Wi-Fi сети: проникновение и защита. 2) Kali. Скрытие SSID. MAC-фильтрация. WPS

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


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

В этой статье мы поговорим о том, как можно обнаружить «скрытые» сети, обойти MAC-фильтрацию на точке доступа и почему же WPS (QSS в терминологии TP-LINK) — это «бэкдор в каждом доме». А перед этим разберёмся, как работает беспроводной адаптер и антенна и как Kali Linux (ex. Backtrack) поможет нам в тестах на проникновение в беспроводные сети.

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

Перед прочтением настоятельно советую ознакомиться с матчастью — она короткая, но на её основе базируются все наши дальнейшие действия и выводы.

Оглавление:
1) Матчасть
2) Kali. Скрытие SSID. MAC-фильтрация. WPS
3) WPA. OpenCL/CUDA. Статистика подбора
Много текста. Очень.
Всего голосов 171: ↑168 и ↓3+165
Комментарии39

Как команда технарей свою студию создавала. Опыт первых месяцев. Достижения, фейлы, умозаключения…

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

Уверен, многих технарей посещала идея создания своего бизнеса. Вот и у нас в определенный момент все звёзды сложились так, что казалось — это беспроигрышный вариант: сильная техническая команда, откуда ни возьмись появились менеджеры, готовые продавать наши услуги, есть даже пара проектов на старт. Грех не попробовать. И мы рискнули. Фактически всё надо ставить с нуля.
Читать дальше →
Всего голосов 126: ↑110 и ↓16+94
Комментарии118

Страсть к программированию. Глава 22. Помни, на кого работаешь

Время на прочтение4 мин
Количество просмотров18K
image
О переводе


Это перевод 22-ой главы книги «The Passionate Programmer: Creating a Remarkable Career in Software Development». Её автор — Chad Fowler — талантливый Ruby-разработчик, известный докладчик на конференциях, посвящённых Ruby и IT в целом. Бывший саксофонист, а сейчас — CTO 6Wunderkinder.

Над главой работали…
shchemelevev перевод
@SavinaMarina проверка перевода
asheee редактирование перевода
shchemelevev вычитка
rb2 вычитка
asheee вычитка


Содержание



22. Помни, на кого работаешь



Легко сказать: «Проверь, совпадают ли цели, над достижением которых ты трудишься, и цели, стоящие перед бизнесом твоей компании». Но сделать это на порядок сложнее. Особенно если ты — глубоко зарытый в недрах организации программист, с трудом понимающий, чем занимается твоя компания.

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

К счастью, в те времена меня больше интересовало создание первоклассных систем, а кроме того, я много времени проводил за изучением исходного кода различных open-source продуктов (признаюсь, я всё ещё трачу много времени на эти вещи). Вряд ли я хоть немного задумывался об устройстве бизнеса грузоперевозок. Но если бы я и вправду захотел согласовать свою работу с потребностями организации, едва ли я знал бы, с чего стоит начинать.
Читать дальше →
Всего голосов 44: ↑38 и ↓6+32
Комментарии2

Делаем вебсокеты на PHP с нуля. Часть 2. IPC

Время на прочтение5 мин
Количество просмотров39K
После написания моей предыдущей статьи Делаем вебсокеты на PHP с нуля я понял, что у сообщества есть некоторый интерес к поднятой мною теме.

В прошлой статье я обещал, что опишу:
  • запуск нескольких процессов для обработки соединений
  • межпроцессное взаимодействие
  • разделение процессов мастер-воркер
  • проксирование вебсокетов с помощью nginx
  • запуск из консоли
  • интеграция с вашим фреймворком на примере yii
  • демонстрация


И, как обычно, — получившийся код и ссылка на демонстрационный чат в конце статьи.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии15

Серия 50+ советов по оптимизации PHP кода. «За» и «против» такой оптимизации. Первые 10 советов.

Время на прочтение6 мин
Количество просмотров21K
Это перевод первых 10-ти советов статьи по оптимизации PHP кода. На хабре есть перевод более старой версии статьи — 40 советов по оптимизации вашего PHP-кода

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

Пишу по частям, иначе получится очень много материала сразу.

Это моя первая статья на хабре, надеюсь она получилась интересной.

Читать дальше →
Всего голосов 98: ↑71 и ↓27+44
Комментарии142

Прошу помощи ссылками по ООП в PHP

Время на прочтение1 мин
Количество просмотров7.2K
Господа PHP-разработчики и «претендующие», прошу — поделитесь ссылками на ресурсы, где можно подчерпнуть знания, помогающие добиться хорошего понимания ООП в PHP. А именно, на те сайты где много рассказывается о паттернах (маперы, фасады, фабрики и т.д.) и уровнях абстракции (не скажу точнее, т.к. сам сомневаюсь в собственной интерпретации термина).
Так же, возможно, на скрипты (движки) чего-либо, разработанные с применением описанных подходов.
Всего голосов 41: ↑23 и ↓18+5
Комментарии98

Стоит ли смотреть в сторону PHP тому, кто решился только со второй попытки научиться прилично программировать?

Время на прочтение5 мин
Количество просмотров32K
Здравствуйте, друзья. С большой осторожностью касаюсь столь холиварной темы, но хочу рассказать свою небольшую историю о том, почему я, будучи уже далеко не в студенческом возрасте, решил всё-таки изучать программирование, и от чего же я собираюсь (о, боже) использовать для реализации своих намерений PHP. Буду рад получить от вас, коллеги по IT-индустрии, ценные советы и наставления.

Забегая вперёд скажу, что в комментариях к топику (кроме холиваров о языках) сказано много полезного. За что огромное спасибо хабровчанам.
Читать дальше →
Всего голосов 66: ↑39 и ↓27+12
Комментарии138

Как и зачем я решил начать собственное дело

Время на прочтение8 мин
Количество просмотров190K
Салют, Хабр!
Недавно я уволился с довольно завидной должности (главного архитектора) в довольно неплохой компании (Acronis) и с непоколебимым решением в мозгу больше не работать по найму переехал из Москвы обратно в Ереван, откуда семь лет назад понаехал в Златоглаво-Нерезиновую. Учитывая необычность произошедшего и часто задаваемый вопрос «но почему?!», я решил разобраться в собственных мыслях и озвучить их вслух для себя самого и тех, кто может почерпнуть в моих размышлениях что-то для себя полезное. Короче говоря, это рассказ о том, почему я оставил высокооплачиваемую перспективную работу в международной компании ради сомнительной перспективы начать собственное дело, и как я собираюсь дальше жить.
Читать дальше →
Всего голосов 321: ↑291 и ↓30+261
Комментарии418

Хороший пользовательский интерфейс

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

Вольный перевод статьи Якуба Линовски — «A Good User Interface».

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

16 практических идей
Всего голосов 165: ↑150 и ↓15+135
Комментарии63

Знакомимся с аспектно-ориентированным программированием в PHP

Время на прочтение10 мин
Количество просмотров31K
При разработке программного обеспечения программисты и архитекторы пользуются декомпозицией — представлением объектов и взаимосвязей между ними в виде классов, объектов, их свойств и методов.


Проводя декомпозицию, удается получить более точное представление объектов из реальной жизни в виде программного кода. Именно благодаря этому принципу, объектно-ориентированное программирование получило столь широкую популярность во всех языках программирования. Модель представления объектов реальной жизни в виде инстансов классов очень удобна: мы можем наделять класс набором методов и свойств, позволяя взаимодействовать с окружающей средой.
Но все ли так удобно?
Всего голосов 59: ↑49 и ↓10+39
Комментарии55

Сервис для создания планировок помещений и интерьеров

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


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

Итак, пару лет назад, оба фаундера практически одновременно попали в жизненную ситуацию, которая бывает у всех — настало время ремонта.

Что из этого вышло
Всего голосов 165: ↑159 и ↓6+153
Комментарии176

10 критически важных event ID для мониторинга

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

Рэнди Франклин Смит (CISA, SSCP, Security MVP) имеет в своем арсенале очень полезный документ, рассказывающий о том, какие события (event IDs) обязательно должны отслеживаться в рамках обеспечения информационной безопасности Windows. В этом документе изложена крайне полезная информация, которая позволит Вам “выжать” максимум из штатной системы аудита. Мы подготовили перевод этого материала. Заинтересованных приглашаем под кат.
Читать дальше →
Всего голосов 38: ↑29 и ↓9+20
Комментарии11

Трёхуровневая модель сети и технологии VLAN, DHCP, OSPF, STP, SNMP, ACL, NTP на Cisco и D-link

Время на прочтение10 мин
Количество просмотров94K
Статья поможет новичкам понять как настраивать оборудование Cisco и D-Link в трёхуровневой модели сети. Конфигурация, представленная тут, не является эталонной или базовой — она для примера и понимания сути вещей, т.к. для каждого сетевого решения применяются свои параметры и технологии.
Читать дальше →
Всего голосов 62: ↑60 и ↓2+58
Комментарии24

Как делать нужные людям проекты, или почему не взлетают стартапы

Время на прочтение9 мин
Количество просмотров8.6K
Сегодня на практических примерах мы разберем два мифа в управлении проектами, в том числе в разработке стартапов:
1. То, что лучший и единственный способ сделать успешный стартап — сделать такой, который решает задачи, хорошо знакомые создателю в повседневной жизни.
2. То, что существует автономизация бизнеса, когда проект можно довести до некоторой точки и больше ничего не делать, а потом он просто будет на автомате приносить деньги.



Также мы коснемся мифа «плохих программистов», которые делают задачи не в срок, делают неработающие проекты, или там тратят время на Хабр, и узнаем, что в большей части проблем виноват тот, кто руководит разработкой.

Читать дальше →
Всего голосов 106: ↑76 и ↓30+46
Комментарии48

19 историй о SaaS-бизнесе

Время на прочтение5 мин
Количество просмотров19K
28 мая мы провели Неконференцию *aaS предпринимателей, на которую пришло более 150 человек, чтобы послушать 19 рассказов о ведении облачного бизнеса в России и СНГ.

Наконец-то, спустя 2 месяца, мы получили видеозаписи всех рассказов, а так же стенограмму к каждому из них. И сегодня предлагаем вам список ссылок с аннотациями к каждому рассказу.

Приятного просмотра!
Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Комментарии2

JavaScript для начинающих — как учить?

Время на прочтение1 мин
Количество просмотров244K
Наша маленькая но очень гордая компания взяла на обучение нового человека. Мы хотим сделать его матерым жаваскриптером. Воспитание и обучение легло целиком на мои плечи поскольку опыта по JS у меня больше прочих.

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

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

А посему вопрос — что можно посоветовать почитать дабы человек мог быстро въехать в продвинутый жаваскрипт? По большому счету требуется передать именно саму идею реализации богатых клиентов на нем. Про подводные камни и всякие несуразности я думаю смогу что-то рассказать исходя из своего опыта.
Всего голосов 19: ↑16 и ↓3+13
Комментарии72
1

Информация

В рейтинге
Не участвует
Откуда
Yerevan, Армения
Дата рождения
Зарегистрирован
Активность