338lm: (338lm)
если не брать во внимание узкую нишу игр где люди действительно предпочитают играть именно с живыми людьми.

Абсолютное большинство MMO игр делаются просто потому, что программисты не могут создать толковый искусственный интеллект для своих игр. Точнее почти всегда могут, но это слишком дорого. И потому приходится использовать в качестве эрзаца других живых людей. Но у такого подхода есть фатальный недостаток - каждый человек хочет чтобы весь окружающий его виртуальный мир вращался только вокруг него. Ведь это ОН запустил игру чтобы развлечь СЕБЯ и ни с кем другим он свой виртуальный мир делить не хочет. Множество разработчиков стремится сделать виртуальный мир своих игр как можно больше похожим на реальный, но  это же прямо противоположно цели игрока. Человек уходит из реального мира в виртуальный чтобы отвлечься. Ему надоела окружающая действительность и хочется убежать в страну магии, волшебства, эльфов, благородных героев и прекрасных принцесс. А ему подсовывают виртуализированное мудачьё и закомплексованных дегенератов из реальной жизни, которое над ним издевается, троллит, выманивает реальные деньги и ворует виртуальные вещи точно так же как и в его повседневности.

Вобщем я думаю, что как только решат проблему с нормальным ИИ для игр так сразу ММО и умрёт.
338lm: (338lm)
Мне кажется, что процесс формирования среднего класса методом отъёма денег у богатого класса и раздачи их бедному классу работать не будет потому, что войдёт в рекурсию и умрёт от переполнения стека у тех кто этим процессом рулит.
338lm: (Ada)

> Класс. Ещё один повод учить лисп... вот я и думаю, с чего начать, lisp, haskell или erlang?

LISP, Haskell и Erlang стали массовыми и уже не модны.

Возьми любого ЛОРовского школьника и с удивлением обнаружь, что он держит под подушкой SICP, HtDP и Categories for the Working Mathematician, и готов за пять минут переписать стандартную прелюдию так, чтобы по крайней мере все рекурсивные схемы были выражены через комонады.

Таким образом, вышеперечисленные языки утратили элитарность. Но унывать не стоит; на смену им приходит новое поколение — Agda2, Omega, Coq, Epigram. Они по-настоящему позволяют почувствовать себя элитой и взглянуть на окружающих, как на говно. А тебе ведь нужно именно это, не правда ли?

Отсюда: http://www.linux.org.ru/news/commercial/9298028/page1#comment-9300701

338lm: (Ada)
Народ, как обычно, неправильно определяет цель и достигает странного.
Все хотят сделать такие игрушки как можно более похожими на настоящую жизнь, забывая что люди играются в них, чтобы отвлечься от жизни.
И ещё изобретая всякие гильдии и прочие иерархии забывают, что каждый кто приходит поиграть хочет быть независимым и самым главным в игре. Ни кто не хочет вступать в игру в качестве полного ничтожества, которое будет добывать лут из ботов для вышестоящих потому, что он и так это делает каждый день в реальности.

Очень это похоже на ситуацию с объектно ориентированным проектирование где почти всегда вместо решения задачи автоматизации пытаются задизайнить модель уже существующей системы, сделанной из желудей и пластилина, и образно говоря, решая задачу транспортировки груза делают не телепорт а модель дороги и грузовика со всеми их асфальтами, дорожными знаками, карбюраторами, бензобаками, рулями и колёсами существующими в реальной жизни но нафиг не нужными если есть возможность просто перемещать груз мгновенно.
338lm: (Ada)
Как же всё таки красиво какой-то гениальный пиарщик из Google развёл программистов всего мира на легенде о 20%!
Это же как надо было знать человеческую психологию чтобы заранее предсказать что народ, читая описание этой фичи будет понимать всё так как ему хочется, а не так как на самом деле написано.
Теперь наверное легенда о том, что в Гугле можно 20% рабочего времени заниматься фигнёй, своими собственными проектами, леваком и подработками умрёт только вместе с Гуглом. На сотни разъяснений в инете о том, что такого не было никогда, похоже никто не обращает внимания и не будет обращать ибо вера сильнее.
338lm: (338lm)
Аргументация тех, кто говорит, что нужно писать идеальный код строится, чаще всего, на том, что плохой код в будущем трудно сапортить. Ментальная ошибка в том, что чаще всего код не нужно поддерживать или нужно будет поддерживать не вам. Поэтому с точки зрения бизнеса написание идеального кода — лишняя трата времени и ресурсов.
338lm: (Ada)
Q What is a protected abstract virtual base pure virtual private destructor? (Van Der Linden, Peter. Expert C Programming. Page 327)

A It is a pure virtual private destructor that is inherited from a protected abstract virtual base. In other words, a destructor function that can only be called by members or friends of the class (private), and is assigned a 0 (pure virtual) in the base class (abstract base) that declares it, and will be defined later / overriden in a derived class that shares the multiply-inherited base (virtual base) in a protected way.
338lm: (Ada)
Или о том что мерить надо лучше. Или меньше обобщать.

