Pull to refresh

Comments 41

Прикольно… жалко нет ачивки «Хакер 80 левел»…

Ну тот который из анекдота…
— Серега вчера сервер поломал
— Он что хакер?
— Нет, он мудак…
Не туда нажал. Ответ внизу.
v
v
v
Это, кстати, отличная тема для обсуждения. Потому что ачивки там зачастую не те, что хочется видеть в рабочем проекте. Вот, что говорит о человеке ачивка «Иметь в коде 30 переменных с однобуквенными названиями»?!
То, что он знает алфавит?
если добавить «с различными однобуквенными названиями», то все равно остается вопрос в каком алфавите 30 букв?
А он настолько мудак нехороший человек, что еще и верхний регистр начал использовать.
Ага. И переменные называет I и l, а ещё использует их в конструкциях вроде: if (I|l) {….
Если не ошибаюсь, у вас была идея системы достижений для программиста? Интересно что с ней стало.
была, так и осталась идеей
Вот собственно ради такого ощущения и задумываются подобные вещи. Это маркетинг чистой воды, к разработке это отношения не имеет — по крайней мере в том виде как это сделано.
Вы правы. Но разработка должна доставлять фан:)
неприкольно получать ачивки, зная наперед что сделать для получения этой самой ачивки =(
ну а кто заставлял читать наперед? (8
в контексте того, что речь всё-таки об ide, можно закопаться в так сказать геймплейных возможностях ;)
Хочу видеть заработанные ачивки в профиле XBOX Live и PSN :)
UFO just landed and posted this here
Мечтаю использовать свой 20% новогодний купон на покупку VS2012.
!!!
>>Steam Powered – Added Visual Studio as a Steam game
Неприкольно только для неинтересных и простых ачивок…
А вот ачивки для которых надо попотеть, вот это да.
Ну что нибудь вроде «100 коммитов без багов» или «поддержка 30лвл» за 100 испраленных багов в неделю… в общем суть надеюсь понятна. Нужны ачивки для получения которых приходится попотеть.
такие ачивки очень субьективны
— Штурман приборы
— 20
— Что 20?
— А что приборы?

Можете пояснить ваш камент? Субъективны к чему/кому?
Если вернуться к моему предыдущему посту. Там я говорил о скилах и ачивках. Как понять, допустим, человек написал 10 классов, он теперь сильно скиловее в данном языке или не очень? Количество классов может посчитать программа, но качество не может. Так же и ачивки типа «100 коммитов без багов» и «100 исправленных багов в неделю». Кто и как будет считать эти комиты? Программа может сказать, что было 100 коммитов и они скомпилировались. А добавил ли человек при этом баги? Убрал ли? Тут система сильно усложняется.

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

А в 95% случаев гейм-мастером будет сам разработчик. Сам себе судья. Допустим, я себе судья строгий, а Вася не очень. Он прощает какие-то косяки. Я на 99м коммите создам баг и ачивку сброшу. А Вася оглянется и «ладно, не заметил никто», быстро поправит баг и — тадам! ачивка!
Вы наверно по жизни зануда… дико извиняюсь если задел.
Просто я описал на вскидку пару ачивок, которые простым набиванием количества тех же классов не получишь, и знание о правилах получения которых только добавит интереса к их получению. Например сделать 100 коммитов без багов не так просто. А получив такую ачивку можно «гнуть пальцы» среди коллег. У нас например есть бактрекинг привязанный к комитам. Сопоставить что откуда вполне возможно. Так что ваш гейммастер тоже простейший случай. Собственно никто и не обещал, что построение такой систему будет и должно быть простым…

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

Но субъективность все равно остается. Я слишком долго думал об этом.
> Хех, я не говорил, что знание правил убивает интерес.
Это действительно не вы говорили… это сказал Evgin. Вот ему я и отвечал ))

Да и дело не в бактрегингке и не правилах…
Это всего лишь пример… понимаете? Обычный пример на вскидку и притянутый за уши… В нашей команде ачивка будет такая, в вашей другая… это всего лишь пример, а вы начали его рассматривать как руководство к действию, рассказывая как это будет сложно и как субъективно…
Вот тут (уж не знаю, насколько достоверно) есть список ачивок. Есть очень забавные, наподобие Rage quit :)
да что ж я седня не на ту ссылку жму
ответ ниже
Это список ачивок из того первого поста. Не факт, что они взяли именно его.
Я попробовал придумать достижения для Delphi. Вот что вышло.

По умолчанию: Расположить на одной форме 30 компонентов со стандартными именами и сослаться на них в исходнике.
Создатель: Напрямую вызвать конструктор или деструктор (someObject.Create вместо someObject:=TSomeObject.Create; someObject.Destroy вместо someObject.Free).
Под капотом VCL: Перехватить сообщение CM_ или CN_.
Археолог-неудачник: Попробовать сослаться на функцию из 16-битного DLL (я об известной книге Рея Конопки и bwcc.dll; конечно же, под Delphi 2 и выше этот компонент не заработает).
Гуру Windows: Подключить функцию WinApi или Native Api, не описанную в windows.pas.
Интерфейсный программист: Реализовать интерфейс, поставив заглушки на месте _AddRef и _Release, а не унаследовавшись от TInterfacedObject.
Искатель правды: Отыскать в интернете свободную версию компонента, который позднее коммерциализовался (PNG for Delphi, TNT Unicode Controls или подобный).
Колосажатель: Найти или написать визуальную библиотеку, не подключающую модуль Forms (от названия одной из таких библиотек — KOL).
Паблик Морозов: Написать объект-заглушку для доступа извне к protected-функции.
Часовщик: Применить функции WinApi SetTimer/KillTimer (API таймеров в Windows настолько простое, что зачастую TTimer — излишняя сложность).
Антиквар: Держать установленным Delphi 10-летней давности.
Объектный оптимизатор: Применить тип array of object (динамический массив, нововведение Delphi 4, созданный из устаревших объектов Borland Pascal; обычно такое применяют оптимизации ради).
Крышка ради принципа: 100 раз в одном модуле применить для ^object и ^record конструкцию p^.field, ни разу не упустив крышку (в Паскале принято p^.field, но Delphi позволяет и p.field).
Художник: Сделать 10 компонентов со своими иконками.
Мусорщик: Подключить к программе 25 ненужных модулей (связано с тем, что визуальный редактор Delphi подключает модуль, если тот вдруг требуется, но не отключает, когда компонент удалили).
P.S. Мало, т.к. я старался писать только специфичные для Delphi вещи — а не присущие программированию как таковому.
Еще бы привязывать их к проектам, что бы убрать возможность тупого набивания, и сделать негативные ачивки, что бы не лепили однобуквенные переменные в коде)
как привязка к проектам защитит от тупого набивания?
Если в проекте не нужно делать 50 интерфейсов, то вы их и не будете делать. Все таки тут ачивменты не главное. А для набивки можно создать проект для себя, и набивать в нем все что захочется.
Из опыта внедрения score-board на Hudson, работает примерно месяц, потом просто ненужная игрушка.
Подожду когда сделают чтобы дропался эпический шмот.
эта хрень, VS achivements — причина бажины

Unable to copy file «obj\x86\Debug\MyFile.dll». The requested operation cannot be performed on a file with user-mapped section open

описание тут: stackoverflow com/questions/9011177/the-requested-operation-cannot-be-performed-error-when-compiling-an-xna-project

сам столкнулся.
Sign up to leave a comment.

Articles