Pull to refresh

Comments 62

Нет, спасибо.
И не будем устраивать холивор, ОК? :)
UFO just landed and posted this here
Ничего сложного с питоном нет. Используйте 2.7.
> Java программисты дорого стоят
Так же как и ruby и python.
Профессиональные разработчики стоят дорого.
Хорошие рубисты тоже стоят не дешево
Понимаю, когда для стартапа выбирают сегмент рынка, или просят посоветовать бизнес модель. Пора бы мне уже привыкнуть, что когда люди говорят стартап, они имеют ввиду сайт.
Допустим, некто Х хочет с нуля набрать команду и начать разрабатывать новый проект. Какая сейчас самая модная технология?
Основные требования — скорость и удобство разработки (что ожидаемо) и хорошая потенциальная масштабируемость (если проект выстрелит — ожидается высокая нагрузка)

Что предпочесть?
PHP и ASP.NET по разным причинам не рассматриваются.
На самом деле, интереснее всего даже не ответ а ссылки на какие-нибудь сравнительные статьи
Модно нынче erlang + haskell (или хотя бы ocaml) — все там хорошо и с маштабируемостью и с разработкой…

Но вы за моду то платить готовы?
Собрать сейчас команду сильных рубистов ой как дорого будет стоить… Особенно если в Калифорнии или в Москве с Питером. Да и то может оказаться, что даже если предлагать сильно больше рынка (которые сейчас как никогда высок) — то нужных людей просто не будет.

Насколько я понимаю, сейчас с точки зрения инвестров проекты на Ruby в случае отсутвия команды — это приличные такие дополнительные риски…

Безусловно. Только один нюанс — всегда когда я слышал от людей о том что они очень быстро перешли на эрланг, и что-то на нем быстро написали что работат в продакшене — это были люди с 10-15+ лет опыта работы. И собственно, у меня есть уверенность — что они тоже самое бы сказали практически о любом современноя языке программирования. Разница была бы только в том — понравилось им или нет.
Нет, не пишется за 20 минут. Потому, что отсутствует развитое сообщество и обширный набор библиотек. А с базами данных (которые согласно erlang@c.j.r не нужны для приложений сегодня) работать так нормально и не умеет.
Я уверен, что любой из тех, кто в курсе что такое haskell поймет, что это куда более рискованный риск нежели руби.
Я мой взгляд сравнимый или даже меньше — все же по рубистам уже прошлись частой гребенкой, а хаскель, как и эрланг — все же имеет «мифическую» притягательность :)

Но я не имеел ввиду что модная связка эрланг + хаскель — менее рискова чем руби к примеру. Я просто говорил — что модность рисково.

Т.е. писать прототип на чем-то знакомым, пускай даже не столь удобным и подходящим — и потом переписывать (переобучая команду) — во много ОК сейчас, чем сразу брать модные технологии и пытаться найти команду под них.

Но это так, абстракции все… просто еще один пункт о котором стоит подумать… все от проекта зависит.

А вам не кажется что стек технологий зависит от ТЗ и необходимого функционала стартапа?
Моя задача сейчас — собрать доводы за и против каждого из вариантов. Просто по моим представлениям это скорее религиозный выбор. Интересно, правда ли это.
Как я отметил, главное — масштабируемость для хайлоада.

Мне не кажется что стек зависит от ТЗ:) Разве есть задачи которые, к примеру, можно решить на Руби, но нельзя на Питоне?
Разные стеки предоставляют разные базовые технологии (фреймворки), имеет смысл выбирать не из языка, я из средств что он предоставляет.
Повторюсь: у меня есть ощущение, что те же Ruby on Rails и Django предоставляют примерно одинаковые возможности.
Можете привести пример задачи, для решения которой однозначно лучше подходит один из них?
Вы лучше сами приведите пример задач, которые будет решать Ваш стартап.
В топике вы задаете вопрос вида: мне тут нужно кое-что сделать, что лучше подойдет, микроскоп, отвертка или ножницы?
Рискую побыть капитаном, но JAVA и хайлоад не очень сочетаются. Но почему-то это не мешает некоторым руководителям проектов пилить проекты на жаве, «потому что ентерпрайзненько», но под эту ентерпразйность потом не напасешься серверов — слома моего знакомого, который полностью переписывал проект на питоне с жавы, после чего освободилось почти 2 стойки оборудования — какой-то крупный внутренний проект
JAVA и хайлоад не очень сочетаются

