Pull to refresh
32
0

DevOps

Send message

«Программирование мышкой» в Swift ч.2 — навигация

Reading time8 min
Views22K
И снова привет, хабаровчане!

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

Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments3

«Программирование мышкой» в XCode 6 для Swift

Reading time5 min
Views53K
Привет, Хабрахабр!

По причине недавно возникшей необходимости, пришлось писать под iOS, и я заметил сильную нехватку гайдов на русском языке даже для элементарных действий вроде «прицепить к нажатию кнопки какое-то действие», «считать данные из текстового окошка». Статья для начинающих разработчиков под iOS, прошу таких под кат.
Читать дальше →
Total votes 32: ↑26 and ↓6+20
Comments27

SSD и HDD в теле одного MacBook Pro

Reading time4 min
Views162K
Приветствую, уважаемые хабражители.

Мой опыт, которым я хочу с вами поделиться, должен оказаться полезным для всех пользователей ноутбуков, хотя мой частный пример — MacBook Pro.

После покупки сего агрегата, с порядковым номером в линейке: 6.1, я ожидал невиданных ранее скоростей, но, увы, предательская каруселька перегрузки, на месте курсора > image появлялась достаточно часто, заставляла себя ждать, мучила вопросом «как так?!» при этом скорость загрузки тотально укомплектованной операционной системы составляла примерно 2+ минуты, с загрузкой 5-и приложений (различной тяжести) на автозапуске.

Такие показатели + периодические подвисания оказались досадным и обидным заключением, ведь под капотом процессор i7 / 4Gb DDR3 / 5 Series Chipset с возможной скоростью обмена данными в 3 гигабита.

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

Добро пожаловать под хабракат, там сказ о эффективном разгоне моего инструмента.
Total votes 113: ↑94 and ↓19+75
Comments185

Юго-Восточная Азия, практическая информация

Reading time5 min
Views3.5K
Многие люди мечтают заработать «много денег», чтобы потом начать путешествовать, жить в свое удовольствие и так далее. Практика показывает, что денег постоянно кажется мало, а начало «жизни в свое удовольствие» постоянно откладывается. Скучная унылая работа так и остается основным занятием до конца жизни.

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

Второй год мы с друзьями путешествуем по Юго-Восточной Азии (ЮВА). В отличие от большинства туристов, мы не только валяемся на пляже и смотрим местные достопримечательности, но и каждый день продуктивно работаем. Таким образом наш «отпуск» превращается в постоянное путешествие по тем местам, где нам хочется жить и работать.
Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments32

Обзор CyanogenMod

Reading time7 min
Views169K
Сегодня я расскажу вам немного о CyanogenMod. Это такая замечательная прошивка, основанная на исходном коде android. Официально разработка идет под вот этот вот список аппаратов, но на деле поддерживаемых девайсов намного больше. А все благодаря ребятам с xda-dev, которые портируют прошивку на свои телефоны.

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

Читать дальше →
Total votes 116: ↑109 and ↓7+102
Comments156

Разработка ПО: факты против мифов

Reading time3 min
Views69K
Мифы – это попытки осмысления картины окружающего мира, присущие первобытной культуре.

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

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

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

Вот наиболее распространенные мифы и факты, которые их опровергают.
Читать дальше →
Total votes 150: ↑135 and ↓15+120
Comments124

Введение в Spring Frameworks: Spring MVC

Reading time8 min
Views20K
Привет, Хабр.

Это моя первая статья.Прошу сильно молотком не бить.

Сегодня, этим сообщением начнется мой цикл статей о фреймворках Spring.

Я не буду вдаваться в тонкости теории, здесь на хабре достаточно статей об этом. Предпочитаю практику.
Тем не менее, стоит напомнить, что работать со Spring Framework можно как с помощью xml-конфигурации, так и с помощью аннотаций. Также, ничего не мешает комбинировать оба подхода.
Лично я предпочитаю работать с аннотациями, чего и вам советую. Поэтому все примеры, которые я буду приводить, будут использовать аннотации.
Читать дальше →
Total votes 20: ↑17 and ↓3+14
Comments38

Понимание ООП в JavaScript [Часть 1]

Reading time16 min
Views337K
— Прототипное наследование — это прекрасно
JavaScript — это объектно-ориентированный (ОО) язык, уходящий корнями в язык Self, несмотря на то, что внешне он выглядит как Java. Это обстоятельство делает язык действительно мощным благодаря некоторым приятным особенностям.

Одна из таких особенностей — это реализация прототипного наследования. Этот простой концепт является гибким и мощным. Он позволяет сделать наследование и поведение сущностями первого класса, также как и функции являются объектами первого класса в функциональных языках (включая JavaScript).

