Дальше много текста, фотографий, разборок. Ну все как обычно
AHTOH @AHTOH
User
Удобный отладчик для Python/Django проектов
2 min
20K
Pudb — полноэкранный консольный дебагер с графическим интерфейсом. Большим плюсом является то, что в нем есть подсветка синтаксиса, дополнительные панели вывода информации, горячии клавиши и интерграция с IPython.
pdb, в сравнении с Pubd, показался жутно не удобным и ограниченым. Поиск ошибок стал занимать на много меньше времени и приносить больше удовольствия. При первом взгляде на него вспоминался Assembler и Turbo Pascal в студенческие годы в техникуме.
Если кто заинтересовался примеры установки и использования под катом.
+34
Мы сделаем этот велосипед за месяц
5 min
164KПравильное управление процессом разработки это не меньшая проблема, чем собственно правильный код. Начинающие руководители часто даже не задумываются об этом, наступая на одни и те же грабли. На примере одной вымышленной истории попробуем разобраться какие проблемы нас ожидают и что можно сделать.
В статье я не открою никакой тайны, и серебряной пули у меня нет. Также я не претендую на глубокое и качественное знание процесса разработки, но опишу один из простейших подходов, который применяю сам. Здесь будут описаны простые и элементарные вещи, известные всякому опытному руководителю проектов. Статья предназначена прежде всего для начинающих РП, тимлидов, и тех, кто совмещает эти должности. Впрочем, она полезна в любой сложной деятельности.

Итак, Вася долго трудился рядовым программистом, ведущим программистом и наконец стал Руководителем. У него есть командаотчаянных головорезов разработчиков в количестве двух единиц. Безусловно талантливых и знающих свое дело специалистов.
Вася получает первый заказ — надо сделать … велосипед.
В статье я не открою никакой тайны, и серебряной пули у меня нет. Также я не претендую на глубокое и качественное знание процесса разработки, но опишу один из простейших подходов, который применяю сам. Здесь будут описаны простые и элементарные вещи, известные всякому опытному руководителю проектов. Статья предназначена прежде всего для начинающих РП, тимлидов, и тех, кто совмещает эти должности. Впрочем, она полезна в любой сложной деятельности.
Велосипед

Итак, Вася долго трудился рядовым программистом, ведущим программистом и наконец стал Руководителем. У него есть команда
Вася получает первый заказ — надо сделать … велосипед.
+123
Как не нужно писать большие сервера
8 min
105KТе, кто мог видеть мою прошлую статью (а она довольно related к данной теме), знают, что вот уже больше полутора лет я разрабатываю собственную реализацию сервера Minecraft, рассчитанную, в первую очередь, на высокие нагрузки. Тем не менее, в своей работе мы используем так же и стандартный сервер (Bukkit) для нескольких мини-серверов, просто чтобы было разнообразие. И вот, столкнувшись с очередной версией сервера, которая стала раз в 5 хуже предыдущих, я уже не выдержала, и решила написать эту статью.
Статья больше похожа на рассказ, чем на обучающий материал, так что вряд ли вы почерпнете из неё полезных навыков кодинга, но, надеюсь, кому-то она покажется интересной или даже полезной. Но если вы ходите увидеть кучу кода и примеров, то не открывайте статью, она не об этом. Об этом, надеюсь, будет следующая статья.
Вам не нужно знать ничего о майнкрафте и особенно о его сервере, в данной статье я хочу просто рассказать, как работает оригинальный сервер Minecraft, а так же его «обвязка» — Bukkit, рассказать, почему такая система не работает и не должна. Я не претендую на идеальные знания о разработке серверов и не утверждаю, что мой сервер написан правильно и лучше всех. Я просто делюсь своим опытом, основанным на двух годах работы с сервером от всем известной Mojang и на полутора годах разработки своего сервера. Вся представленная здесь информация является моим личным мнением, а статья предназначена для расширения кругозора или даже обучения и может быть интересна как новичкам, так и продвинутым профессионалам.
Статья больше похожа на рассказ, чем на обучающий материал, так что вряд ли вы почерпнете из неё полезных навыков кодинга, но, надеюсь, кому-то она покажется интересной или даже полезной. Но если вы ходите увидеть кучу кода и примеров, то не открывайте статью, она не об этом. Об этом, надеюсь, будет следующая статья.
Вам не нужно знать ничего о майнкрафте и особенно о его сервере, в данной статье я хочу просто рассказать, как работает оригинальный сервер Minecraft, а так же его «обвязка» — Bukkit, рассказать, почему такая система не работает и не должна. Я не претендую на идеальные знания о разработке серверов и не утверждаю, что мой сервер написан правильно и лучше всех. Я просто делюсь своим опытом, основанным на двух годах работы с сервером от всем известной Mojang и на полутора годах разработки своего сервера. Вся представленная здесь информация является моим личным мнением, а статья предназначена для расширения кругозора или даже обучения и может быть интересна как новичкам, так и продвинутым профессионалам.
+95
Как преуспеть со своим мобильным приложением
16 min
36KRecovery Mode
Translation
Большинство приложений провальны. Эта жестокая реальность приводит многих разочарованных разработчиков к заключению, часто подсознательному, что преуспевание в App Store — всё равно, что разбогатеть на «золотой лихорадке»: нужно быть чертовски удачливым.