Это кто вам такой бред сказал?
Может я, конечно и не прав — говорить за всех, и говнокодеры есть везде, но почему-то среди знакомых почему-то уже несколько крупных внутренних и не очень проектов переползло с Java куда-то на питон и .Net, подробностей не знаю, но матов там было много.
А причем тут производительность? Особенно на внутренних проектах?
Внутренние проекты бывают разные. От конторы на 5 человек до транснациональных корпораций
Я про второй вариант.
По сравнению с тем, что могут натворить обычные юзеры, сотрудники транснациональных корпораций — это так, мелочи
По моему опыту, часто стартап начинается с Ruby, Python, PHP, а потом перепиливается на Java, .Net, C++.
Можете посмотреть Curse.com from Python to ASP.NET

Просто требования, которые выдвигаются в начале проекта к коду и продукту в целом != требованиям, которые появляются в более зрелой стадии. ИМХО.
Предположу, что если бы они смигрировали на PostgreSQL или NoSQL и на nginx, количество серверов у них бы тоже уменьшилось.
Никто не мешает на .Net использовать Postgress или NoSQL. кстати есть ли сравнения производительности Win+IIS и *nix+NGINX? Особенно версий IIS 7+.
Пишем для нужд заморского телекома кластер на Java, держим 60k/sec, жалко, что раньше не знали о неприспособленности Java к нагрузкам.
Видимо, пишут хорошие спецы.
Тутошние спецы видимо или совсем мифические и я о них не слышал, или посваливали уже давно и остались одни говнокодеры, после которых надо переписывать все к чертям. Иначе почему проект, который переписывал знакомый на жаве валил ферму на полторы тысячи коннектов, а переписанный на питоне на том же железе влегкую кушает от от 5 до 10к и LA у машин не 25-30, а 5-8 в пиковые нагрузки.
И о таких проектах, которые после ухода с жавы ожили и забегали я слышу последний месяц уже штук 6.
хотя на эти самые проекты на жаве тратились бешеные деньги.
Странно, ведь жаба — давно уже не интерпретируемый язык, в отличие от питона, так что перфоманс при прочих равных должен быть выше. Видимо, действительно, пишут те, кто не знает, как работает джава внутри
Вам уже выше сказали что инструменты подбираются под задачи, а это уже выбор платформы, целлевая аудитория, на которую Вы рассчитываете и куча менеджмента, по сути, и выбор «на чем писать» зависит от туевой хучи факторов.
Поэтому или Вы описываете что хотите делать, или дальше пальцем в небо.
А вообще — я считаю, что хорошему программисту главное понимать основы, а язык дело вторичное и скорее дело привычки/удобства и выбирается под платформу — под винду я могу писать скрипты и на bash, но почему-то пишу на c# и powershelle, а ели мне надо автоматизировать кучу фигни на linux — я возьму bash, питон или перл какой.
UFO just landed and posted this here
Мне вот просто любопытно, асп.нет не рассматривается а java ee очень даже, в чем мораль?
Действительно странно, я бы мог предположить, что .net не рассматривается из за достаточно слабой (по сравнению с java) интеграцией с другими сервисами и меншей облачностью, но опять же, у питона она гораздо хуже, но он присутствует.
С чем это у .net проблемы интеграции?
А меньшая облачность — это что такое за термин?
С нетом проблем много и все они в мелочах. В прошлом году достаточно общался с разными людьми, одни переводили продукт с .net на java, другие изначально потратили немного времени и на стадии прототипа отказались от .net, в пользу java + ruby. Во всех случаях причиной перехода были ограничения платформы (лично я только в курсе, что нормальной алтернативы jms в .net нет, а что как там дальше — понятия не имею).