К счастью, в ECMAScript 5 появилось множество вещей, которые позволили поставить язык на правильный путь (некоторые из них раскрыты в этой статье). Также будет рассказано о недостатках дизайна JavaScript и будет произведено небольшое сравнение с классической моделью прототипного ОО (включая его достоинства и недостатки).
Читать дальше →
Total votes 129: ↑119 and ↓10+109
Comments71

Единый API для сокращателей/разворачивателей ссылок

Reading time1 min
Views5.5K

Преамбула


Есть такой сокращатель ссылок http://g.ua, но у него, к сожалению, нет публичного API, чего весьма хотелось для использования в своих проектах.

— Обидно. — подумалось мне и я решил писать свой сокращатель. Потом, хорошо подумав, понял, что их и так много. Зачем еще один нужен? Он просто затеряется в этом изобилии.

В общем сделал я API к нему и выложил на https://shrt.org.ua для всеобщего обозрения.

Фабула


Прикрутив g.ua к своему скрипту-скриншотилке для picpost.pp.ua я успокоился на несколько часов. Вечером, в разговоре с другом мне пришла в голову абсолютно идиотская мысль: «А не прикрутить ли туда мне еще несколько сокращалок. Было бы удобно использовать один API для получения коротких URL не переписывая кода.»

Засев за Sublime Text 2 я довольно быстро накидал получение ссылок с 5-7 сокращалок и вывод этих URL через 1 API.

В итоге я получил то, что хотел. Но смесь bash и PHP не давала покоя и весь код был переписан и готов представить проектик на суд общественности. Глядишь, кому-то и пригодится.
Читать дальше →
Total votes 41: ↑31 and ↓10+21
Comments30

Автоматический бекап при подключении внешнего HDD в Ubuntu

Reading time3 min
Views17K
Последнее время стали популярны посты на тему бекапа. Продолжу и я эстафету под девизом «Много бекапов хороших и разных».

Статья 1 и статья 2, натолкнувшие меня на эту идею.

Сам я давно пользуюсь rsnapshot для бекапа серверов, да и не только. Для тех, кто не в курсе, что оно такое — это базирующаяся на rsync утилита на Perl для создания резервных копий. Особенностью является ориентация на создание полных снапшотов файловой системы через заданный интервал времени, для экономии места на диске, не изменившиеся с момента первого бэкапа файлы линкуются как hard link.

Я работаю на Ubuntu 11.10 на ноутбуке и потому статья будет описывать метод бекапа этого самого ноутбука на внешний USB HDD, который не постоянно подключен, а подключается лишь периодически. В момент подключения и будет запускаться скрипт для бекапирования системы.

Итак, начнем.
Читать дальше →
Total votes 29: ↑25 and ↓4+21
Comments12

Конфигурирование iptables при помощи ferm

Reading time4 min
Views18K
Ferm — это низкоуровневая надстройка над iptables, позволяющая организовывать своего рода циклы по спискам параметров iptables. Это оказывается особенно полезно при настройке сложных правил файрвола, для написания которых с использованием одного только iptables приходится повторять до умопомрачения -t filter -A INPUT -p tcp --state NEW ..., потом делать аналогичное для -p udp, в общем кто плавал — знает.

Ferm прекрасен тем, что, сохраняя всю гибкость iptables, позволяет добиваться тех же эффектов меньшими усилиями. Так, например, разрешить новые соединения на порты ftp, ssh и http и запретить все остальное (кроме связанных), можно написать вот такой конфиг:
chain INPUT {
policy DROP;
mod state state (RELATED ESTABLISHED) ACCEPT;
proto tcp dport (http ftp ssh) ACCEPT;
}


Удивительно дело, поиск дает по запросу ferm только одну статью, которая к собственно ferm никакого отношения не имеет. То ли все уже все знают и всем очевидно, то ли наоборот. Исходя из последнего, я решил написать этот топик.

Читать дальше →
Total votes 51: ↑48 and ↓3+45
Comments18

Плавный переход сети компании на IPv6

Reading time4 min
Views43K
Здравствуйте, хабрасообщество.

Хотелось бы осветить переход сети на IPv6, так как эта теме слабо освещена, тем более на русском языке. Сначала посмотрим на то, как выглядит наша сеть до перехода:

image
Читать дальше →
Total votes 86: ↑83 and ↓3+80
Comments42

Pretty Painter – мое первое приложение под Android

Reading time5 min
Views17K
Pretty Painter


Всем привет! Хотелось бы поделиться с вами своим опытом создания первого приложения под Android. И если вы уже давно присматриваетесь к этой платформе, но все еще почему-то не решаетесь начать разрабатывать свои приложения, то, я надеюсь, мой топик подтолкнет вас к этому. Под катом пять причин почему не нужно сомневаться и пора действовать и еще несколько интересных моментов.
Читать дальше →
Total votes 104: ↑88 and ↓16+72
Comments42

Создание портала проекта с использованием технологий Google

Reading time2 min
Views4K
Project Management Collaboration

Всем доброго времени суток!

