Pull to refresh
31
0

Программист C++/Scala/Go

Send message

Особенности настройки git под windows

Reading time3 min
Views107K
Проблемы с русскими символами в git

Когда вы начнете работать с версией git под windows в командной строке, вы столкнётесь со следующей проблемой — все сообщения git, в которых фигурируют русские символы будут нечитаемы. Имена файлов, на русском языке, будут выглядеть так — "\362\345\361\362", а тексты коммитов примерно так — <C8><ED><E8><F6><E8><E0><EB><E8><E7><E0><F6><E8><FF> <EF><F0><EE><E5><EA><F2><E0>. Т.е. исходная строка преобразуется в utf8 в соответствии с кодировкой latin1.

далее...
Total votes 20: ↑18 and ↓2+16
Comments39

Git Wizardry

Reading time17 min
Views450K
1 Введение


В своей прошлой заметке я постарался осветить в общих чертах стиль работы с
распределенной системой контроля версий git и указать на отличия по сравнению с
классическими централизованными СКВ. Целью было прежде всего обобщение опыта
работы с системой без упоминания тонкостей синтаксиса отдельных команд.

Данный же топик задумывался как непосредственное введение в работу с git, нечто
среднее между tutorial и обобщенной справкой, до которого все же рекомендуется
прочитать упомянутое выше введение. Сознательно избегаются технические
подробности работы git, употребляются только общие для СКВ термины и
ограничивается список упоминаемых команд.

Читать дальше →
Total votes 89: ↑66 and ↓23+43
Comments76

Оптимизация связки Nginx, Apache, PHP, MySql

Reading time9 min
Views80K
Неожиданно поступила задача разобраться почему определенный сайт не работает столь быстро сколь хочется. В основе его CakePHP, в связке с Apache и MySQL. В статье описание процесса поиска узких мест и приведение в порядок на столько, на сколько это возможно.

Название сайта светить не буду — думаю, программисты сами узнают. Скажу лишь, что это приложение для социальной сети нагрузкой 70-150 тысяч посетителей в обычное время. Все усложняется тем, что периодически производится рекламная рассылка, которая привлекает около 200-300 тысяч посетителей за пару часов.

Итак, под катом описание всей борьбы на протяжении 4 дней.
Читать дальше →
Total votes 95: ↑79 and ↓16+63
Comments108

OpenShift в качестве Java – хостинга

Reading time7 min
Views75K
image
Не секрет, что уже около полугода RedHat продвигает собственный облачный продукт, причем не привычное хранилище файлов, а сервис для облачных вычислений, с бесплатной версией Developer Edition. В качестве одной из поддерживаемых платформ указывается Java, что для многих может оказаться весьма кстати на фоне достаточно малого числа бесплатных Java – хостингов. Причем, если брать java, то тут предлагается одна из современнейших платформ, а именно Jboss AS 7.1, что означает совместимость с большинством технологий и проектов, разрабатываемых под эгидой Jboss. Широкие возможности сервиса сочетаются с простотой, при этом разработчики настолько уверены в качестве и доступности сервиса, что не постеснялись даже написать про него «easy-peasy».

Недавно пришлось попробовать OpenShift в работе, как Java – хостинг для небольшого частного проекта. Впечатления, если кратко – да, у разработчиков RedHat всё получилось, все подробности далее…
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments10

Эффективное чтение

Reading time1 min
Views11K


Настало время для седьмой лекции курса «Сетевое программирование в UNIX», подготовленного специалистами SkyDNS и компании «Айдеко». Автор курса Александр Патраков объясняет студентам, как ускорить чтение небольших порций данных из сокета.
Читать дальше →
Total votes 9: ↑5 and ↓4+1
Comments7

Как делать несколько дел одновременно и в то же время по очереди?

Reading time1 min
Views10K


Продолжаем осваивать курс «Сетевое программирование в UNIX», подготовленный специалистами SkyDNS и компании «Айдеко». Сегодня мы публикуем шестую лекцию.

