Прекращаем писать код
От: Курилка Россия http://kirya.narod.ru/
Дата: 08.10.10 20:53
Оценка: 93 (10) :)))
Хочется поделиться, на мой взгляд, занимательным и небезынтересным докладом Андрея Аксёнова(автора sphinx)) — Прекращаем писать код
Предупреждение: присутствует ненормативная лексика
P.S. Вроде это самый подходящий форум для данной ссылки.
видео
Re: Прекращаем писать код
От: Eye of Hell Россия eyeofhell.habr.ru
Дата: 09.10.10 10:09
Оценка:
О да... Смотрел со слезами на глазах. Мужик хмуро может.
Re: Прекращаем писать код
От: Spiceman  
Дата: 09.10.10 10:25
Оценка: 1 (1) +2 -1
Здравствуйте, Курилка, Вы писали:

К>Хочется поделиться, на мой взгляд, занимательным и небезынтересным докладом


Честно не понял, на кого ориентирован этот доклад. На разработчиков каких-то сложных алгоритмов?

С некоторыми вещами не согласен. Например, не могу я взять и выкинуть код. Вообще не могу взять и просто так сделать рефакторинг. Допустим, я на это потрачу 1 день. Зато мои изменения затронут 1000 тесткейсов в полсотне бизнес-процессов. Десяткам тестировщиков придется работать две недели над регрессионным тестированием, чтобы выяснить, что мои изменения ничего не сломали. Плюс неделя потребуется для нагрузочного тестирования, чтобы понять, что я не замедлил критически важный БП. Плюс что-то может остаться незамеченным и выстрелить в промышленной среде и придется ночью в выходной срочно править баги. Нет уж!

Видимо, Аксёнов варился в несколько другой среде.
Re: Прекращаем писать код
От: avishnyakov  
Дата: 09.10.10 11:44
Оценка: 11 (3) +4 -1 :)
Здравствуйте, Курилка, Вы писали:

К>Хочется поделиться, на мой взгляд, занимательным и небезынтересным докладом Андрея Аксёнова(автора sphinx)) — Прекращаем писать код

К>Предупреждение: присутствует ненормативная лексика
К>P.S. Вроде это самый подходящий форум для данной ссылки.

Сначала понравилось, но ближе к концу пошло какое то отталкивание — ненормативная лексика, "трололо" и прочие приколы перестали вставлять.

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

Все сугубо имхо
Re: Прекращаем писать код
От: D. Mon Великобритания http://thedeemon.livejournal.com
Дата: 09.10.10 14:26
Оценка: +2
Доклад в целом одобряю, но раздражает, что во многих слайдах использовано слово, смысл которого автору неизвестен. Джатаками изначально назывались поучительные истории о прошлых жизнях Будды. Гайдук, автор популярных растаманских сказок, часто использовал его у себя, но хотя бы сравнительно уместно — для обозначения историй с персонажами. Здесь же оно совсем не подходит. Это как если бы кто-нибудь короткие истории-рассказы называл бы не story, а history.
Треш
От: minorlogic Украина  
Дата: 09.10.10 19:53
Оценка: :)
Треш, не знаю зачем сюда запостили ?
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re: Прекращаем писать код
От: alexeiz  
Дата: 09.10.10 20:35
Оценка: +2
Здравствуйте, Курилка, Вы писали:

К>Хочется поделиться, на мой взгляд, занимательным и небезынтересным докладом Андрея Аксёнова(автора sphinx)) — Прекращаем писать код

К>Предупреждение: присутствует ненормативная лексика
К>P.S. Вроде это самый подходящий форум для данной ссылки.

Автор гнёт пальцы. Принебнежительно относится к слушателям. А сам рассказывает прописные истины. Substance'а нет. Решил посмотреть, что за код он в своём сфинксе пишет. Особо не впечатляет, т.е. совсем не впечатляет: http://code.google.com/p/sphinxsearch/source/browse/trunk/src/sphinxexcerpt.cpp
Re[2]: Прекращаем писать код
От: minorlogic Украина  
Дата: 09.10.10 22:03
Оценка: 1 (1) +1 -1 :))
Здравствуйте, alexeiz, Вы писали:

A>Автор гнёт пальцы. Принебнежительно относится к слушателям. А сам рассказывает прописные истины.


Да какие там истины?

"Не изобретайте велосипед если не надо, изобретайте если надо"
"Оптимизируйте если надо, не оптимизируйте если надо"
"делайте ... если надо, не делайте если не надо"
И это еще и вульгарным тоном хамствой и тупизной
в треш ...
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[2]: Прекращаем писать код
От: Silver_s Ниоткуда  
Дата: 10.10.10 09:57
Оценка:
Здравствуйте, Spiceman, Вы писали:

S>С некоторыми вещами не согласен. Например, не могу я взять и выкинуть код. Вообще не могу взять и просто так сделать рефакторинг. Допустим, я на это потрачу 1 день. Зато мои изменения затронут 1000 тесткейсов в полсотне бизнес-процессов. Десяткам тестировщиков придется работать две недели над регрессионным тестированием, чтобы выяснить, что мои изменения ничего не сломали. Плюс неделя потребуется для нагрузочного тестирования, чтобы понять, что я не замедлил критически важный БП. Плюс что-то может остаться незамеченным и выстрелить в промышленной среде и придется ночью в выходной срочно править баги. Нет уж!


