суббота, 28 мая 2011 г.

ХэшКод и кафедра математического обеспечения ЭВМ СПбГЭТУ

В рамках нашего взаимодействия с вузами, 24 мая в актовом зале ЛЭТИ при поддержке кафедры математического обеспечения ЭВМ СПбГЭТУ был проведен двухчасовой мастер-класс по программированию для студентов. Мероприятие приближено к формату общения на форуме: участники задают друг другу вопросы по программированию в непринужденной игровой атмосфере. При этом с одной стороны - команда знатоков ХэшКода, а с другой - студенты вуза. Затрагивались самые разные языки программирования, С/С++, C#, Java, и другие, хотя основной акцент пришелся на C/C++. Некоторые из вопросов, прозвучавших во время акции, были заданы на форуме.

Для наглядной иллюстрации формата общения на форуме использовался проектор актового зала. 


Любопытно увидеть ХэшКод на большом экране. :)

Студентов интересовало, в чем реальная практическая польза форума ХэшКод для начинающего и профессионального разработчика программного обеспечения. И самим мастер-классом был дан ответ, что как минимум это
  • интересные темы, которые можно читать как ленту новостей;
  • опытные специалисты, которым можно задать вопрос и получить квалифицированный ответ;
  • зарядка для ума, самообучение в результате поиска ответа на нетривиальные вопросы;
  • личный профиль на сайте как визитная карточка (а в будущем и резюме).

ХэшКод.

суббота, 21 мая 2011 г.

Учебная тревога

Как мы неоднократно писали, на форуме допускаются учебные вопросы, но не допускаются учебные задания - просьбы сделать (а также завершить, доделать, отладить и т.п.) учебные задания за учащегося. Разница между учебными вопросами и учебными заданиями раскрыта в статье блога "Учебные вопросы". Вопросы с просьбой решить учебное задание, например: 
Помогите, пожалуйста. 
Дана функция вида y = log (x). Нужно построить таблицу значений функции в интервале от 1 до 10 c шагом 0,1 и вывести на консоль. Решение представить на языке Pascal.
- должны удаляться. 

Чтобы сделать процесс удаления тем подобного рода более очевидным, мы вводим специальный флаг тревоги: "Учебное задание". Любой участник с очками уважения больше 15 может, кликнув по ссылке "тревога" под вопросом, выбрать в выпадающем списке причину "Учебное задание" и поставить в известность модераторов, что вопрос не соответствует правилам форума и должен быть удален.

суббота, 14 мая 2011 г.

Закрытие статистики голосований

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

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

понедельник, 25 апреля 2011 г.

ХэшКод и Академия Информатики и Программирования

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