В прошлый раз мы рассматривали программы, основанные на использовании конечного автомата. Теперь пойдем дальше и расскажем, как «научить» программу в автоматном стиле обрабатывать несколько одновременных соединений в одном процессе/потоке.
Читать дальше →
Total votes 3: ↑2 and ↓1+1
Comments5

Программы в автоматном стиле – трудности перевода

Reading time2 min
Views6.8K


Пятая лекция курса «Сетевое программирование в UNIX» от специалистов SkyDNS и компании «Айдеко» уже ждет своих слушателей.

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

О том, что такое конечный автомат, вы узнаете под хабракатом.
Читать дальше →
Total votes 6: ↑4 and ↓2+2
Comments7

О том, как читать до конца

Reading time1 min
Views13K


Сегодня мы представляем вниманию читателей следующую лекцию курса «Сетевое программирование в UNIX», которую прочитали в Уральском федеральном университете (УрФУ) специалисты SkyDNS и компании «Айдеко». К сожалению, в публикациях произошел вынужденный перерыв. Надеемся, что время ожидания новой лекции вы использовали для реализации сервера и клиента, о которых рассказывали наши специалисты.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments6

Реализуем протокол или как работают астрологи

Reading time1 min
Views7K
Астрологический протокол

Сегодня – очередная лекция нашего курса «Сетевое программирование в UNIX».

В ней Марк Коренберг (Компания Айдеко) рассказывает студентам об «игрушечном» астрологическом протоколе.
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments12

Каждому клиенту по процессу

Reading time1 min
Views5.8K
image
Мы продолжаем публиковать на Хабре лекции курса «Сетевое программирование в UNIX». Хотя тема второй лекции – не сетевая, ее можно считать смежной с сетевым программированием. Видео посвящено способам обработки нескольких клиентов в одном сетевом сервере. «Использование более одного процесса можно организовать по-разному. Можно создавать процессы заранее (это модель prefork) или делать это по мере необходимости. Оба способа рассмотрены в лекции», — рассказал Александр Патраков, автор курса.
Читать дальше →
Total votes 2: ↑2 and ↓0+2
Comments10

Курс для тех, кто не боится UNIX и С

Reading time1 min
Views38K
image
О том, что российские вузы выпускают специалистов, невостребованных рынком труда, говорят многие. Обычно, разговорами все и заканчивается. Очень мало компаний в России идут на контакт с высшими учебными заведениями. Но такие всё же есть.

В прошлом году специалисты SkyDNS и Айдеко подготовили и прочитали в Уральском федеральном университете (УрФУ) курс «Сетевое программирование в UNIX». Спецкурс предназначался для студентов математико-механического факультета УрФУ. «Мы анонсировали его как курс для тех, кто не боится UNIX и С», — рассказал Александр Патраков, ведущий разработчик компании SkyDNS.
Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments18

Yet another cool story about bash prompt

Reading time10 min
Views37K
Я программист. По крайней мере так написано в трудовой книжке. Почти всё своё рабочее время я провожу в консоли и текстовом редакторе. Мне очень нравится bash. Почти год я жил в zsh, прислушавшись к советам своих многочисленных коллег и знакомых, но в итоге я вернулся в bash и ни капельки об этом не жалею.



Zsh красив, приятен, чертовски функционален, но, признаюсь честно, я не смог совладать со всеми его многочисленными настройками. Я хочу работать, а не бороться со своим рабочим окружением. Простой пример: пару раз из-за автодополнения zsh я удалял все директории и файлы в текущей директории — zsh просто ставил пробел между автодополненной директорией и введённой мною звёзочкой (я хотел удалить всё в выбранной папке). Помните тот эпичный баг с пробелом и удалении директории /usr? У меня было то же самое. Спасибо гиту, выручил в который раз.

Впрочем, дело не в zsh — будь я чуточку умнее, я бы с ним обязательно справился бы, и всё было бы хорошо, но мы, суровые программисты, будем использовать bash и vim, а гламурные zsh и textmate оставим хипстерам и прочим модникам ;)

