macroevolution: (anomalocaris)
macroevolution ([personal profile] macroevolution) wrote2015-01-11 02:41 pm

Посоветуйте язык программирования

Я всю жизнь программировал только на бейсике, на разных его версиях.  Так получилось. Когда писал кандидатскую, набралось очень много таблиц с данными (это были морфологические признаки морских ежей), и я задолбался обсчитывать их на калькуляторе. Поэтому быстренько освоил бейсик (тогда персональные компьютеры IBM только начали появляться, и к ним прилагался язык GW-Basic). Освоил - и сразу почувствовал себя человеком. С тех пор не переучивался, сейчас пишу все свои программки на VBA в MS Access. То есть в программировании я дилетант, но опытный. Программированием пользуюсь сейчас для имитационного моделирования эволюционных процессов в популяциях. Подумываю об одной новой модели, но понимаю, что на VBA она будет работать невыносимо медленно. Насколько я понимаю, программа, написанная почти на любом другом языке, компилируемом, будет работать в разы быстрее. Вопрос такой: какой из этих языков мне будет быстрее и проще всего освоить? Времени, сил и желания преодолевать трудности и вникать в программистские проблемы - не имеется. Мне бы этот язык просто скачать (можно купить, если не слишком дорого), освоить за пару-тройку дней - и вперед. Т.е. главное, чтобы он был максимально простым в освоении для того, кто знает бейсик, без всяких интеллектуальных "понтов", но работал хотя бы раз в 10 быстрее.

[identity profile] provocateur-b.livejournal.com 2015-01-11 03:51 pm (UTC)(link)
Честное слово, я не математик. Если матрицы перемножаются вручную, то и на js это можно сделать.

[identity profile] photo pro (from livejournal.com) 2015-01-11 03:59 pm (UTC)(link)
дело в том что под приличные языки рассчитанные на работу с математикой есть бинарные библиотеки несравнимо быстрее работающие нежели все писать вручную.

жскрипт - явно не тот язык который придумывался для мат-рассчетов и обширных матриц данных обьемом в гигабайты.
А иначе там современному компюьтеру и тормозить нечем при рассчетах как уверяет автор, ну разве что на файловых операциях :-)))

Я свой i-7 ни одним ныне существующим приложением не могу прилично загрузить кроме дебайеризации (матричного вычисления) сотнемегапиксельных матриц

[identity profile] provocateur-b.livejournal.com 2015-01-11 04:07 pm (UTC)(link)
Конечно, если вы из тех делфи-программистов, которые встретив задачу идут на форум искать "библиотеку", то действительно ничего не получится. Js на самом деле не самый быстрый язык, но компромисс скорости и уровня вхождения вполне позволяет мне его рекомендовать. (Я бы писал на gcс/dev-cpp или php в зависимости от задачи и частоты использования программы). Поскольку задачу я не знаю, ничего не известно об объеме данных, то получилась такая рекомендация. Js работает почти везде и всегда, требует минимум усилий для начального обучения, имеет кучу примеров в интернете, постоянно расширяется обрастая новыми возможностями.

(Загрузить ваш процессор можно каким-нибудь видеоредактором типа AE, там эффектов много)

[identity profile] photo pro (from livejournal.com) 2015-01-11 04:27 pm (UTC)(link)
>> Конечно, если вы из тех делфи-программистов, которые встретив задачу идут на форум искать "библиотеку",
Я вообще не программист - я биолог-систематик.
Но при этом умудрился шесть лет проработать на факультете прикладной математики и кибернетики. именно по причине склонности к системному подходу к алгоритмизации.

>> Загрузить ваш процессор можно каким-нибудь видеоредактором типа AE, там эффектов много
Вы ошибаетесь. У меня на нынешней работе сосед-видеодизайнер как раз просчитывает свои видеоэффекты в 3D и АЕ. Так вот моя нагрузка на процессор матричной дебаеризации фотографий несравнимо (на порядки выше) чем при пересчете его видео и памяти оно тоже жрет просто страшно.


Edited 2015-01-11 16:28 (UTC)

[identity profile] provocateur-b.livejournal.com 2015-01-11 04:31 pm (UTC)(link)
>> Я вообще не программист - я биолог-систематик. Но при этом умудрился шесть лет проработать на факультете прикладной математики и кибернетики. именно по причине склонности к системному подходу к алгоритмизации.

