LINUX.ORG.RU

Python или PHP как первый язык…

 ,


0

1

Прежде стоит сказать, что я никогда не был связан с программированием: в школе ничего не проходили и с ВУЗом тоже не повезло. Однако, сдаваться же никто не собирается!

Буквально несколько месяцев назад, спонтанно, ну как это обычно бывает, появилась прекрасная идея, — показалось наверно, — подумал я. А вот и нет. Когда случайно рассказал одному замечательному товарищу — тот поддержал как только мог, и, более того, дополнил — а дополнение стало беспрецедентным мотиватором, каких в жизни своей не встречал.

В бой.

Сейчас мы с ним активно ищем качественный материал для самостоятельного углубленного изучения. Во времени не ограничены никак. Да вообще никак и ничем, что касаемо интернет-материала: нужно заплатить — заплатим, есть что-нибудь толковое в паблике — с удовольствием изучим. А мы уверены, что много чего есть.

Недавно, максимально насколько это было возможно изучили разметку HTML 4.01 и CSS 2.1 согласно спецификациям «W3C» и, сейчас продолжаем HTML5/CSS3. Эта часть, безусловно, никаких трудностей не доставляет ни в теории ни в практике; чего там, собственно, трудного, всё легко и понятно. //Отдельное спасибо за курсы от «Специалиста» людям, которые не хоронят их у себя на компьютере.

Далее.

В выборе серверного языка мы не сошлись взглядами: я за изучение Python и, конечно же, последующее освоение Django; приятель на стороне PHP. Наши позиции не могут быть сколь угодно объективными по ряду обстоятельных причин, поэтому не разумно ограничить себя двумя мнениями.

Итак, о проекте.

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

Что изучать тем, кто только пришел в программирование: Python (Django) или PHP (скорее всего Yii)? Или?

Извиняюсь за то, что случайно попал не в нужный раздел — исправлюсь.



Последнее исправление: NiceForce (всего исправлений: 3)

Python, Ruby, Scheme - отличные языки для начала: достаточно элегантные, мощные, практичные.

alienclaster ★★★
()

W3C спецификации для тех кто стандарты реализует в своих конкретных программных продуктах.

Что вы там наизучали по ним...

tp_for_my_bunghole
()

в школе ничего не проходили и с ВУЗом тоже не повезло

Возможно, хорошим вариантом было бы сменить вуз и устроиться на работу программистом-стажером, учить дискретную математику и какой-нибудь домейн: биологию, лингвистику, кулинарию, автомеханику, юриспруденцию, живопись, схемотехнику... На «голом программировании» только сайтики клепать будете, да приложения для ынтерпрайза и ондроеда. Оно вам надо?

Успешный социальный проект может получиться только благодаря глубокому социальному опыту. Не тратьте время.

alienclaster ★★★
()
Ответ на: комментарий от NiceForce

Лучше было бы указать W3Schools вместо W3C.

W3C это спецификация для тех кто собирается реализовывать стандарт. Например программист работающий в команде которая создаёт browser.

tp_for_my_bunghole
()
Ответ на: комментарий от alienclaster

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

С математикой проблем нет.

NiceForce
() автор топика

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

Сверхнагрузки ни на что не приходятся, потому что всем безразлично то что вы там сделаете.

Если проект станет посещаемым, тогда и можно думать что использовать для переписывания.

tp_for_my_bunghole
()
Ответ на: комментарий от tp_for_my_bunghole

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

Однако, действительно, W3Schools я почему-то упустил из виду, хотя и пользовался именно ним.

NiceForce
() автор топика

PHP ужасен и искалечит ваш мозг, скорее всего, навсегда. PHP: a fractal of bad design.

Берите нормальный язык, если именно веб, то рациональнее всего будет брать Python или Ruby(RoR).

Для проекта вашего еще нужен толковый админ. Еще, если вдруг взлетите, придется взять сишников, чтоб писали вам бэкенды шустрые(собственно, так фейсбук и сделал в итоге).