Тут замкнутый круг какой-то. Из-за того что невозможно рефакторить и улучшать код, он будет более корявый и баговый. А поскольку код будет корявый и баговый его нельзя изменять, улучшать, потому что после каждого изменения 1000 тестировщиков будут ... потому что код корявый
Re[3]: Прекращаем писать код
От: Spiceman  
Дата: 10.10.10 19:45
Оценка:
Здравствуйте, Silver_s, Вы писали:

S>>С некоторыми вещами не согласен. Например, не могу я взять и выкинуть код. Вообще не могу взять и просто так сделать рефакторинг.


S_> Тут замкнутый круг какой-то. Из-за того что невозможно рефакторить и улучшать код, он будет более корявый и баговый. А поскольку код будет корявый и баговый его нельзя изменять, улучшать, потому что после каждого изменения 1000 тестировщиков будут ... потому что код корявый


Не, рефакторить надо. Но не так как говорит Аксёнов — не бойтесь выкидывать код. Чтобы сделать рефакторинг, нужно его сначала согласовать с другими участниками проекта, желательно оформить в виде задачи и согласовать трудоемкость. Ну и понятно, что если рефакторинг в простой и стопудово ничего не ломает, то можно и втихую сделать.
Re[2]: Прекращаем писать код
От: CreatorCray  
Дата: 11.10.10 10:26
Оценка: -1
Здравствуйте, avishnyakov, Вы писали:

A>С другой — ну вышел гиг, небрежно одетый, постоянно волосы поправляет (ля, ну собери ты их в самом деле!), матерится и несет бред про трололо — в топку такие конфы и видеокасты. Шаришь в поиске и алгоритмах — ну класс, перед аудиторией, в том числе массовой, несколько иные скиллы нужны.

Вам таки шашечки или ехать?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Прекращаем писать код
От: CreatorCray  
Дата: 11.10.10 10:26
Оценка: +1 -1
Здравствуйте, alexeiz, Вы писали:

A>Автор гнёт пальцы. Принебнежительно относится к слушателям.

Отнюдь. По крайней мере послушать было интересно и не стало скучно в процессе.

A>Решил посмотреть, что за код он в своём сфинксе пишет. Особо не впечатляет, т.е. совсем не впечатляет: http://code.google.com/p/sphinxsearch/source/browse/trunk/src/sphinxexcerpt.cpp

Код как код.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Прекращаем писать код
От: avishnyakov  
Дата: 11.10.10 10:30
Оценка: :)
Здравствуйте, CreatorCray, Вы писали:

CC>Здравствуйте, avishnyakov, Вы писали:


A>>С другой — ну вышел гиг, небрежно одетый, постоянно волосы поправляет (ля, ну собери ты их в самом деле!), матерится и несет бред про трололо — в топку такие конфы и видеокасты. Шаришь в поиске и алгоритмах — ну класс, перед аудиторией, в том числе массовой, несколько иные скиллы нужны.

CC>Вам таки шашечки или ехать?

Я не фанат выбирать из двух крайностей, ни одна из которых меня не устраивает.
В данном случае эффективного фидбека для меня нет — ни ехать, ни шашечки.
Re[4]: Прекращаем писать код
От: Ziaw Россия  
Дата: 11.10.10 11:16
Оценка: +3
Здравствуйте, Spiceman, Вы писали:

S>Не, рефакторить надо. Но не так как говорит Аксёнов — не бойтесь выкидывать код. Чтобы сделать рефакторинг, нужно его сначала согласовать с другими участниками проекта, желательно оформить в виде задачи и согласовать трудоемкость. Ну и понятно, что если рефакторинг в простой и стопудово ничего не ломает, то можно и втихую сделать.


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

Обычно говорят так:

не могу я взять и выкинуть код. Вообще не могу взять и просто так сделать рефакторинг. Допустим, я на это потрачу 1 день. Зато мои изменения затронут 1000 тесткейсов в полсотне бизнес-процессов. Десяткам тестировщиков придется работать две недели над регрессионным тестированием, чтобы выяснить, что мои изменения ничего не сломали. Плюс неделя потребуется для нагрузочного тестирования, чтобы понять, что я не замедлил критически важный БП. Плюс что-то может остаться незамеченным и выстрелить в промышленной среде и придется ночью в выходной срочно править баги. Нет уж!

Re[2]: Прекращаем писать код
От: MasterZiv СССР  
Дата: 11.10.10 11:18
Оценка:
On 09.10.2010 14:25, Spiceman wrote:

> С некоторыми вещами не согласен. Например, не могу я взять и выкинуть код.