Тогда помогите коллеге, но тоже, кажется с биологией связан.

>> Вы ошибаетесь. У меня на нынешней работе сосед-видеодизайнер как раз просчитывает свои видеоэффекты в 3D и АЕ. Так вот моя нагрузка на процессор матричной дебаеризации фотографий несравнимо (на порядки выше) чем при пересчете его видео.

Вы ошибаетесь. У меня на прошлой работе были проекты, которые нагружали все что угодно, даже бывали случаи, когда приходилось делить ролик на части и рендерить на разных компьютерах. Видится мне, что нагрузка очень сильно зависит от разршения исходного изображения, разршения готового изображения, длительности и количества и "тяжести" эффектов.

[identity profile] photo pro (from livejournal.com) 2015-01-11 04:48 pm (UTC)(link)
>> Тогда помогите коллеге, но тоже, кажется с биологией связан.

Я ему сразу (выше) отписал что проблемы скорее не в скорости языка а в алгоритмике обработки и одной оптимизацией алгоритмов или потоков данных можно ускорить работу в десятки раз.
так как я не знаю как он считает какие данные - посоветовать конкретного ничего не могу.
Из того что я могу догадаться (лишь догадаться как биолог) что ему требуется - рассчет больших массивов многомерных матриц, где мерность может быть и пятая и 25тая (я без понятия что он считает) - то есть нужен колоссальный обьем быстрой памяти
Предлагать такие вещи считать на яваскрипте мне видится даже и не смешным.

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

>> .., даже бывали случаи, когда приходилось делить ролик на части
ой, удивили %))) аппупеть )))
Вообще то это стандартный принцип работы с видео - разложений ролика на части.
Вы только самое главное забыли своей головой подумать: что ваше видео - это множество кадров, десятки, сотни и тысячи. А я работаю с одним, за практически то же самое время - то есть в сотни и тысячи раз медленнее на том же процессоре потому что обьемы рассчетов и их точность - несопоставимо выше ))))

[identity profile] provocateur-b.livejournal.com 2015-01-11 04:53 pm (UTC)(link)
Вы действительно ужасно крутой и у вас потрясающей процессор. Спасибо, что вы есть.

[identity profile] photo pro (from livejournal.com) 2015-01-11 06:05 pm (UTC)(link)
Нет, дебил, у меня просто 80 мп RAW из фотоаппарата, а при обработке кадры могут быть до 270 мегапиксел многослойными 16бит.
сравни со своим вшивым 2мп hd-видеосигналом.

Это, дебилушка, не крутость, а просто профессия.
так же и у автора - если он считает эволюционные модели, то ему нужно просчитывать миллионы поколений перемножений многомерных матриц. И здесь вопрос не в скорости единичных вычислений, а в количестве объема информации и соотвественно быстрому доступу к нему.

Яваскрипт для вебстранички здесь конечно очень поможет рассчетам )))))))) (я подозреваю что обьем данных просто даже не влезет в оперативку стандартного 64-бит интела без свопирования и ацких тормозов)

[identity profile] provocateur-b.livejournal.com 2015-01-11 06:11 pm (UTC)(link)
Да 270 МП это целых шесть секунд HD-видео. Я же говорю - сильный процессор. И не крутость вовсе, а профессия. Я вас понял, не стоит так страдать.

[identity profile] photo pro (from livejournal.com) 2015-01-11 06:31 pm (UTC)(link)
>> Да 270 МП это целых шесть секунд HD-видео.
6 сек видео - 150кадров, а не один. да и те кастрированные и не с такой глубиной цветности точностью. Уже разница минимум в 150-500 раз по обьему данных на кадр.
а 500 раз - это разница между 1 секундой 9 минутами на обработку единицы рассчета. Не чувствуешь? Математику в школе не учил? Програмист сраный. %))))

Дебил конченный, ты еще и о видео берешься рассуждать не понимая вообще как устроен видеосигнал.
Так вот, дебил, в твоем HD видео вообще нет однопиксельной информации иначе бы телящики захлебнулись бы от потока данных - там кластеры яркости и цвета по 4 или по 16 пиксел (навскидку не помню), нет и 16 бит цвета на канал, да и каналов не три. так что в реальности HD-видеокадр дай бог полмегапиксела реальной информации в 8бит содержит на все каналы суммарно