Меньшая облачность — это то, что я сходу могу назвать несколько облачных сервисов которые очень приятны, когда ты пишешь на яве или руби (тут вообще рай для разработчика), но когда дело касается нета и питона, то все тановиться куда печальнее
Амазон, Хероку… С чего вдруг у Питона «меньше» облачность? Интеграция с сервисами поболе чем у Руби будет…
А знаю много контор, кто переводит разработку новых продуктов с java на .net, поскольку на нём быстрее вести работы, за счёт более мощного языка из коробки.
А про jms не понял, что конкретно нужно от альтернативы? И чем wcf не подошёл?

Я знаю несколько контор, кто использует azure и у них всё отлично. Мы сами его используем и у нас нет с ним проблем. Разработчики не жалуются.

Не хочется привязываться к windows-серверам. В общем-то и все. А так лично мне ASP и C# очень приятны.
Моно для асп.нет как-то стращно использовать. Или не надо бояться?
А почему такая нелюбовь к win-серверам? .NET, как платформа для стартапа, как раз подкупает наличием мощных средств разработки и программами вроде bizspark.
Очень жаль, что вы не написали краткий очерк этого стартапа. Интерпретатор application-сервера это не стек технологий, а всего лишь часть информационной системы. Кроме неё есть такие важные части как вебсервер, кеширующий сервер, субд (в том числе с репликацией и шардингом, ведь речь идёт об амбициозном проекте, претендующем на резкий хайлоад при взлёте, судя по тегам).
И в зависимости от выбранной орхитектуры остальной части системы уже было бы интересно обсудить, какой интерпретатор и фреймфорки могут лучше/дешевле подойти.
Архитектуры, конечно же. Спать, спать.
Какой стек технологий выбрать для стартапа?

Оптимальный!
Если Java для стартапа, то лучше выбрать Play. Если есть опыт только в Java, то можно и на 1.2 писать, а если есть опыт со Scala, то на 2.0.
На чистом Java EE или на Spring разработка займет больше времени.
Что выпить вечером:

— Коньяк

— Содовую

— Водку

— Чай

— Амброзию от НЛО
Если это некий обобщённый web-стартап, лично я бы попробовал всё реализовать на javascript. Специалистов много, сообщество большое, библиотек\модулей\плагинов хватит на все случаи жизни (в большинстве случаев, хватает jQuery + Vanilla.js для клиента и Node.js для сервера)
UFO just landed and posted this here
Мы, например, в своем проекте пошли по пути от простого к сложному: для начала нужно сделать прототип на чем то очень простом, например PHP, и понять, туда вы двигаетесь или нет. Далее можно усложнять систему, накручивая на нее необходимый стек технологий. Опять же, мы перешли от PHP на JAVA для решения определенных задач — это нам подсказал опыт работы — мы увидели слабые места и придумали как от них избавиться.

Резюме: думайте над идеей, оттачивайте ее, потому как в погоне за технологиями вы забудете про само назначение стартапа — вдруг окажется что технологии, не подкрепленные идеей, никому не нужны?
Сначала понять, что стартап будет делать.

Технологии выбираются под задачи, а не наоборот.
Если это стартап, то подразумевается его бурное развитие в будущем… Значит нужны будут программисты, причем нормального уровня и срочно, а это сложная задача, так как спрос на специалистов сейчас только растет!

ИМХО нужно посмотреть по какому стеку больше всего резюме!!!
Ничего это не подразумевается. Он может заглохнуть, даже не начавшись.
Если на это рассчитывать, то лучше ничего и не начинать )))
Вопрос из серии «Какое домашнее животное мне завести?» Нам-то откуда знать, вы больше кошек, собак или рыбок любите, нет ли у вас аллергии, каковы размеры квартиры и пр…
Sign up to leave a comment.

Articles