По роду своей деятельности приходится решать задачу по обеспечению взаимодействия проектной команды, распределенной территориально. Одним из решений подобной задачи является создание портала проекта, который будет доступен в режиме 24x7x365, давать информацию по текущему состоянию проекта, сигнализировать о deadline'ах, давать возможность получить доступ к проектной документации.

На GoogleSites есть соответствующий шаблон для портала проекта. Приведу его краткий обзор.
Читать дальше →
Total votes 102: ↑95 and ↓7+88
Comments15

Hello World widget для Android

Reading time9 min
Views70K
Как ни странно, но на русском почти нет нормальных статей по виджетам для Android. Да и на англо язычных ресурсах почти нет простых примеров для старта, все примеры почему-то сложные и тяжелые для понимания. Спешу это исправить.
Читать дальше →
Total votes 72: ↑56 and ↓16+40
Comments29

Китай: как заказывать производство или поставку

Reading time7 min
Views185K
Его зовут Плюштой У китайцев можно заказать всё, что угодно: от электронных компонентов до корпуса к устройству или хендмейд-штук. При правильном подходе это дешево, качественно и позволяет реализовывать любые заказы, которые часто сложно разместить на территории СНГ.

В топике — основы аутсорсинга производства в Китай:
  • Как выбрать производителя и сделать заказ
  • Как убедиться, что сделают именно то, что вам нужно
  • Про предоплату, документы, гарантии
  • Как наиболее выгодно доставить
  • Что делать с потерянными поставками
  • Грабли в ассортименте

Да, если же вы уже заказывали в Китае, то ничего шокирующе-нового в топике вы не найдёте (и, может быть, порадуетесь за то, как нас красиво однажды развели).

Читать дальше →
Total votes 208: ↑205 and ↓3+202
Comments183

Кэширование в Google App Engine

Reading time4 min
Views1.5K
Google App EngineКак вы уже знаете из предыдущей статьи, в App Engine есть множество способов хранения информации. Но многие из них весьма специфичны, и для повсеместного пользования подходят всего три: память инстанса, memcache и datastore.

Под катом вас ждёт изложение в цифрах и картинках, краткие рекомендации по кэшированию и исходные коды простого cacher'a и приложения для тестов.
Читать дальше →
Total votes 42: ↑37 and ↓5+32
Comments21

Вышли Java/Python SDKs 1.4.2, а также обновился Roadmap

Reading time2 min
Views905


Сначала расскажу об изменениях в SDKs, а потом о том, что разработчики нам обещают в ближайшие 6 месяцев.

Итак,
— Capabilities API более не экспериментальная фича. Доступна как в Java, так и в Python SDK.
— XMPP v2. Теперь с поддержкой presence и subscriptions.
— Добавлена возможность программного удаления заданий из TaskQueue.
— Увеличена максимальная скорость пополнения очереди до 100/сек.
— В URL Fetch добавлен метод позволяющий проверить сертификат, при обращении к хосту по https.
— Улучшен Memcache API.

Далее, что нам пообещали в roadmap
Total votes 19: ↑16 and ↓3+13
Comments5

Частный опыт установки и настройки Asterisk с нуля

Reading time17 min
Views342K
Во-первых, дисклаймер

Настройке Asterisk посвящены сайты, форумы и целые порталы типа voip-info.org. Но всегда есть люди, для которых эта тема – дремучий лес, а запустить продукт надо «вчера». Ещё полтора месяца назад я про Asterisk знал только то что он есть. Данный труд призван лишь несколько облегчить жизнь тем, кто окажется в такой же ситуации после меня. В нём могут быть ошибки любой степени «чайниковости». Если вы гуру настройки Asterisk – укажите на ошибку, я поправлю, потомки будут вам благодарны.
Читать дальше →
Total votes 79: ↑75 and ↓4+71
Comments56

В ожидании ExtJS 4: Динамическая загрузка и новая система классов

Reading time11 min
Views6.1K
От переводчика: Sencha Inc, производитель известного RIA-фреймворка Ext JS, заговорила о грядущей четвертой версии 22 ноября прошлого года. Релиз обещанного планировался на 28 февраля.

Что бы подогреть интерес комьюнити (ведь API, по словам разработчиков, изменилось значительно), была обещана публичная альфа- или бета-версия «в течении пары недель». Прошло два месяца, но обещанного пока нет.

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

Вашему вниманию предлагается перевод первой статьи из официального блога фреймворка, посвященной попытке эмуляции «взрослого» ООП средствами JavaScript в реализации Ext JS 4.

Статья, в первую очередь, будет интересна тем, кто уже пользовался предыдущими версиями фреймворка – автор рассчитывает на то, что читатель уже знаком с архитектурой Ext JS.
Читать дальше →
Total votes 35: ↑28 and ↓7+21
Comments20
1

Information

Rating
Does not participate
Location
Wheeling, Illinois, США
Date of birth
Registered
Activity