Pull to refresh
0
0
Козлов Сергей @kozlovsv

User

Send message
В PHPStorm при соответствующих настройках автокомплит для CI отличный. Хотя на счет «вчерашнего дня» возможно вы и правы. Но я уже сказал что изучить новый язык не такая уж и проблема, гораздо большая сложность составляет изучения самомго фреймворка, и его тонкостей. Поэтому решив опробовать новый фреймворк, решили попутно и опробовать новый язык. А вдруг понравится :)
На счет «диктует бизнес», с Вами на 100% согласен. Если бы я писал этот пост год назад, то, наверное, камней в огород PHP, полетело бы гораздо больше, и пост, наверное, получился бы обильно сдобренный матом, но…, слезть с «иглы» PHP за год не получилось. Если проект делается на заказ и он не слишком крупный, то заказчика по большей части волнует – доступность, распространенность и дешевизна хостинга, доступность специалистов, способных поддерживать сайт. Слово PHP, многим заказчикам знакомо, как ни странно, даже если они ничего общего не имеют с IT, многие заказчики думают, что это вообще единственный язык для разработки сайтов. Но при слове Python или еще что то, заказчик настораживается, и уже относится к тебе недоверчиво…. В общем, спустя год, наступило некоторое смирение что ли, и к языку отношение уже немного другое. Как к мулу, его все бьют, пинают, а он знай себе, везет груз, и делает свое дело.
Но когда созрела задача написать собственный проект, то тут решили рискнуть и попробовать другую технологию.
По поводу своеобразного ORM. Тут согласен. Надо постоянно мониторить какие запросы SQL создаются к базе, особенно при обращении к связанным таблицам, а то может получится так, что при, вроде бы безобидной выборке 100 строк с обращением к полям дочерней таблицы (обычный по сути JOIN), ORM генерирует101 запрос к базе, 1 основной и по одному запросу к дочерней таблице. Правда стоит отметить, что об этой особенности, и как ее обойти есть упоминание в документации по Djanjo.
Я не заметил в данном топике унижение PHP, есть вещи которые не нравятся, но слова «отстойный» и «неправильный» я не произносил. В названии топика указано, что выбор непростой, что однозначно правильного решения пока не найдено, и определить какая технология лучше подходит для разработки Веб приложений не так просто. Поэтому ни о каком унижении PHP речи не идет. Говорится о том что он не устраивает в некоторых планах. Но согласитесь, язык действительно не идеален.
Понятно, что гораздо важнее знать азы программирования, и разработки структуры приложения, паттерны проектирования, основы СУБД, реляционной алгебры, и возможно дискретной математики, язык и фреймворк — всего лишь средство реализации, и если базовые знания программирования оставляют желать лучшего, то разницы, как каком языке пишет человек, действительно нету. Но у меня поверьте базовые знания есть, и изучить новый язык для меня не составляет никакой проблемы, и поэтому если язык меня не устраивает то я перехожу на новый. Не факт что Python устроит во всем, но по крайней мере будет с чем сравнивать. А вы считаете что стремление в поиске более продвинутой технологии это унижение старой?
Да есть. Сомневаюсь что переход с CI на symfony2 устранят те недостатки языка которые не устраивали нас. Как раз к фреймворку CI претензий нет никаких, он всем устраивает, не идеален конечно, но так скажем «очень приятен в общении», а вот к самому языку претензии есть, и мы приняли решение (довольно не простое), что нужно попробовать новый проект разрабатывать на новом языке + фреймворке. Чтобы хотя бы самим иметь представления и понять какая из этих двух связок PHP + СI или Python + Django в практическом применении лучше. Кстати особых проблем в изучении нового языка я не вижу. Гораздо сложнее освоить новый фреймворк, понять его структуру, ньюансы и прочее. Так что если брать трудозатраты на изучение новой связки Python + Django или нового фреймворка на PHP, то Python + Django не намного сложнее освоить. Еще хочу заметить что работающим у нас программистам на PHP не надо будет ничего переучивать, так как они сидят на старых проектах на PHP и работы там тоже хватает. Для нового проекта будут наняты другие программисты. Переучивать язык и фреймворк нужно мне, для более грамотного контроля за разработкой. Поэтому мне не обязательно становится гуру питона и джанго. Достаточно освоить азы.
PS. Кстати мы рассматривали в качестве альтернативы CI другие PHP фреймворки. В частности интерес вызвали Kohana — родственник CI и YII — в принципе тоже вполне достойные фреймворки. Один недостаток они на PHP :)
Мы разрабатываем на php + CI и symfony2 изучать нет никакого желания, да и необходимости.
Во первых, о полном переходе от одной технологии к другой речи не велось изначально. Просто пробуем писать новый проект на новой технологии и окончательное решение будет приниматься только после того, как станет понятно, что одна технология имеет ощутимые преимущества над другой. Но даже после этого старые проекты на PHP останутся, и никто переводить их на другую технологию не собирается. Пока по крайней мере. Во вторых, с чего вы взяли что статья — это переход одного человека на другой язык. Если вас смутили в комментарии мои слова
Учить новый язык по большей части из всей команды пришлось только мне
То я, как технический руководитель, посчитал для себя обязательным ознакомится хотя бы с азами языка и фреймворка.
Да, я имел ввиду встроенный сервер. Я заметил что, если править шаблоны то вроде сразу изменения отображаются, если править код отображений и моделей, то надо перезапускать. Еще непонятно зачем в Django отошли от общепринятой нотации MVC, Модель у них так и есть модель, контроллер почему то отображение (view), а view — у них называется шаблон. Немного путаница возникает.
Согласен. Можно использовать обертки и костыли, и для старого проекта на PHP, где уже написано куча кода, конечно это выход из ситуации. Поэтому я тут и настаиваю, что скорее выбор чисто субъективен, и нет четких 100% критериев, по которым можно с уверенностью сказать да точно стоит переходить на Python, Rails и прочее. Нет таких критериев. Просто накипело. Кстати не факт что и в Pyhton нет таки «бесящих» мелочей. Кстати вот она уже наклевывается — это необходимость перезапускать дев сервер каждый раз, чтобы изменения, сделанные в коде вступили в силу.
Если в разработке не используются Case средства, то время написания самого кода, тоже существенный фактор. Python радует тем, что кода пишется ощутимо меньше. На счет поддержки тоже не все так гладко. Одно дело если проект разрабатывается корпоративно, существует четкая иерархия разработчиков, если люди которые постоянно контролируют качество кода и прочее. А вот если таких людей нет, то один юниор программист может написать модуль так, что кроме него там никто не разберется. Говно код можно написать на любом языке, но Python по моему как то меньше способствует написанию этого говнокода.
Ну я думаю это уже по большей части не программист, а руководитель проекта, архитектор или системный аналитик.
Да, с такой аргументацией не поспоришь :)
Преимущества в скорости работы какого либо из проектов написанных на PHP либо Python, находящихся на одном и том же сервере не обнаружено. Проекты не особо посещаемые, до 1000 уников в сутки. Так что острого вопроса скорости работы не стояло. А на счет нескольких PHP джуниоров или одного опытного питониста, тут сказать ничего не могу опыт — покажет. Но пока, все говорит о том, что опытный программист пока экономически более выгоден. Хотя опять же стоит отметить, что найти PHP программиста и проще и дешевле. Наверное из за большей конкуренции.
Да да, именно неудачно. Спасибо что поправили :) Скорость конечно же хочется увеличить.
Я написал что проект молодой и конкретика особо не сформировалась. Вдобавок так же я писал что на любой конкретный довод в пользу того или иного языка найдется парочку утверждений в обратном. В статье я по большей части хотел отразить то, что на самом деле выбор технологии гораздо более субъективен и нет абсолютно истинных четких критерием выбора той или иной технологии.
Вообще конкретика на данный этап уже начала вырисовываться, но пока фактов не хватает для полноценной и адекватной статьи, еще нет уверенности что вот тут действительно лучше у одного языка чем у другого. Но попозже конкретика будет, я обещаю.
Я являюсь руководством. И моей задачей в частности является снизить скорость разработки проекта. Читая форумы, на которых приводятся технические сравнение языков и фреймворков, понял, что большая часть — это переводы статей. А реалии разработки ПО за рубежом, несколько отличаются от наших. Читая статьи — сравнения «местного» производства, создавалось ощущение их однобокости. Можно найти статьи где рассказывается о абсолютном лидировании PHP над Python или наоборот. Да, в этих статьях конкретики вроде побольше чем в моей, но пользы наверное столько же. Каждый хвалит свое. На самом деле пока у меня лично нет однозначного решения что же все таки лучше, поэтому и сравнений нет никаких. На счет разработчиков. Большая часть разработчиков — фрилансеры, и на новые проекты все равно приходилось бы нанимать новых людей, так что никого не увольняли и насильно переучивать язык не заставляли. Учить новый язык по большей части из всей команды пришлось только мне. Просто появилась возможность начать новый проект с новой командой.
Объективного сравнения фреймворков в принципе не существует, я по крайней мере не встречал. По большей части выбор фреймворка, несмотря на все технические сравнения и прочее все таки скорее субъективен. А то иначе давно бы нашли «самый лучший» фреймворк в мире и писали бы только на нем. Так же я отметил что проекты на PHP довольно зрелые, а на Django довольно молодой — поэтому опять же качественного сравнения привести не получится, надо сначала на Django тоже шишки понабивать, а потом уже и сравнения писать. Хотя я встречал уже сотню таких сравнений, и все они сводятся к обычному «холивару», а не хотелось бы

Information

Rating
Does not participate
Location
Уфа, Башкортостан(Башкирия), Россия
Date of birth
Registered
Activity