Идея «удачи» — опасное успокоительное средство, облегчающее боль неудачи. А боль — это хорошая вещь. Она показывает, что что-то идёт не так. Если моё приложение потерпело крах, я хочу знать почему. Вместо того, чтобы обвинять мироздание, почему бы не посмотреть, что ребята из tap tap tap и Tapbots делают для того, чтобы снова и снова достигать успеха.
Несмотря на то, что безупречное следование этой формуле невозможно, работа в этом направлении резко увеличит ваши шансы на успех. Эти принципы выработаны для iOS, но многие из них могут быть применены и для других платформ.

Идея «удачи» — опасное успокоительное средство, облегчающее боль неудачи. А боль — это хорошая вещь. Она показывает, что что-то идёт не так. Если моё приложение потерпело крах, я хочу знать почему. Вместо того, чтобы обвинять мироздание, почему бы не посмотреть, что ребята из tap tap tap и Tapbots делают для того, чтобы снова и снова достигать успеха.
Несмотря на то, что безупречное следование этой формуле невозможно, работа в этом направлении резко увеличит ваши шансы на успех. Эти принципы выработаны для iOS, но многие из них могут быть применены и для других платформ.
+43
Как стать миллионером в AppStore или немного формул про продвижение и продажи. Часть 1
5 min
106KСхема успеха
Джон, мы потеряли два листа математических выкладок! Что делать?
Как обычно, Билл… напиши: «отсюда с очевидностью следует…»

Чтобы прочитать некраткую сопроводительную записку к схеме – добро пожаловать под кат.
+108
Обзор свежих материалов, июль-сентябрь 2012
19 min
20KЭтот материал продолжает серию ежемесячных обзоров свежих статей по теме интерфейсов, новых инструментов и коллекций паттернов, интересных кейсов и исторических рассказов. Из лент нескольких сотен тематических подписок отбирается примерно 5% стоящих публикаций, которыми интересно поделиться. Предыдущие материалы: апрель 2010-июнь 2012.


+36
Комбинированная балансировка нагрузки интернет-каналов
3 min
42KПредистория
Рано или поздно системный администратор сталкивается с необходимостью распределить трафик по нескольким каналам, при этом естественно желание чтобы каждый канал использовался по максимуму. Столкнувшись с подобной необходимостью, и решив не изобретать велосипед, обратился к помощи поисковиков. Так как сервер у меня на Ubuntu, то обратил свое внимание на статью http://help.ubuntu.ru/wiki/ip_balancing. Реализовал «Способ 1», но при тесте были замечены следующие критичные проблемы: при использовании ссылок на некоторых сайтах они не открывались (например при попытке включить музыку на ресурсе «ВКонтакте»). Причина очевидна — запрос шел через другой канал. Обдумав ситуацию, решил скомбинировать подход к балансировке. Логика проста — больше всего съедает трафика торренты и им подобные программы, поэтому разделяем трафик. В итоге трафик с портами до 11000 распределяем приблизительно равномерно по количеству абонентов — подсетями, трафиком с портами 11000-60000 выравниваем загрузку каналов.
+50
Продуктивное использование PHPStorm
7 min
328KВ процессе использования IDE иногда случайно, иногда специально находятся полезные фишки, сочетания клавиш и прочие заложенные разработчиками приятные штуки, которые никогда не оседают в памяти без регулярного их использования и всячески ускользают при чтении мануалов.
Не претендуя на библию или «настольную статью программиста» я хочу поделиться полезными находками в моей любимой IDE, не скатываясь в тупую копипасту мануалов и скучных списков хоткеев, только то, что я сам использую постоянно и над чем удивляются коллеги: «о! а так можно?»
Не претендуя на библию или «настольную статью программиста» я хочу поделиться полезными находками в моей любимой IDE, не скатываясь в тупую копипасту мануалов и скучных списков хоткеев, только то, что я сам использую постоянно и над чем удивляются коллеги: «о! а так можно?»
+114
Привлекательные экспериментальные плагины на JavaScript
2 min
49KTranslation
Вступление
Я безумно люблю различные эксперименты на JS. Они словно позволяют заглянуть нам в будущее, и посмотреть, каким захватывающим и футуристичным оно будет. Когда вы будете просматривать приведенную подборку, вы наверняка вспомните про еще недавнего короля — Adobe Flash, а затем осознаете, насколько быстро CSS и JavaScript лишили его трона. Современные браузеры позволяют нам использовать множество различных эффектов и анимаций без сильных тормозов. Однако слово «экспериментальный» подразумевает ряд ограничений, как например некорректное отображение в некоторых браузерах (IE), кроме того, подобные плагины будут, скорее, отличным концептуальным дополнением для персональных страниц, а не для использования в больших проектах.
Meny

