К вопросу о сортировке гномиков и качестве кода
От: consign  
Дата: 18.07.16 05:17
Оценка: +5 :)
.NET библиотеки для Google API, в частности OAuth, Google Analytics и Google Search Console API — жутчайший кусок говна, ничего хуже я еще в жизни не видел. Всё делается через задницу, везде жутчайшие нагромождения бессмысленных и ненужных паттернов, разобраться, как делается простейшая задача — это надо днями ковыряться в мануалах, половина из которых к тому же содержит ошибки.
Re: К вопросу о сортировке гномиков и качестве кода
От: Sinix  
Дата: 18.07.16 06:10
Оценка: 1 (1) +1 :))) :))) :)
Здравствуйте, consign, Вы писали:

C>.NET библиотеки для Google API, в частности OAuth, Google Analytics и Google Search Console API — жутчайший кусок говна, ничего хуже я еще в жизни не видел. Всё делается через задницу, везде жутчайшие нагромождения бессмысленных и ненужных паттернов, разобраться, как делается простейшая задача — это надо днями ковыряться в мануалах, половина из которых к тому же содержит ошибки.


Да ладно. В любом проекте можно такое найти, стоит попробовать что-то такое, на что создатели не рассчитывали.

На днях прикручивал перехват вывода в консоль и динамический пропуск тестов к xUnit. Всего-то надо подменить:
* Один класс-атрибут.
* Один класс, чтобы привязать атрибут к реальному коду.
* Один класс исключения.
* Один класс, чтобы превратить исключение в сообщение "тест прерван".
* Один класс, чтобы сообщение "тест прерван" не теряло переданный текст сообщения.
* Один класс, чтобы подменить логику запуска тестов.
* Один класс, чтобы перехватить вывод в консоль при запуске теста.
* Ну и ещё один, чтобы rule them all.

А, и ещё тикет, потому что xUnit всё-таки теряет текст сообщения.

Про уровень извращений в самом коде даже не буду, мне хватило методов с 8-10 аргументами. Это как бы передовой фрёймворк, который .Net core team использует вместо стандартного msTest, эхх.

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


Может, вы используете google api не по назначению? Попробуйте просто отсылать им свои персональные данные, должно работать.
Отредактировано 18.07.2016 6:20 Sinix . Предыдущая версия . Еще …
Отредактировано 18.07.2016 6:18 Sinix . Предыдущая версия .
Re[2]: К вопросу о сортировке гномиков и качестве кода
От: consign  
Дата: 18.07.16 06:24
Оценка:
Здравствуйте, Sinix, Вы писали:

S>Да ладно. В любом проекте можно такое найти, стоит попробовать что-то такое, на что создатели не рассчитывали.


А, ну-ну. Значит, создатели не предусмотрели возможность, что их API вообще кто-то будет использовать.
Потратить уже почти 2 дня на то, чтобы разобраться, как правильно сделать долбаный логин — других вариантов объяснения не оставляет.

S>В общем теперь я даже почти готов полюбить nUnit. Он хоть и ужасен, но хотя бы работает, без религиозных закидонов.


Не знаю, что ужасного в nUnit — он просто работает. А xUnit — еще один хороший пример проекта, созданного упоротыми фанатиками. Мне хватило 1 дня и попыток сделать банальнейший setup/teardown, чтобы забить и забыть это как страшный сон.
Re[3]: К вопросу о сортировке гномиков и качестве кода
От: Sinix  
Дата: 18.07.16 06:46
Оценка: +1
Здравствуйте, consign, Вы писали:

S>>Да ладно. В любом проекте можно такое найти, стоит попробовать что-то такое, на что создатели не рассчитывали.

C>А, ну-ну. Значит, создатели не предусмотрели возможность, что их API вообще кто-то будет использовать.
Надо было всё-таки ставить, да?


C>Не знаю, что ужасного в nUnit — он просто работает.

nUnit корявый местами. Ассерты в стиле You.Should.Pass.Moar.Dots — фиг с ним. А вот порядок аргументов в AreEqual(expected, actual), который нарушается в 99% случаев и порождает абсолютно нечитаемые сообщения — фейл.


C>чтобы забить и забыть это как страшный сон.