Я не напишу ничего оригинального и универсального решения я не приведу, но мне всегда нравилось читать конфиги и описания других людей, а если к ним были приложены интересные картинки, так я вообще перечитывал эти статьи несколько раз. Надеюсь, вам тоже будет интересно.
Читать дальше →
Total votes 175: ↑166 and ↓9+157
Comments143

Некоторые тонкости установки на сайт кнопок «Поделиться» (share) социальных сетей

Reading time5 min
Views205K
Сегодня, в эпоху социальных медиа, принято давать посетителям сайта возможность поделиться с друзьями. Мы делали промо-страницу к Дню Рождения интернет-магазина Allsoft и нам нужно было установить кнопки «Поделиться» от Facebook, Twitter, Одноклассников, Вконтакте и Мой мир.

С первого взгляда показалось — что может быть тут особенного — поставил готовый html/js код и готово? Но тонкости оказались в деталях: что если для одной соц. сети нужно передавать один текст, а для другой — другой? Как правильно передать картинку и описание во все сети? А если несколько разных вариантов текста и картинок на одной странице? Как почистить уже закешированную информацию о ссылке в соц.сети? На все эти вопросы нам пришлось найти ответы, которые и вы сможете узнать из этой статьи.
Читать дальше →
Total votes 74: ↑59 and ↓15+44
Comments44

Против лома нет приёма: OpenJDK hack vs. Class Encryption

Reading time5 min
Views8.7K
Цель этой статьи предостеречь разработчиков от использования обфускаторов с функцией шифрования class-файлов для защиты своих приложений и от бессмысленной траты денег на них.
Вопросы защиты байт-кода от реверс-инжиниринга и обхода этой защиты подробно рассмотрены в фундаментальной работе Дмитрия Лескова — Protect Your Java Code — Through Obfuscators And Beyond.
Механизм шифрования class-файлов предполагает, что содержимое классов хранится в зашифрованном виде, а при старте приложения через специализированный СlassLoader или JVMTI-интерфейс, расшифрованный байт-код грузится в виртуальную машину Java.
Читать дальше →
Total votes 48: ↑47 and ↓1+46
Comments16

Запрограммируем перцептрон Розенблатта?

Reading time17 min
Views30K
После одной провокационной статьи Перцептрон Розенблатта — что забыто и придумано историей? и одной полностью доказывающей отсутствие проблем в перцептроне Розенблатта, и даже наоборот показывающей некоторые интересные стороны и возможности Какова роль первого «случайного» слоя в перцептроне Розенблатта, я так думаю у некоторых хабражителей появилось желание разобраться, что же это за зверь такой — перцептрон Розенблатта. И действительно, достоверную информацию о нем, кроме как в оригинале, найти не возможно. Но и там достаточно сложно описано как этот перцептрон запрограммировать. Полный код я выкладывать не буду. Но попробуем вместе пройти ряд основ.

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

Читать дальше →
Total votes 51: ↑43 and ↓8+35
Comments211

Перцептрон Розенблатта — что забыто и придумано историей?

Reading time4 min
Views27K
На хабре — уже есть несколько статей про искусственные нейронные сети. Но чаще говорят о т.н. многослойном перцептроне и алгоритме обратного распространения ошибки. А знаете те ли Вы что эта вариация ничем не лучше элементарного перцептрона Розенблатта?

Например, вот в этом переводе Что такое искусственные нейронные сети? мы можем увидеть, что о перцептроне Розенблатта пишут такое:

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


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

Но это, наверно, самая великая реклама в области ИИ. А в науке это называется фальсификация.

Читать дальше →
Total votes 73: ↑64 and ↓9+55
Comments106

Нейросети для чайников. Часть 2 — Перцептрон

Reading time5 min
Views256K
image

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

Язык программирования, на этот раз — C#.
Заинтересовавшихся прошу под кат.
Читать дальше →
Total votes 97: ↑86 and ↓11+75
Comments41

Нейросети для чайников. Начало

Reading time5 min
Views803K


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

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

Заинтересовавшихся прошу под кат.
Читать дальше →
Total votes 258: ↑226 and ↓32+194
Comments91
12 ...
35

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity