Jan. 19th, 2005

И всё-то у нас было хорошо, и пять дней погрузки дорожной сети уже завершились, и тесты прошли, но вот выяснилось, что на изображение квадратика карты с пятью улицами требуется несколько секунд. Потому что все сегменты не ссортированы вместе, по географическому положению, а расшвыряны по 4-гигабайтному файлу в совершенно случайных местах. Потому что числа Мортона у них не похожи ну ничуть. Потому что не надо звать абстрактный метод, перегруженный в дочернем классе, из конструктора родительского. Суровый хакерский C++ просто ломался при попытке такое сотворить, а милая, послушная Java делает вызов на совершенно неинициализированном куске памяти.

И ведь научить этому нельзя. Грабли есть грабли, пока каждый сам не наступит, не поверит.

Кажется, заинтересованные лица уже положили заплатку в систему, пойду перезапускать.

Upd.: Это, естественно, общая схема поведения. Pattern. Как правило, бесполезно человека призвать, посадить и сказать ему "не делай X". Он кивнёт вдумчиво, конечно. Но проблема в том, что, делая это X, он не поймёт, что сделал именно то самое X, которое говорили не делать. В мозгу у него ход мысли при произведении этого действия никак не свяжется с описанием. А вот после того, как ему в его работе, уже сделанной, указать (а паче - если самому набрести, после долгих поисков) на место, где, фактически, крупно и красными буквами написано "а вот здесь мы делаем X" - выстроится цепочка: "когда я это писал, я думал то-то и то-то (вовсе не обязательно "думал" при этом означает "размышлял над поставленной задачей и над тем, как я её выполняю"), а получилось как всегда. Поэтому, когда я начинаю так думать, надо держать себя за фалды".

Так мы и устроены.
И всё-то у нас было хорошо, и пять дней погрузки дорожной сети уже завершились, и тесты прошли, но вот выяснилось, что на изображение квадратика карты с пятью улицами требуется несколько секунд. Потому что все сегменты не ссортированы вместе, по географическому положению, а расшвыряны по 4-гигабайтному файлу в совершенно случайных местах. Потому что числа Мортона у них не похожи ну ничуть. Потому что не надо звать абстрактный метод, перегруженный в дочернем классе, из конструктора родительского. Суровый хакерский C++ просто ломался при попытке такое сотворить, а милая, послушная Java делает вызов на совершенно неинициализированном куске памяти.

И ведь научить этому нельзя. Грабли есть грабли, пока каждый сам не наступит, не поверит.

Кажется, заинтересованные лица уже положили заплатку в систему, пойду перезапускать.

Upd.: Это, естественно, общая схема поведения. Pattern. Как правило, бесполезно человека призвать, посадить и сказать ему "не делай X". Он кивнёт вдумчиво, конечно. Но проблема в том, что, делая это X, он не поймёт, что сделал именно то самое X, которое говорили не делать. В мозгу у него ход мысли при произведении этого действия никак не свяжется с описанием. А вот после того, как ему в его работе, уже сделанной, указать (а паче - если самому набрести, после долгих поисков) на место, где, фактически, крупно и красными буквами написано "а вот здесь мы делаем X" - выстроится цепочка: "когда я это писал, я думал то-то и то-то (вовсе не обязательно "думал" при этом означает "размышлял над поставленной задачей и над тем, как я её выполняю"), а получилось как всегда. Поэтому, когда я начинаю так думать, надо держать себя за фалды".

Так мы и устроены.

December 2018

S M T W T F S
      1
2345678
9101112131415
161718192021 22
23242526272829
3031     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 15th, 2025 06:21 pm
Powered by Dreamwidth Studios