Meny — трехмерное меню, которое помимо своей визуальной притягательности еще и экономит место на экране. При наведении (или свайпе на тачскрине, что важно), меню «выезжает» с отличным эффектом.
+116
Новое для веб-дизайнера за октябрь 2012
2 min
71KПродолжаю сентябрьскую подборку новых полезных штук для веб-дизайнеров.
Cut&Slice me — бесплатный плагин для фотошопа, который помогает быстро готовить элементы дизайна для различных типов устройств.

Сервисы и инструменты
Cut&Slice me — бесплатный плагин для фотошопа, который помогает быстро готовить элементы дизайна для различных типов устройств.

+106
Как найти девушку через общий топор — Майн объединяет владельцев вещей
5 min
16K
Нет, мы не сайт знакомств ни разу.
Mine — это всемирный граф частной собственности
Mine — это вконтактик для ваших мимимишечек
Если серьёзно, то Майн — это сайт, на котором люди связываются через свои вещи. Наконец-то вы сможете:
- Вступить в клуб владельцев перочинного ножа
- Пощекотать ваше толстое материалистическое эго
- Публично признаться в трогательной нежности к своему ноутбуку
- Показать всем чего вы стоите (буквально)
- Найти женщину-гика на белом Харлее и с приставкой денди
- Подкараулить владельца нового Vertu ночью у подъезда! (чтобы поболтать)
- Открыто ненавидеть обладателя 7-и айфонов! (и т.д.)
Почему мы считаем, что такая на первый взгляд лекгомысленная затея может стать крепким звеном мирового e-commerce рынка, зачем магазины должны вставать к нам в очередь и пара стратегических секретов — под катом.
+55
Блог на node.js
1 min
13KВышла ноль пятая версия mvc фреймворка Autodafe для node.js. Код стало писать удобнее, кода теперь писать нужно меньше, ещё меньше. Скоро код писать не надо будет совсем, достаточно будет лишь подумать о нём.
Пример действия контроллера, которое совершает два асинхронных запроса к базе данных, компанует вьюшку index.html и отправляет ее клиенту (при этом отлавливая и обрабатывая все ошибки):
Написаны подробные статьи про тонкости работы с контроллерами, авторизацию пользователей и работу с URL адресами.
И самое главное: переработано и подробно задокументировано демо с блогом. Блог не обладает богатым функционалом, но может служить хорошей отправной точкой для разработки своего приложения.
Пример действия контроллера, которое совершает два асинхронных запроса к базе данных, компанует вьюшку index.html и отправляет ее клиенту (при этом отлавливая и обрабатывая все ошибки):
Site.prototype.index = function( response, request ){
response.send({
topic : this.models.topic.With( 'author', 'comments.author' ).find_by_pk( request.params.topic_id ),
news : this.models.news.find_all()
});
}
Написаны подробные статьи про тонкости работы с контроллерами, авторизацию пользователей и работу с URL адресами.
И самое главное: переработано и подробно задокументировано демо с блогом. Блог не обладает богатым функционалом, но может служить хорошей отправной точкой для разработки своего приложения.
+26
«Мнемотехника» и «изучение иностранного языка» несовместимые понятия?! Давайте разберемся
13 min
284KЗдравствуйте, Уважаемые Хабрапользователи!

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

На написание данной публикации меня сподвигло возмущение от прочитанной недавно статьи одного хабраюзера, утверждающего, что мнемотехника «очень хороший способ запоминания информации, совершенно не подходящий для изучения иностранных слов». Я с этим высказыванием в корне не согласен, а потому, хотелось бы доказать обратное.
Если вам интересно, как использовать мнемотехнику для запоминания иностранных слов, то добро пожаловать под кат.
+29
Использование регулярных выражений в Ruby
4 min
49KРегулярные выражения — спасение от всех бед для одних и ночной кошмар для других разработчиков, а если говорить объективно, то это мощнейший инструмент, требующий, однако, большой осторожности при применении. Регулярные выражения (регексы, регекспы, регулярки) в языке Ruby основаны на синтаксисе Perl 5 и потому в основных чертах знакомы всем, кто использовал Perl, Python или PHP. Но Ruby тем и хорош, что каждый компонент языка реализован со своим собственным подходом, упрощающим использование данного инструмента и увеличивающим его мощность. В предлагаемой мной небольшой статье рассматриваются особенности регулярок в Ruby и их применение в различных операторах.
+26
Дайджест интересных новостей и материалов из мира айти за последнюю неделю №28 (20 — 26 октября 2012)
5 min
20KПредлагаем вашему вниманию очередную подборку с ссылками на новости, интересные материалы и полезные ресурсы.