А, да-да-да. У автора xUnit ещё аргументация такая прикольная. Что-то типа мы не умеем правильно писать setup, поэтому он и не нужен, ага.
Re: К вопросу о сортировке гномиков и качестве кода
От: sambl4 Россия  
Дата: 18.07.16 07:26
Оценка:
Здравствуйте, consign, Вы писали:

C>.NET библиотеки для Google API, в частности OAuth, Google Analytics и Google Search Console API — жутчайший кусок говна, ничего хуже я еще в жизни не видел. Всё делается через задницу, везде жутчайшие нагромождения бессмысленных и ненужных паттернов, разобраться, как делается простейшая задача — это надо днями ковыряться в мануалах, половина из которых к тому же содержит ошибки.


В Гугле банально JS API для карт не могут нормально написать, чё уж говорить-то.
Re: К вопросу о сортировке гномиков и качестве кода
От: smeeld  
Дата: 18.07.16 07:34
Оценка: 1 (1) +1 :))
Здравствуйте, consign, Вы писали:

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

ЗЫ в мире столько дебилизма и несправедливости, что у меня сомнения, что Бог на самом деле великий математик и программист, он скорее косячник и быдлокодер ещё тот.
Re[4]: К вопросу о сортировке гномиков и качестве кода
От: Codechanger Россия  
Дата: 18.07.16 07:54
Оценка:
Здравствуйте, Sinix, Вы писали:

C>>чтобы забить и забыть это как страшный сон.

S>А, да-да-да. У автора xUnit ещё аргументация такая прикольная. Что-то типа мы не умеем правильно писать setup, поэтому он и не нужен, ага.

Вот, кстати, раз пошла такая пьянка, накину-ка и я на вентилятор.

У меня жесточайшая боль, что xUnit не умеет в чтение csv, а mstest, соответственно, не умеет читать CSV в 64-битном режиме. Если у кого есть работающее решение второй проблемы, буду весьма благодарен. Что я имею в виду под чтением csv — DatasourceAttribute.
Re[4]: К вопросу о сортировке гномиков и качестве кода
От: consign  
Дата: 18.07.16 08:16
Оценка: +1
Здравствуйте, Sinix, Вы писали:

S>nUnit корявый местами. Ассерты в стиле You.Should.Pass.Moar.Dots — фиг с ним. А вот порядок аргументов в AreEqual(expected, actual), который нарушается в 99% случаев и порождает абсолютно нечитаемые сообщения — фейл.


А, есть такое дело. Но можно сделать свой враппер с нормальным порядком.
Re[2]: К вопросу о сортировке гномиков и качестве кода
От: chaotic-kotik  
Дата: 18.07.16 12:22
Оценка: -1 :))) :))
S>Самое главное-пройти собеседования, а на работе можешь лепить как хочешь и что хочешь, никому до этого дела не будет, но бабло получать будешь исправно.

Это точно не про гугл. Там есть ежегодный performance review, по результатам которого вполне реально можно вылететь с работы. За каждым там внимательно следят и изучают, платят дохрена, но ждут что ты принесешь во много раз больше чем в тебя вложено. Суть их кадровой политики в том, что они пытаются нанимать high-potential сотрудников и выращивать их в т.н. highperformers. Поэтому попасть к ним проще студентом (но и вылететь проще), а скажем в 30 лет нужно очень хорошо себя показать на собеседовании и при этом иметь экстраординарный карьерный путь, чтобы тебя взяли, т.к. они смотрят на тебя — 30-летнего сениора и думают, а чой-то он все еще сениор в своем зажопинске(подставить любой российский город) в свои 30-ть, был бы он highperformer-ом — уже был бы как минимум лидом в крупной компании, а может даже CEO/CTO в своей компании, публикаций интересных нет, значит науку не двигал, open-source серьезно тоже не пилил, значит отмазок нет. Как-то так там.
Re[3]: К вопросу о сортировке гномиков и качестве кода
От: consign  
Дата: 18.07.16 12:35
Оценка:
Здравствуйте, chaotic-kotik, Вы писали:

CK>Это точно не про гугл. Там есть ежегодный performance review


