?

Log in

Это самое, ну то, которое это! - A cure for !being an axe-wielding homicidal maniac [entries|archive|friends|userinfo]
A cure for !being an axe-wielding homicidal maniac

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Это самое, ну то, которое это! [дек. 22, 2013|02:13 pm]
A cure for !being an axe-wielding homicidal maniac
Одно время я носился с идеей собрать коллекцию небольших задач, которые имеют не очевидное, но элегантное решение. Этот список задумывался, как ответ на вопрос — «Что же такое программирование?». Вот несколько позиций, если получится вспомнить, допишу еще:
  • поиск пути в лабиринте волновым алгоритмом;

  • вычисление арифметического выражения через обратную польскую нотацию;

  • алгоритм согласования секретного ключа Диффи-Хелмана;

  • арифметическое кодирование;

  • hashlife;

  • bitcoin.

Было нелегко объяснить, что же делает эти задачи особенными. И только недавно меня осенило!

М. А. Т. Е. М. А. Т. И. К. А.

Спасибо Сoursera, Andrew Ng и его курсу Machine Learning, а также моей новой коллекции книг по Computer Vision.

Вобще то это засада, господа! Получается, что мой личный ответ на вопрос, что такое программирование — это «математика». Реальность же такова, что подавляющее большинство коммерческого программирования совсем про другое, а я до сих пор шагал по пути кодера. Ну и что теперь делать?

Может быть plakhov знает?
СсылкаОтветить

Comments:
[User Picture]From: alll
2013-12-22 02:00 pm
"Программирование" - это как "электричество". Слово есть, а жопы нет, если перефразировать Раневскую.
(Ответить) (Thread)
[User Picture]From: mejedi
2013-12-23 02:33 pm
С математикой та же фигня.
(Ответить) (Parent) (Thread)
[User Picture]From: alll
2013-12-23 04:14 pm
Кстати да. :)
(Ответить) (Parent) (Thread)
[User Picture]From: kodt_rsdn
2013-12-23 06:44 pm
Есть и жопа, и суслик, и ложка, и электричество. Понимания нет, вот в чём беда!!!
(Ответить) (Parent) (Thread)
[User Picture]From: alll
2013-12-23 07:31 pm
"Электричества" нет. Как нет "ложить" и "покласть".
(Ответить) (Parent) (Thread)
[User Picture]From: kodt_rsdn
2013-12-23 06:52 pm
Программирование - это дзен.
Сперва ты кодишь-кодишь, кодишь-кодишь... потом плюёшь, изучаешь наконец математику, просветлённо тычешь пальцем в небо... и кодишь, кодишь, кодишь!

Паттерны математики (вся эта о-нотация, эвона-категории, обана-алгоритмы), паттерны проектирования (гамма сотоварищи), и паттерны кодинга (кэш-френдлинесс, оптимизация-шмоптимизация, роллинг-анроллинг, битность-байтность) - взаимодополнительны.
(Ответить) (Thread)
[User Picture]From: mejedi
2013-12-23 08:51 pm
Ясен пень, что надо не только баранку крутить и педаль жать, но еще и ПДД немного изучить не помешает. ИМХО все перечисленное — вполне себе составляющие единого скилл-сета с названием «разработчег». Я про другую математику.

Меня до крайности заинтересовал феномен «программа, которая хрен поймешь чего делает, пока не позовешь математика». Взять хотя бы DCT в джипеге. Программист скажет — тут происходит суммирование по всем элементам изображения с какими-то мутными коэффициентами; какая-то непонятная и дико неэффективная хрень :)
(Ответить) (Parent) (Thread)