По поводу архитектуры сразу не забывайте про nginx, выдачу статики и балансировку нагрузки. В плане БД не забывайте помимо реляционных(я бы советовал PostgreSQL) вовремя посмотреть на различные NoSQL(Redis для начала будет неплохим и относительно универсальным средством), а так же не забывайте про существования очередей(RabbitMQ, например). Все это может помочь не велосипедить и достаточно быстро сделать что-то работающее и с приличной архитектурой. Но смотрите сильно в астронавты не ударяйтесь... Сразу думайте о масштабировании, по крайней мере горизонтальном...

Удачи :)

anonymous
()

pascal, oberon, java

и да, можно ведь тоньше

wxw ★★★★★
()
Ответ на: комментарий от anonymous

PHP ужасен и искалечит ваш мозг, скорее всего, навсегда.

Это бред. Нормальный язык.

В плане БД не забывайте помимо реляционных(я бы советовал PostgreSQL) вовремя посмотреть на различные NoSQL(Redis для начала будет неплохим и относительно универсальным средством), а так же не забывайте про существования очередей(RabbitMQ, например).

Это да, конечно. Я бы ещё шашлыки посоветовал, без пива, с хорошим вином.

tp_for_my_bunghole
()

Про архитектуру откуда узнал?

anonymous
()
Ответ на: комментарий от tp_for_my_bunghole

Это бред. Нормальный язык.

Что в нем нормального? По поводу бреда - я не знаю ни одного хорошего программиста из «профессиональных» пыховцев, не знаю ни одного выросшего из них системного архитектора. А знаю я и программистов и архитекторов хороших немало. А язык действительно весьма паршивый, все через одно место сделано. Хотя как инструмент он был весьма годен какое-то время назад, сейчас его использовать смысла нет - приличные языки пришли в веб.

anonymous
()

python
удобный, гибкий, много хорошей документации

ggrn ★★★★★
()
Последнее исправление: ggrn (всего исправлений: 1)
Ответ на: комментарий от tp_for_my_bunghole

Да все :) По ссылке вышеприведенной сходите для начала. Мало?

anonymous
()

В выборе серверного языка мы не сошлись взглядами: я за изучение Python и, конечно же, последующее освоение Django; приятель на стороне PHP.

Для начала убей своего приятеля, с ним что-то не то.

Virtuos86 ★★★★★
()

Сразу про PHP - это самый плохой язык, который я видел. Создавался, собственно, для лабания на коленке небольших сайтов. Для чего, собственно, и наиболее лучше подходит. Архитектура языка оставляет желать лучшего, API разнородный даже в стандартных библиотеках.

Про Python - брать лучше сразу Python3, т.к. более стройная архитектура языка. Ну, и просто шикарный Django. ИМХО - не хуже Rails.

Если планируете по правде выскоконагруженное web-приложение - не лучше ли взять Go или Erlang? Они лучше для этого приспособлены.

silver-bullet-bfg ★★
()

да будет Вам известно, что Yii-PHP больше не будет. Они на Ruby переезжают.

В свете этого Вам еще на раздумать: Ruby (будущий Yii 2.0, рельсы), Perl+Mojolicious.

bvn13 ★★★★★
()
Последнее исправление: bvn13 (всего исправлений: 1)
Ответ на: комментарий от tp_for_my_bunghole

Если проект станет посещаемым, тогда и можно думать что использовать для переписывания.

Бугога. Переписывание — это потеря времени и денег. Угадай, почему лицокниге проще костыль к php было разработать?

anonymous
()
Ответ на: комментарий от Deleted

Python или PHP как первый язык…

дальше не читал.

++

Жуть-то какая!

Anon
()

Только не похапэ. На django тоже не рекомендую зацикливаться. Как минимум стоит хотя бы бегло ознакомиться с самыми популярными (всякие bottle.py, flask, pylons итп). Особенно если нужны websockets, с этим всё достаточно плохо.

true_admin ★★★★★
()

А твой приятель как-то аргументирует выбор PHP?

Его используют по двум причинам - поддержка старого кода и легкая возможность нанять еще пару тройку десятков заменяемых обезьянок. Если это неактуально, то выбирайте что-нибудь другое. Python, Ruby. Может даже Java/Scala, но не думаю, что это ваше.

anonymous
()