Наверное все читали кучу литературы где, на основе исследований и экспериментов, авторы доказывают, что выбор правильного языка программирования даёт прирост скорости разработки не более чем на 2-5 процентов. Я никогда не сомневался в фундаментальности проведённых исследований, и опыте парней вроде авторов Peopleware, но не мог принять результаты таких исследований потому, что они не совпадали с тем, что я видел сам в реальных проектах.

Сегодня я кажется понял что общего во всех этих исследованиях и почему они противоречат моим ощущениям.

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

Они всегда проводили исследование на основе небольшой задачи со строго описанным ТЗ которая требовала всего несколько часов на решение, и почти всегда решением занимался всего один человек. Но ведь ни кто не имеет проблем с такими мелкими задачами. Проблемы начинаются тогда когда задача большая, когда её решают много людей разной квалификации, когда требования нечёткие и постоянно меняются.

Я понимаю этих парней. Такое исследование требует огромных затрат, которые ни кто не согласится нести только из научного интереса. Но измерив решение примитивной задачи одним человеком в течение нескольких часов делать выводы об отсутствии влияния языков на проекты любого масштаба и длительности я считаю неправильным.
338lm: (Ada)
It seems Go met its epic fail

Do Not Use Go for 32bit Development

P.S. Ну, как говорится, туда ему и дорога. :) Их принципы найма сотрудников рано или поздно должны были дать о себе знать.
338lm: (Ada)
Что-то меня сегодня пробило в Скайпе на графоманство во время беседы с одним хорошим человеком. Ниже немного тематического бессвязного бреда.

Идеальный бизнес-процесс, это идеально прогнозируемый и масштабируемый процесс, с нулевым влиянием человеческого фактора. Я мечтаю сделать в софтваре-девелоперской индустрии такой же конвейер как Форд сделал в автомобилестроении.
Короче я главный враг всех программистов. :)
Потому Ада мой любимый язык программирования - он пиздит по рукам нещадно пока не напишешь действительно хорошо читаемую программу.
Программными извращениями должны заниматься люди в исследовательских лабораториях, а в промышленном программировании всё должно быть просто, ясно и понятно.
Java, например, стала такой популярной именно потому, что нужно быть очень талантливым долбоёбом, чтобы завалить всю систему из метода своего класса. Только в жабе это достигается с помощью ВМ, которая всё контролирует, а в Ада с помощью языка. Потому адский софт на этапе выполнения может не иметь вообще ни какого оверхеда на проверки, а жаба жрёт ресурсы как не в себя.
Oleksandr Okhrimenko: хорошо что предупредил
Oleksandr Okhrimenko: но этого то пока нет
Oleksandr Okhrimenko: людей пока не отменили
Людей никогда не отменят. Это вообще основная ценность любой затеи. Но из-за людей, и самые большие проблемы. Тот кто умеет управлять людьми может всё на что способно человечество. Макдоналдс так богат потому, что смог написать детальный рецепт как управлять людьми в закусочной, и даже из самых тупых идиотов сделать нормальный персонал, который сделает вкусный пирожок. А для софтвера такого ещё не сделали. А жаль. Это моя мечта. :)
Oleksandr Okhrimenko: ну в маке имхо работа больше механическая и это действительно конвейер
Oleksandr Okhrimenko: а вот в софте приходится иногда думать
Ага, потому там и зарплаты больше. Но практически все думы в промышленной программе сводятся к тому какое из уже известных решений применить. Так что ни какого высокого творчества это не требует. Любой человек, который не дурак, может успешно писать промышленный софт. Заниматься изобретением чего-то совершенно неимоверного не только практически никогда не нужно но и почти всегда вредно. Все те случаи когда я видел чьё-то "изобретение" происходили от недостаточного знания готовых решений. Чем меньше опыт и квалификация программиста тем больше велосипедов он изобретает самостоятельно.
Кстати IMHO ООП это зло в принципе, потому, что применяющие его на серьёзном уровне, почти всегда вместо решения задачи тонут в нагромождениях искусственных абстракций, которые они сами же и придумали. И всё время думанья улетает на то какой шаблон проектирования применить вместо простейшего решения влоб.
А самое забавное, что обычно именно вот такое простейшее решение потом никогда не подвергается ни каким расширениям или изменениям. А если и подвергается то суммарное время на написание нового решения влоб с нуля иногда на порядки меньше въезжания в архитектуру расширяемого решения и расширения его правильным образом.
Чаще всего такие развесистые ООПные расширяемые системы переполнены костылями, с помощью которых новый функционал добавляли люди, которые просто не поняли, или не захотели понять архитектуру, из-за ее переусложненности и заумности.
338lm: (Default)
import java.*;

class Test {
public static void main(String[] args) {
Integer a = 42;
Integer b = 42;
Integer c = 420;
Integer d = 420;
System.out.println(a==b); // true
System.out.println(c<=d); // true
System.out.println(c>=d); // true
System.out.println(c==d); // false
}
}

P.S. The more idiotic languages the more weak competitors :)

Profile

338lm: (Default)
338lm

January 2017

S M T W T F S
1234 567
891011121314
15161718192021
22232425262728
293031    

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 20th, 2017 04:02 am
Powered by Dreamwidth Studios