Поэтому мы рады сообщить о нашем сотрудничестве с Академией Информатики и Программирования (http://aip.ifmo.ru/) на базе СПбГУ ИТМО. Мы информируем студентов о нашем форуме как о современной площадке для профессионального общения программистов и админинстраторов (и в более широком смысле, вообще специалистов информационных технологий). В результате студенты вуза получают доступ к современному средству передачи, накопления и анализа информации в профессиональных сообществах, что, безусловно, полезно для профессионального роста.

ХэшКод.

пятница, 22 апреля 2011 г.

Оформление сообщений

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

  • Заголовок сообщения начинается с большой буквы и оканчивается либо вопросительным знаком либо отсутствием знака препинания вообще.
  • Текст сообщений является литературным русским языком.
  • Абзацы в тексте разделяются пустой строкой (два перевода строки).
  • Прямые цитаты, сообщения об ошибках, отрывки логов оформляются как цитаты (символ >).
  • Код программ или скриптов пишется отдельным абзацем (четыре пробела).
  • Для форматирования кода используется общепринятый стиль кодирования, например, для программ на C под Linux: indent -linux code.c.
  • Ссылки оформляются как прямые ссылки с осмысленным названием (ХэшКод). 

Все эти простые правила во многом способствуют тому, что сообщение, оставленное участником форума, будет полезно многим другим читателям темы.

суббота, 16 апреля 2011 г.

Учебные вопросы

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

Где проходит грань между учебными вопросами (допускаемыми) и учебными заданиями (недопускаемыми)? Ответ на учебный вопрос - направляет к решению, а ответ на учебное задание - дает решение. Каковы признаки хорошего учебного вопроса:
  • метка "учебное-задание",
  • краткое описание решаемой проблемы, но не собственно текст задания,
  • опробованные попытки решения и место, которое вызывает затруднение.

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

воскресенье, 10 апреля 2011 г.

Изменение меток

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

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

суббота, 9 апреля 2011 г.

Понижение порога тревоги

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

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

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

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

воскресенье, 3 апреля 2011 г.

Изменения в модерации

С начала развития форума ХэшКод команда модераторов просматривала и в случае необходимости исправляла практически каждое новое сообщение (вопрос, ответ, комментарий). Это было жизненно необходимо для создания и поддержания высокой культуры общения с самого первого вопроса и ответа.

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

Просмотр сообщений ограничивается:
  • вопросами и ответами от участников, задающих или отвечающих на вопрос впервые;
  • вопросами и ответами, отмеченными сигналом тревоги.

Правка просматриваемых сообщений сводится к
  • исправлению заголовка вопроса;
  • исправлению меток вопроса;
  • исправлению синтаксиса и орфографии сообщения;
  • исправлению форматирования сообщений;
  • замене обращения на ты на обращение на вы.

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

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

ХэшКод.

суббота, 2 апреля 2011 г.

Лишний код

На многих форумах, посвященных программированию и администрированию, есть возможность при публикации значительного объема кода свернуть его. В этом случае при просмотре сообщения читатель темы увидит код, только кликнув по специальной ссылке. Эта возможность значительно облегчает просмотр темы, поскольку большие куски кода препятствуют целостному восприятию. Тем не менее, на ХэшКоде такой возможности нет и не предвидится.

Дело в том, что сам факт наличия значительного объема кода в вопросе (а иногда и в ответе) в подавляющем большинстве случаев  говорит о низком качестве темы. Типичный пример - участник форума выкладывает листинг кода на несколько экранов и задает вопрос:
  • Где ошибка?
  • Почему не работает?
  • Как исправить?
И далее в таком же духе... Отвечающий на вопрос вынужден тратить время и силы на чтение, восприятие и осознание чужого кода. По сути отвечающий берет на себя работу по локализации и выявлению проблемы в чужом коде. И чем больше объем кода (особенно при низком уровне стиля кодирования), тем более трудоемка эта работа.

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

Если вопрос содержит слишком много лишнего кода, не нужно прятать код, нужно его сокращать.

воскресенье, 27 марта 2011 г.

Процент принятых

В настоящий момент на форуме из 1271 вопросов 496 имеют имеют непринятые ответы. Это почти 40%. Большинство непринятых ответов - это качественные ответы, которые в действительности отвечают на вопрос. Они неприняты потому, что автор вопрос либо не знал, что ответ надо принять, либо забыл. Поскольку на ХэшКоде принятие ответа - важное действие, которое
  • в явном виде выражает благодарность автору ответа,
  • дает очки уважения и автору вопроса, и автору ответа,
  • при поиске показывает, что ответ качественно отвечен;
важно обеспечить своевременное принятие ответов, которые реально отвечают на вопросы. Для этого мы вводим ряд мер, первая из которых - это цифра, показывающая процент принятых участником ответов.

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

суббота, 26 марта 2011 г.

Развитие вопросов и ответов

Несмотря на то, что мы называем ХэшКод форумом, в действительности это особое явление сетевой жизни, которому присущи отдельно взятые черты
  • новостей,
  • дневника,
  • энциклопедии,
  • форума.
Все эти черты объединены оригинальным способом в систему вопросов и ответов с главной целью - сделать мир интернета на русском языке лучше, создав место, где можно спрашивать и отвечать на вопросы по программированию и администрированию на профессиональном уровне.

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

ХэшКод.

воскресенье, 20 марта 2011 г.

Энциклопедические вопросы

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

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

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

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

суббота, 19 марта 2011 г.

Наша правка

Когда посетитель приходит на форум, он может обратить внимание, что многие сообщения исправлены участником с именем "ХэшКод". Почему и зачем это делается?

Главная цель исправлений - повышение читаемости сообщений. В основном, исправления сводятся к корректорской правке:
  • устранению языковых ошибок (синтаксических, орфографических и т.п.);
  • улучшению форматирования (выделение абзацев, цитат, кода);
  • исправлению заголовка (для более точной передачи смысла темы);
  • изменению меток (для более правильной классификации темы);

Изредка меняется направленность вопросов, они делаются более конкретными и точными (в этих случаях вопрос комментируется так, чтобы автор знал, почему его вопрос был исправлен).

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

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

ХэшКод.

воскресенье, 13 марта 2011 г.

Обратная связь

Мы исключительно ценим мнение участников форума относительно всех составляющих проекта, начиная от дизайна сайта и кончая тематикой вопросов, допустимых на форуме. Поэтому нам важно наладить удобную форму общения с сообществом. В настоящее время на форуме 1026 вопросов, из них  - 15 вопросов с меткой "хэшкод"; это вопросы, которые относятся не к программированию и администрированию, а к самому форуму.

В одном из вопросов по форуму поднималась идея создания отдельного инструмента (наподобие системы слежения за ошибками) для запросов по сайту. Мы полагаем, что при текущей интенсивности (меньше 2% вопросов на форуме) нет смысла в создании отдельной системы: большую часть времени она будет простаивать. Вместо этого мы немного формализуем формат вопросов по форуму:
  • вопросы с предложениями будут отмечаться метками "хэшкод" и "предложения";
  • вопросы с замечаниями будут отмечаться метками "хэшкод" и "замечания";
  • вопросы с обсуждениями будут отмечаться метками "хэшкод" и "обсуждения" и переводиться в "общие".
Все эти вопросы будут отвечаться администрацией форума, а в случае раскрытия темы - закрываться.

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


суббота, 12 марта 2011 г.

Внешние зависимости

Иногда на форуме встречаются сообщения (как вопросы, так и ответы), неотъемлемой частью которых является ссылка на внешний ресурс. Возможными примерами таких сообщений являются:
  • ссылки на неработающий сайт ("У меня не работает сайт, http://..., что сделать, чтобы он заработал?");
  • ссылки на код в файлообменнике ("У меня есть программа в архиве, http://..., она не работает, что делать, чтобы заработала?");
  • ссылки на ресурс, объясняющий вопрос или ответ ("Посмотрите, там все написано, http://...").
Несмотря на то, что мы допускаем вопросы и ответы такого рода на форуме, мы считаем, что они обладают низким качеством:
  1. такие сообщения предполагают дополнительные усилия со стороны читающего (посещение страницы, где расположен сайт, архив, статья и т.п.);
  2. такие сообщения потенциально имеют ограниченный срок жизни, потому что внешний ресурс всегда может исчезнуть;
Как результат такие сообщения плохо удовлетворяют одному из главных принципов форума: многократному прочтению тем, что в значительной мере обесценивает их.

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