Если пишите с нуля, или используете фреймворк в качестве основы - тогда лучше сразу Python или Ruby. Мне Ruby больше нравится, он более выразительный и у него больше синтаксического сахара. Но на вкус и цвет все фломастеры разные... Вот если бы вы создавали продукт на основе имеющейся CMS - тогда скорее всего вам пришлось бы учить PHP. PHP язык неплохой. На нём можно реализовать то же самое, что и на Python/Ruby. Просто данный ЯП имеет меньше синтаксического сахара, и дизайн языка местами непродуманный. С другой стороны, найти специалистов с хорошим знанием PHP легче, чем специализирующихся на Python или Ruby(это на случай, если проект взлетит, и нужно будет его пилить целой командой). А вообще, для прототипа(первой версии) можно выбрать один ЯП, а если дело пойдёт - нанять спецов которые всё перепишут на другом ЯП.

lucentcode ★★★★★
()

PHP вполне себе хороший шаблонизатор (я его так использую), поэтому если вам нужен хом пейдж - берите пых, у него и порог вхождения низкий, что даже школьники справляются. // Сужу по себе, конечно же.

Про остальные языки ничего не скажу.

Spoofing ★★★★★
()

Django это шаблонизатор уровня примерно PHP2.0

Сейчас актуальная версия PHP — 5.4. Это уже далеко не шаблонизатор, это вполне современный скриптовый язык. Именно его надо брать для сравнения.

Идеальных языков не бывает, если брать питон и пхп, то это языки примерно одинакового уровня, каждый со своими проблемами.

linuxnewb
()
Ответ на: комментарий от linuxnewb

Слушайте, перестаньте портить новичков. PHP - говным говном. И если раньше им приходилось пользоваться, то сейчас без проблем можно от него отказаться. Так зачем кушать кактус?

anonymous
()

Да хоть на бейсике или фортране пишите - какая на хер разница-то? Все равно потом три раза преписывать придется, а если проект будет успешным, то переписывать будут уже профессионалы.

anonymous
()
Ответ на: комментарий от anonymous

Согласен, переформулирую результирующую часть своего ответа: Оба говно.

linuxnewb
()
Ответ на: комментарий от anonymous

А новичков с пути гораздо сильнее сбивает трындеж про «порог вхождения»

linuxnewb
()

Helloworld'щики судят о языках как о музыкальных группах среди подростков.

Ссылки с «истиной» какие-то... Незнание состояния дел на данный момент.

Для PHP есть бесплатные IDE профессионального уровня. De facto стандарт это Symfony/Silex, по сравнению с которым Django игрушка.

tp_for_my_bunghole
()
Ответ на: комментарий от anonymous

Слушайте, перестаньте портить новичков. PHP - говным говном. И если раньше им приходилось пользоваться, то сейчас без проблем можно от него отказаться. Так зачем кушать кактус?

Слушайте, перестаньте портить новичков. Python - говным говном. И если раньше им не приходилось пользоваться, то сейчас надо кушать кактус.

tp_for_my_bunghole
()
Ответ на: комментарий от lucentcode

Вот если бы вы создавали продукт на основе имеющейся CMS - тогда скорее всего вам пришлось бы учить PHP. PHP язык неплохой. На нём можно реализовать то же самое, что и на Python/Ruby. Просто данный ЯП имеет меньше синтаксического сахара, и дизайн языка местами непродуманный.

Ни один framework на других языках не дотягивает до Symfony по совокупности параметров. Если Symfony это overkill для каких-то задач, то есть совместимый microframework Silex.

tp_for_my_bunghole
()
Ответ на: комментарий от anonymous

Бугога. Переписывание — это потеря времени и денег. Угадай, почему лицокниге проще костыль к php было разработать?

Жилаю успехав.

tp_for_my_bunghole
()
Ответ на: комментарий от anonymous

Питон - хороший язык. Особенно в сравнении с PHP.

Особенно, в сравнении с PHP, в питоне хороши однострочные лямбды!

linuxnewb
()
Ответ на: комментарий от linuxnewb

Если вы знаете, что такое лямбды, то проблем быть быть не должно. Для сложных случаев локальная функция все-равно нагляднее.

anonymous
()

Кого я вижу :)

Попробуй оба, а потом сам поймёшь что для тебя лучше.

nutsandmilk ★★★
()
Ответ на: комментарий от linuxnewb

Ну так показывай, не стесняйся. Ты же хотел показать, что однострочные лямбды - это плохо.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.