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

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

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

[identity profile] meharher.livejournal.com 2015-01-11 10:50 am (UTC)(link)
Python - возможно.
Но, возможно, именно R и есть как раз подходящий вариант.
Но, боюсь, что ни R, ни, тем более, Python не подходят под определение "освоить за 2-3 дня".

[identity profile] phlya.livejournal.com 2015-01-11 10:54 am (UTC)(link)
Может и R, зависит от задач.
На мой личный вкус Python освоить проще (с ним я справился, а R несколько раз начинал мучить, и так и не могу сказать, что освоил...). R очень хорош чисто для статистики, без программирования. Но если надо делать что-то более сложное, то питон становится резко удобнее, на мой взгляд.
Ну, освоить по-настоящему за 2-3 дня никакой язык нельзя, но на питоне можно писать уже после 1 дня (может, костыльно, но можно).
Edited 2015-01-11 10:55 (UTC)
arech: (Default)

[personal profile] arech 2015-01-11 10:55 am (UTC)(link)
R очень медленный и очень специфический. И именно программировать на нём - настоящий pain.

[identity profile] meharher.livejournal.com 2015-01-11 11:11 am (UTC)(link)
R векторизован и потому быстр.
Вопрос тут другой: можно ли свести задачу к вызовам фунций из библиотек с минимумом программирования. Для многих задач это так. Морфологические признаки ежей - явно подходят.
В данном случае - не знаю, мне трудно судить.

arech: (Default)

[personal profile] arech 2015-01-11 11:34 am (UTC)(link)
Векторизация давно уже подключается практически к любым языкам, поэтому это не аргумент.
Тормоза там в управлении памятью, циклами и прочих чисто программерских вещах, которые норовят вылезти в любых минимально сложных алгоритмах.
Надо понимать, что R никогда не делался как нормальный ЯП. Это язык для стат.расчётов, почти полностью наследованный из древнючего S...
Одно дело обсчитывать таблички, а другое - реализовывать эволюционные (или вообще любые минимально сложные) алгоритмы... R тут совсем не инструмент...

[identity profile] maz-d.livejournal.com 2015-01-11 03:27 pm (UTC)(link)
/Но, боюсь, что ни R, ни, тем более, Python не подходят под определение "освоить за 2-3 дня"./

полностью освоить за 2-3 дня ни один язык не получится. Но у питона все же уровень вхождения довольно низкий

[identity profile] meharher.livejournal.com 2015-01-11 03:35 pm (UTC)(link)
На Питоне я работал год (после, скажем, примерно 20 лет на всяких языках, включая C/C++/C#/Java etc. , на R последние 6 недель).
Питон труднее шел: было легче читать и поддерживать, но труднее найти нужную конструкцию.
В R, правда, труднее найти нужную биб. функцию :)
Все относительно.

[identity profile] maz-d.livejournal.com 2015-01-11 04:07 pm (UTC)(link)
мне кажется ключевое тут

/после, скажем, примерно 20 лет на всяких языках, включая C/C++/C#/Java etc./

у меня такого бэкграунда нет, и мне кажется человеку без такого бэкграунда питон освоить проще чем ту же джаву особенно если ставить цель "освоить за 2-3 дня". Конечно скорость - узкое место. Но думается мне человеку нужна не только скорость, иначе бы все писали на ассемблере =)

[identity profile] meharher.livejournal.com 2015-01-11 04:35 pm (UTC)(link)
Я ж к тому, что питон меня напрягал ... :)

[identity profile] maz-d.livejournal.com 2015-01-11 04:44 pm (UTC)(link)
так я ж и не говорю что он вас не напрягал =)

[identity profile] chebudzee.livejournal.com 2015-01-29 01:22 pm (UTC)(link)
С каких пор освоить питон проще чем джаву? Джава куда проще синтаксически и читабельнее. Да и быстрее, чего уж греха таить. Питон хорош... да не для чего он не хорош. Всегда есть варианты лучше и проще. Тот же руби, если интересует именно простота в освоении. У питона синтаксис сильно грязный, читать код на нём сплошное мучение.

[identity profile] phlya.livejournal.com 2015-02-01 08:42 am (UTC)(link)
У питона синтаксис сильно грязный, читать код на нём сплошное мучение
Хаха.