Тебе осталось только придумать объяснение, кто сделал этот говнософт.
Re: Яростно плюсую
От: rm822 Россия  
Дата: 18.07.16 12:40
Оценка:
Пришлось тут поработать с гугло-диском ну и попутно с этой их аутентификацией, авторизацией.
Большего говнища я в жизни не видел, код топором нарублен и в кучу свален
Re[4]: К вопросу о сортировке гномиков и качестве кода
От: chaotic-kotik  
Дата: 18.07.16 12:55
Оценка: -3 :)))
Здравствуйте, consign, Вы писали:

C>Тебе осталось только придумать объяснение, кто сделал этот говнософт.


Я думаю что этот говнософт (если это вообще говнософт и насколько вообще можно доверять тебе в вопросе навешивания подобных ярлыков) по быстрому захачили люди, очень далекие от C# и платформы .NET скорее всего вообще какие-нибудь джависты и скорее всего это тупой порт с джавы.
Судить о компании по куску говнокода для маргинальной платформы — странно. Посмотри исходники LevelDB, Guava или чего-нибудь подобного от них.
Re[5]: К вопросу о сортировке гномиков и качестве кода
От: consign  
Дата: 18.07.16 14:06
Оценка:
Здравствуйте, chaotic-kotik, Вы писали:

C>Я думаю что этот говнософт (если это вообще говнософт и насколько вообще можно доверять тебе в вопросе навешивания подобных ярлыков)


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

C>C# и платформы .NET скорее всего вообще какие-нибудь джависты и скорее всего это тупой порт с джавы.


Я видел тупые порты, они были на порядок лучше. Говнокод — это говнокод, независимо от языка.
Отредактировано 18.07.2016 14:11 consign . Предыдущая версия . Еще …
Отредактировано 18.07.2016 14:06 consign . Предыдущая версия .
Re[6]: К вопросу о сортировке гномиков и качестве кода
От: chaotic-kotik  
Дата: 18.07.16 14:37
Оценка:
Здравствуйте, consign, Вы писали:

C>Зато тебе точно нельзя доверять в таких вопросах, если ты рассуждаешь о вещах, о которых ничего не знаешь.


Я не рассуждаю об этих вещах. Я лишь сомневаюсь в твоих рассуждениях, основания у меня для этого есть, ибо ты никакой конкретики/кода не привел.
Re[7]: К вопросу о сортировке гномиков и качестве кода
От: consign  
Дата: 18.07.16 14:42
Оценка: +2
Здравствуйте, chaotic-kotik, Вы писали:

CK>Я не рассуждаю об этих вещах. Я лишь сомневаюсь в твоих рассуждениях, основания у меня для этого есть, ибо ты никакой конкретики/кода не привел.


А я еще больше сомневаюсь в твоих, ибо никакой конкретики/кода ты не привел, да и вообще его не видел.
Re[8]: К вопросу о сортировке гномиков и качестве кода
От: chaotic-kotik  
Дата: 18.07.16 15:21
Оценка:
Здравствуйте, consign, Вы писали:

C>А я еще больше сомневаюсь в твоих, ибо никакой конкретики/кода ты не привел, да и вообще его не видел.


consign — Я заявляю что Google OAuth, Analytics & Search — говно!
chaotic-kotik — Как насчет примеров кода?
consign — Ты сам должен показывать код и вообще!
Re[9]: К вопросу о сортировке гномиков и качестве кода
От: consign  
Дата: 18.07.16 15:34
Оценка:
Здравствуйте, chaotic-kotik, Вы писали:

CK>consign — Я заявляю что Google OAuth, Analytics & Search — говно!

CK>chaotic-kotik — Как насчет примеров кода?

consign — все данные — в интернете. Попробуй, в качестве эксперимента, просто сделать логин и получить список сайтов. Ты ведь программист, я надеюсь?
Re[3]: К вопросу о сортировке гномиков и качестве кода
От: bazis1 Канада  
Дата: 18.07.16 15:44
Оценка: 1 (1) :)
Здравствуйте, chaotic-kotik, Вы писали:

