Pull to refresh
3
0
Send message
Вопрос сложный. В первую очередь потому, что я не являюсь специалистом в этой области. Честно говоря, я даже не знаю, как зовут тех, кто является специалистом в области разработки систем репутации для человеческих сообществ. :D Пускай, это будут специалисты по социальной инженерии, что-ли. Тут я употребляю термин «социальная инженерия» не в отрицательном его значении (незаконный метод получения информации без использования технических средств), а в нейтральном (направление действий членов сообщества в определённое русло). Тут, конечно, многое зависит от задач: чего мы хотим от этой самой репутации, мерой чего она должна быть? Конкретное предложение — это обратиться к специалистам, а не в очередной раз демонстрировать пагубное влияние «синдрома программерского всемогущества». Точнее, это нужно было сделать изначально, потому что сейчас, как я уже говорил, менять модель без обнуления репутации — бессмысленно, а с ней — невозможно.
> Будущее ресурса определяется не теми, у кого много репы, а теми, кто активно участвует в жизни сайта.
Чтобы оказывать хоть сколь-нибудь существенно влияние на будущее ресурса, необходимо иметь минимум 10k репутации, которую очень трудно нынче заработать.

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

> И «Как вывести число в фортране», что характерно. :D
Естественно. :D Но это ведь не ко мне претензия, не так ли? Не мы такие, ресурс такой.
Хм… Вы, видимо, плохо знаете английский, иначе уж точно увидели бы, что ситуация в точности такая же: «Вопросы однотипны и сводятся к какому-то уж очень простому алгоритму или вообще решаются чтением спецификации языка, да даже простым изучением основ.» Единственная существенная, пожалуй, разница, что на SO много таких вопрос нынче закрывается как копия уже существующего и отвеченного или как офф-топик. Но там такой поток вопросов от «индо-китайских (с позволения сказать) программистов», что всё равно всё не закроешь: в очереди на закрытие висит примерно 10 тысяч (с позволения сказать) «вопросов», что намекает на масштабы проблемы.
По мнению многих, система репутации в сети Stack Exchange никуда не годится. Проблема в том, что изначально систему репутации как следует не продумали, а сейчас поменять её уже будет крайне проблематично (читай практически невозможно). Типичный программистский подход «шмяк-шмяк и в продакшн», а там поправим со временем, если вдруг чего, работает только когда изначально дизайн был более-менее адекватным, так что вносимые правки носят характер несущественных исправлений и расширений, не затрагивающих ядро системы. Но система репутации входит в ядро, а сделано абы как. Даже заявленную грубую роль («Reputation is a rough measurement of how much the community trusts you») репутация с трудом выполняет: так, цифирь, по которой можно зачастую лишь отделить «победителей лотереи» (см. сообщений Athari чуть выше) от неучаствовавших и проигравших, не более.
Вы не упомянули очень важную проблему с этой, как Вы выразились «лотерей»: пользователи с репутацией over 10k получают привилегии модераторов и фактически определяют будущее ресурса. SO скатился «сами знаете во что» именно вследствие лотереи: очень быстро сформировалась группа (не очень то я Вам скажу и профессиональных в плане разработке) пользователей с высоким, но мало что отражающим рейтингом, накрученным на ответах а-ля «Как вывести строку в Питоне?». И эта группа стала быстренько «подминать» ресурс под себя: напридумывали всяких гайдлайнов, конечно, по которым вроде как живёт ресурс, но в конечном счёте, скажем, будет вопрос закрыт или нет определяется только каким образом на него посмотрят «выигравшие в лотерею». Ну а дальше там синдром вахтёра в полный рост. Самое смешное, что большая часть вопросов, на которых эти «победители» накрутили себе репутацию, сейчас почти мгновенно будет закрыта. :D Если уж они такие «правильные», чтобы это не значило в их понимании, то обнулили бы себе репутацию, прежде чем играть по новым правилам. Но, понятное дело, этого не произошло.
Ну, не знаю, по личному опыту скажу, что ежедневная e-mail рассылка — это, скорее, для читателей, чтобы неторопливо просматривать уже «устаканившиеся» обсуждения, а не для писателей, чтобы своевременно отвечать. Вот на Physics.SE, скажем, я на тег quantum-mechanics подписался, там годноты немало бывает вдумчиво почитать вечерком. А для писателей куда лучше подходит RSS-подписка на теги. По-крайней мере, на Chemistry.SE, где я больше писатель, чем читатель, мне удобнее именно RSS-подписка.
Той гадалкой был Бьёрн Страуструп.
И да, я не думаю, что серьёзный игровой движок вам кто-то сейчас на Rust велосипедить будет. Это ж дорого, а потенциальных покупателей можно в итоге и не найти. Не только ведь игровые движки на С++ пишут, но и игры. Тут, вроде как, замкнутый круг: большинство игровых движков пишется на С++, потому что большинство игр пишется на С++, а большинство игр пишется на С++, потому что большинство игровых движков пишется на С++.
Ну не только в библиотеках, а в инструментарии вообще (библиотеки, среды разработки, статические анализаторы и т.д. и т.п.). В общем и целом дихотомию "взлетит-невзлетит" можно свести к следующему простому правилу. Прямо здесь и сейчас в ограниченный промежуток времени новый язык может взлететь в определённой нише только если он: a) позволяет "из коробки" (желательно даже напрямую, без написания каких-либо "обёрток") пользоваться большой частью уже имеющегося в нише инструментария; либо б) богатый сопутствующий инструментарий в нише практически не нужен, так что накладные расходы на его разработку на новом языке в конечном счёте окупятся простотой дальнешего решения уже самой задачи на этом языке.
С++ — не замена С. Чётко очерченная на данный момент ниша С — системное программирование — лишь отчасти пересекается с таковой С++. С++ — язык общего назначения. На нём можно писать и системное, и прикладное ПО, и вот в нише прикладного ПО, которая несоизмеримо больше, С вообще ни разу не конкурент С++. C# да Java там основные конкуренты, ну VB.NET c Python ещё можно упомянуть, плюс в конкретных областях "местечковые конкуренты" (типа Fortran для высоко-производительных вычислений).
C (как и Rust) — языки системного программирования, а С++ — язык программирования общего назначения. То есть в теории, конечно, любой язык можно использовать где угодно, но на практике С++ в прикладном программировании удобнее, чем С, Rust, D, и прочие по списку (по крайней мере, на данный момент времени). Потому что в прикладном программировании на первое место выходит не столько сам язык, сколько различные библиотеки: GUI, графика, сети, то-сё. Так вот язык X сможет заменит С++ только тогда, когда на нём напишут большую часть библиотек, которые сейчас в буквальном смысле заставляют плакать, колоться, но писать на С++. Как только будут сопоставимые по мощи аналоги Qt, VTK, Eigen, и прочих библиотек, которые и держат С++ "на плаву", так сразу С++ может утонуть.
Сама проблема тут никуда не денется, Вы просто предлагаете некий унифицированный инструмент для её решения.
Если пихать в язык, всё, что удобно — получится очередной монстр а-ля С++ со стандартом на 1500 страниц, который в принципе ни один человек в мире даже не знает. Так что тут нужно стараться в язык добавлять только самые необходимые вещи, которым свойства, по-моему, никак не являются.
По RAII просто почитайте в той же Вики, что это за подход. Суть в том, что доступ к ресурсу ведётся через локальный объект, деструктор которого будет вызван автоматически, как только объект покинет область видимости. В деструкторе пишете код, который освобождает ресурс, и тогда при выходе локального объекта, через который ведётся доступ к ресурсу, из области видимости, ресурс гарантированно освобождается. И не надо никаких finally.
Описанный Вами недостаток относится не конкретно к С++, а в принципе к любому языку, который использует трансляцию в машинный код, а не в байт-код виртуальной машины. Да, часто приходится собирать нужные библиотеки одним и тем же компилятором, да ещё примерно с одними и теми же флагами. В стандартную библиотеку в любом случае всё не запихаешь.
Нет и нет. И если первое — просто синтаксический сахар, то второе в С++ в принципе не нужно. Загуглите RAII.
Свежи предания, да верится с трудом. «Пожирателей» С++ было уже немало, а воз и ныне там. К тому же, с очередными потенциальными «пожирателями» Вы, скорее всего, сильно ошиблись: Rust — это, скорее, замена С, а не С++, а Swift — вообще «местечковый» язык, который вряд ли выйдет за пределе «яблочной» экосистемы. Ни тот, ни другой на замену С++ в принципе и не претендуют. Откушать где-то небольшую нишу, занятую сейчас С++ может и смогут, но сожрать… Я Вас умоляю!

Information

Rating
Does not participate
Registered
Activity