+30
Машинный перевод и автоматический словарь в Яндексе
3 min
20KКаждый большой продукт включает в себя много сложных и интересных технологий, над созданием которых работали люди, зачастую посвятившие им целую жизнь. И в браузере Yandex реализованы многие разработки наших коллег, которые могут остаться не замеченными неспециалистами и казаться незначимыми деталями. Например, одной из облачных технологий Яндекса, которые интегрированы в Браузер, стал наш собственный переводчик.
Сам Яндекс.Перевод вышел из беты несколько месяцев назад. От других немногочисленных подобных сервисов его отличает автословарь, уникальная технология которого разработана командой лингвистов и программистов Яндекса. Во время его разработки удалось объединить современные статистические подходы машинного перевода и традиционные лингвистические инструменты.
Чтобы понять, насколько значимым шагом в развитии машинного перевода является появление автословаря, стоит вспомнить, что 20 лет назад были распространены синтаксические переводчики, для которых таблицы соответствия фраз на разных языках составляли вручную. Процесс их создания стал меняться только в конце 1990-х, когда появились первые статистические переводчики. Для обучения их моделям переводов стали использовать параллельные тексты. Документы, в которых одно и то же написано на разных языках, извлекали, например, из дипломатической документации. Большой базой параллельных текстов стали документы ООН. Но на подобной лексике создать общелексический переводчик не получилось, потому что даже неформальные тексты он переводил сухим дипломатическим языком.
Сам Яндекс.Перевод вышел из беты несколько месяцев назад. От других немногочисленных подобных сервисов его отличает автословарь, уникальная технология которого разработана командой лингвистов и программистов Яндекса. Во время его разработки удалось объединить современные статистические подходы машинного перевода и традиционные лингвистические инструменты.
Чтобы понять, насколько значимым шагом в развитии машинного перевода является появление автословаря, стоит вспомнить, что 20 лет назад были распространены синтаксические переводчики, для которых таблицы соответствия фраз на разных языках составляли вручную. Процесс их создания стал меняться только в конце 1990-х, когда появились первые статистические переводчики. Для обучения их моделям переводов стали использовать параллельные тексты. Документы, в которых одно и то же написано на разных языках, извлекали, например, из дипломатической документации. Большой базой параллельных текстов стали документы ООН. Но на подобной лексике создать общелексический переводчик не получилось, потому что даже неформальные тексты он переводил сухим дипломатическим языком.
+53
Подборка инструментов для эффективной frontend разработки
3 min
101KВ эту прекрасную пятницу осмелюсь предложить хабрасообществую небольшую подборку приложений, предназначенных для увеличения продуктивности во время работы с фронтэндом. Если ваш любимый апп здесь не представлен — добро пожаловать в комментарии!
Form Builder

Этот прекрасный генератор форм поможет вам в создании красивейших CSS логин-боксов и прочих input вещей, при минимальных временных затратах. Помимо форм на сайте этого проекта можно создавать и другие не менее красивые CSS элементы, в том числе кнопки и ленты.
Form Builder

Этот прекрасный генератор форм поможет вам в создании красивейших CSS логин-боксов и прочих input вещей, при минимальных временных затратах. Помимо форм на сайте этого проекта можно создавать и другие не менее красивые CSS элементы, в том числе кнопки и ленты.
+190
Элементарные социальные share-кнопки
3 min
195KTutorial
В ответ на посты о кнопках для шаринга в социальных сетях с громоздким исходным кодом, и сложной детальной кастомизацией, хочу показать хабрасообществу решение которое однажды написал неизвестный, но однозначно добрый программист. Автор сего чуда не я, но использую это решение уже больше года в проектах с которыми работаю.
+58
А ваше мнение на кинопоиске учитывается?
5 min
78K
Наблюдая за одним из фильмов на кинопоиске, я обнаружил, как в один день неожиданно его рейтинг резко упал. Намеренно не буду указывать названий фильмов и ников пользователей, чтобы не вызвать непредвиденных последствий. Я попытался выяснить, в чем же причина, и обнаружил следующее: оказывается рейтинг рассчитывается не всегда одинаково. Все пользователи кинопоиска разделены на 2 сорта: оценки которых учитываются в рейтинге, и соответственно не учитываются. Изучив статистику, профили и историю оценок множества пользователей, и написав небольшую программу для анализа распределения оценок, я выяснил, как это происходит.
+111
Information
- Rating
- Does not participate
- Location
- Москва и Московская обл., Россия
- Registered
- Activity