CK>Это точно не про гугл. Там есть ежегодный performance review, по результатам которого вполне реально можно вылететь с работы. За каждым там внимательно следят и изучают, платят дохрена, но ждут что ты принесешь во много раз больше чем в тебя вложено. Суть их кадровой политики в том, что они пытаются нанимать high-potential сотрудников и выращивать их в т.н. highperformers. Поэтому попасть к ним проще студентом (но и вылететь проще), а скажем в 30 лет нужно очень хорошо себя показать на собеседовании и при этом иметь экстраординарный карьерный путь, чтобы тебя взяли, т.к. они смотрят на тебя — 30-летнего сениора и думают, а чой-то он все еще сениор в своем зажопинске(подставить любой российский город) в свои 30-ть, был бы он highperformer-ом — уже был бы как минимум лидом в крупной компании, а может даже CEO/CTO в своей компании, публикаций интересных нет, значит науку не двигал, open-source серьезно тоже не пилил, значит отмазок нет. Как-то так там.

Это в теории. А на практике формула найма в больших компаниях — нанять талантливыж людей и платить им деньги, чтобы они сидели и теряли талант, но не достались конкурентам и ни в коем случае не создали свои фирмы. Рассказы, как в Гугл нанимают PhD за 100K евро, чтобы пилить CSS для сайтов, я слышу постоянно. Даже цитата есть известная на эту тему:

"I used to joke with my colleagues that Larry & Sergey go out on their yachts — tie them together, sit back on the same recliners you'll find on their jumbo jet, each on his own yacht/set of yachts, smoke cigars, and put up pictures of Googlers with little snippets like 'was a GM at multi-national telecomm company, got a Harvard MBA and is now answering Orkut tickets.' and then they would erupt in laughter and clink their cigars & Scotch together in celebration. This, of course, is highly unlikely given neither of them would ever smoke a cigar or drink Scotch. Remainder is plausible."


Performance Review — хз как в гугле, но в том же MS он ничего общего с реальностью не имел. Если менеджер тебя любит, то напишет тебе "неоценимое влияние на команду" даже если ты весь год тупо кофе людям приносил. И наоборот, если ты не понравился — всегда можно найти политкорректную отговорку про командный дух.
Re[4]: К вопросу о сортировке гномиков и качестве кода
От: chaotic-kotik  
Дата: 18.07.16 15:51
Оценка: :)
Здравствуйте, bazis1, Вы писали:

B>Это в теории. А на практике формула найма в больших компаниях — нанять талантливыж людей и платить им деньги, чтобы они сидели и теряли талант, но не достались конкурентам и ни в коем случае не создали свои фирмы. Рассказы, как в Гугл нанимают PhD за 100K евро, чтобы пилить CSS для сайтов, я слышу постоянно. Даже цитата есть известная на эту тему:

B>

"I used to joke with my colleagues that Larry & Sergey go out on their yachts — tie them together, sit back on the same recliners you'll find on their jumbo jet, each on his own yacht/set of yachts, smoke cigars, and put up pictures of Googlers with little snippets like 'was a GM at multi-national telecomm company, got a Harvard MBA and is now answering Orkut tickets.' and then they would erupt in laughter and clink their cigars & Scotch together in celebration. This, of course, is highly unlikely given neither of them would ever smoke a cigar or drink Scotch. Remainder is plausible."


Хз как там на самом деле. Я пересказал то что слышал от чувака, который в гугле работал рекруитером.
Re: К вопросу о сортировке гномиков и качестве кода
От: landerhigh Пират  
Дата: 18.07.16 15:54
Оценка: 3 (3) :))
Здравствуйте, consign, Вы писали:

C>.NET библиотеки для Google API, в частности OAuth, Google Analytics и Google Search Console API — жутчайший кусок говна, ничего хуже я еще в жизни не видел.


То же и про андроид. Куча способов сделать одно и тоже, половина не работает, из оставшейся половины — "рекомендуемый" способ работает только в пятницу 13-е. 100500 "deprecated" методов, при этом никто даже не почесался хотя бы ссылку поставить, чем оно deprecated. Camera API — лютый песец. Camera2 — вообще за гранью бобра и зла, а за код официальных демок нужно вообще в макдональдс отправлять. Пожизненно. Туалеты мыть.
Короче, все кагабычно
www.blinnov.com
Отредактировано 18.07.2016 15:57 landerhigh . Предыдущая версия .
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.