> Вообще не могу взять и просто так сделать рефакторинг. Допустим, я на это
> потрачу 1 день. Зато мои изменения затронут 1000 тесткейсов в полсотне
> бизнес-процессов. Десяткам тестировщиков придется работать две недели над
> регрессионным тестированием, чтобы выяснить, что мои изменения ничего не
> сломали. Плюс неделя потребуется для нагрузочного тестирования, чтобы понять,
> что я не замедлил критически важный БП. Плюс что-то может остаться незамеченным
> и выстрелить в промышленной среде и придется ночью в выходной срочно править
> баги. Нет уж!

Вот про это он и говорил. НЕ БОЙСЯ!
Posted via RSDN NNTP Server 2.1 beta
Re[3]: Прекращаем писать код
От: Aikin Беларусь kavaleu.ru
Дата: 11.10.10 12:05
Оценка:
Здравствуйте, CreatorCray, Вы писали:

A>>Решил посмотреть, что за код он в своём сфинксе пишет. Особо не впечатляет, т.е. совсем не впечатляет: http://code.google.com/p/sphinxsearch/source/browse/trunk/src/sphinxexcerpt.cpp

CC>Код как код.
Я вот тоже не поянл что там в коде-то не так? Но списал на незнание Cpp.

СУВ, Aikin
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Re[4]: Прекращаем писать код
От: blackhearted Украина  
Дата: 11.10.10 13:05
Оценка:
Здравствуйте, Aikin, Вы писали:

A>Здравствуйте, CreatorCray, Вы писали:


A>>>Решил посмотреть, что за код он в своём сфинксе пишет. Особо не впечатляет, т.е. совсем не впечатляет: http://code.google.com/p/sphinxsearch/source/browse/trunk/src/sphinxexcerpt.cpp

CC>>Код как код.
A>Я вот тоже не поянл что там в коде-то не так? Но списал на незнание Cpp.

A>СУВ, Aikin


Ну мне как-то странно показалось наличие интерфейсов с открытыми данными.
Или он другое имел в виду?

class ISnippetsQword: public ISphQword
{
public:
        CSphString *                                                    m_sBuffer;
        CSphVector<ExcerptGen_c::Token_t> *             m_dTokens;
        ISphTokenizer *                                                 m_pTokenizer;
//...
};


Да и вообще какой-то , ИМХО, мрачноватый код.
Re[5]: Прекращаем писать код
От: CreatorCray  
Дата: 11.10.10 18:53
Оценка: +3
Здравствуйте, blackhearted, Вы писали:

B>Ну мне как-то странно показалось наличие интерфейсов с открытыми данными.

B>
B>class ISnippetsQword: public ISphQword
B>{
B>public:
B>        CSphString *                                                    m_sBuffer;
B>        CSphVector<ExcerptGen_c::Token_t> *             m_dTokens;
B>        ISphTokenizer *                                                 m_pTokenizer;
B>//...
B>};
B>

Это минус, да.

B>Да и вообще какой-то , ИМХО, мрачноватый код.

Я видимо слишком много видел откровенно плохого кода, поэтому на их фоне этот при беглом просмотре отвращения не вызывает.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Прекращаем писать код
От: -_*  
Дата: 11.10.10 19:36
Оценка:
Здравствуйте, Spiceman, Вы писали:

S>С некоторыми вещами не согласен. Например, не могу я взять и выкинуть код.


Выбрасывать код — значит переписывать с нуля. За такое нужно устраивать публичную порку.

>Вообще не могу взять и просто так сделать рефакторинг. Допустим, я на это потрачу 1 день. Зато мои изменения затронут 1000 тесткейсов в полсотне бизнес-процессов. Десяткам тестировщиков придется работать две недели над регрессионным тестированием, чтобы выяснить, что мои изменения ничего не сломали.


А если тебе надо будет фичу докинуть или баг пофиксить, то изменения не затронут ничего ?

>Плюс неделя потребуется для нагрузочного тестирования, чтобы понять, что я не замедлил критически важный БП. Плюс что-то может остаться незамеченным и выстрелить в промышленной среде и придется ночью в выходной срочно править баги. Нет уж!


Рефакторинг — самая безопасная из техник внесения изменений.

S>Видимо, Аксёнов варился в несколько другой среде.


Нет никакой "другой среды", см. выше.
Материал из Википедии — свободной энциклопедии, -_*
Re[4]: Прекращаем писать код
От: -_*  
Дата: 11.10.10 19:42
Оценка:
Здравствуйте, Spiceman, Вы писали:

S>Не, рефакторить надо. Но не так как говорит Аксёнов — не бойтесь выкидывать код. Чтобы сделать рефакторинг, нужно его сначала согласовать с другими участниками проекта, желательно оформить в виде задачи и согласовать трудоемкость. Ну и понятно, что если рефакторинг в простой и стопудово ничего не ломает, то можно и втихую сделать.


Рефакторинг всегда делается малюсенькими шажочками. Сначала, например, можно переимновать классы, функции и тд. Бывает уже этого достаточно, что бы понять что происходит. Дальше можно делить методы на части, тулом каким нибудь. Вот структуру, АПИ рефакторить это уже опасные изменения и даже юнит-тестов может не хватить.
Материал из Википедии — свободной энциклопедии, -_*
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.