Здравствуйте, Dair, Вы писали:
D>У меня встали на раз-два вместе с Аптаной. Хотя таргет-платформой был Линукс,
D>где уже крутилась модель базы, с которой предстояло работать.
у меня тоже основная платформа линух, под который пишу, но пишу сидя то под виндой, то под маком. догадываюсь, что с рельсами делаю что-то не то или не так, но запросы к базе у меня несложные и мне напрямую работать проще, чем тащить непонятно какие зависимости по библиотекам. тем более, что сейчас переползаю с хрюши 32 на семерку 64. вдруг и там рельсы не встанут?
D> Я нигде не сказал, что С++ — лучший язык в мире. Возможность есть. Удобнее на питоне — пиши на питоне.
да у меня и выбора особого нет. на питоне занимаюсь быстрым прототипированием. расширяемость питона поражает. допустим, моя API Функция возвращает список. списка становится мало и в следующей версии вместо списка у меня словарь. но словаря тоже мало и наконец возвращается объект. и все это без потери совместимости со старым кодом. вот такое legacy. т.е. хочешь работать с возвращенным типом как со списком -- флаг тебе в руки. хочешь юзать его как словарь -- да без проблем. ну а если тебе нужны все-все-все фичи -- юзай это как объект.
это облегчает прототипрование, поскольку типы можно меняь прямо на ходу и старый код об этом даже не подозревает. я уже молчу про то, что на питоне элементарно (в несклько строк) пишется функция, принимающая строку с данными как аргумент или абстрактный объект, реализующий метод read(). просто невероятно удобно. например, нам нужно считать md5. мы передаем либо файловый объект, либо буфер с данными.
> Никто с пистолетом не заставляет писать на конкретном языке.
зависит от работодателя...
D> В питоне и руби меня доставало каждый раз писать рантаймовую проверку/преобразование типа,
D> потому как иначе оно всё падает в процессе, а не на этапе компиляции, как в C/C++/ObjC/Java.
есть же ведь статические верификаторы... кстати, рантаймовая проверка обходится, если наследовать все, что вам нужно от базового класса, где реализованы заглушки на все нужные вам методы, которые возвращают "не реализовано" и сигнализируют об ошибке.
D> Это я читаю как "обработка больших массивов данных". Задача интересная, но мне с ней сталкиваться не приходилось.
да, массивы данных, действительно, большие. 2TB — это микроскопический тестовый набор данных для _быстрой_ проверки не развалилось ли чего. допустим, прототип на питоне. даже с учетом оптимизирующего JIT компилятора на лаптопе эти 2TB обрабатываются очень долго хотя бы в силу того, что диск подключен как сетевой, а гигабитный езернет это очень узкий канал.
вот поэтому интерактивные отладчики на меня действуют как красная тряпка на быка
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.