Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 5
×

Python, PHP, Ruby ?

Планую пов’язати своє життя з веб програмуванням. Перечитавши кілька тем на DOU я дійшов висновку, що зараз у вебі «рулять» такі мови програмування як Python, PHP, Ruby. Хотілося б попросити у вас допомогти мені з вибором мови. Про себе можу сказати що я закоренілий користувач Windows. У навчанні часто можу перегоріти коли цікавий мені предмет викладається в нудній мені формі. За характером я відкрита і комунікабельна людина. Від мови програмування я очікую отримати гарну швидкодію, підтримку сучасних веб технологій, легкість в навчанні. Також цікавить і таке питання. Чи присутні для цих мов програмування книги, після прочитання і освоєння яких я написав би готовий веб сайт. На даний момент я схиляюсь до Php, так як тут широке коло підтримки і літератури, простота в роботі під Windows. Також схиляюсь до php через те що він був написаний саме для створення динамічних сайтів, ніякі інші задачі перед ним не ставлять.Хоча також дивлюсь і в сторону Python з їхньою популярність закордоном.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Если закоренелый пользователь Windows то однозначно с пайтоном, как инструментом для веб-разработки связываться не стоит. А то скорее всего придется с окошек слезать ...

Причина? Нет пайтона под Windows? Нет Джанго под Windows? Нет веб-сервера под Windows? Или синтаксис пайтон под виндоуз другой?

Просто неудобно все. Неудобная консоль под виндами, неудобно библиотеки ставятся, все неудобно. Плюс:

Мне когда то пришлось руками собирать коннектор для MySQL (с правками его сишного кода и с правками его питоновского кода :)), потому что готового не нашел под нужную мне версию пайтона.

Под линуксами собирать руками ничего не надо ... парадокс однако

я б еще добавил отсутствие инфраструктуры — history, tail, sed, grep и прочие ctags и плюшки , можно конечно возится с cygwin но это всеравно убого без нормальной консоли

С коментариями согласен. +Можно быть пользователем Windows используя готовые сборки виртуальных машин, например BitNami: bitnami.org/stacks Все-равно, рано или поздно нужно будет приспосабливаться к *NIX.

DjangoStack
Categories: Infrastructure
Technologies: Apache HTTP Server MySQL PostgreSQL Python SQLite
Licenses: Apache BSD
bitnami.org/...ack/djangostack
bitnami.org/...staller-r01.exe

Эта штука инсталится в систему или в отдельную папку? То есть, можна ли его поставить на флешку и носить с собой?

1. Виртуальную машину можно носить с собой.

2. Инсталлятор — соответственно устанавливается в конкретную систему.

Не правильно спросил. Имел ввиду:

Он устанавливается в папку, например, DjangoStack (которую можно просто удалить) или установит питон поверх уже установленных, апач и БД-сервера как сервисы и тд.

Установится в папку, запустит свой веб-сервер и БД в качестве сервисов. Для переноса больше подходит вариант с виртуальной машиной.

.Net и MVC и будет вам счастье.

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

как можно нормально работать с языками без статической типизации

очень удобно, веб он как-бе текстовый ... код не замусоревается постоянными пробразованиями типов

А зачем постоянно преобразовывать типы?

типы как бы преобразовываются динамически =)

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

Так что все познается в сравнении.

Точно, бро, а потом появляются вот такие топики: habrahabr.ru/...net_mvc/128315

Коментар порушує правила спільноти і видалений модераторами.

Для начала стоит попробовать хотя бы один из языков с динамической типизацией, а потом делать выводы. В том же .net-е в последних версиях много внимания уделяется DLR и выведению типов, ибо не состоялся бы LINQ и прочие вкусные плюшки вроде ExpandoObjects (С# 4.0). Более того даже в C#2.0 для некоторых случаев был обходной маневр компилятора, который для IEnumerable<t> неявно использовал утиную типизацию (со слов разработчиков компилятора для предотвращения box-инга для value-типов). Т.е. уже тогда они осознавали ущербность строго типизированных языков. Да и кроме всего статическая типизация не является панацеей и компилятор и всяческие анализаторы не могут предотвратить все изощренные способы получения нелепых или некорректных результатов, которые могут прийти в светлые головы наших коллег по цеху.

Linq как раз таки строго типизированный и возвращает перечисление соответсвующего типа. Если тип анонимный тогда используется var, но на момент компиляции тип все равно известен. Вот dynamic — это да, но им массово никто не полузуется.
Скажите мне как в динамических языках получить intellisense для входящих параметров и избегать триллиона рантайм ошибок (кроме того чтобы «быть внимательнее»)?

Скажите мне как в динамических языках получить intellisense для входящих параметров

goo.gl/Im7ua или поставьте идею

и избегать триллиона рантайм ошибок (кроме того чтобы «быть внимательнее»)?

Линт-ы + нормальный стиль кодирования.

Додовы по intellisense (пока) не убедительны:
@param {__jQueryDeffered) df
Объявлять это хну для каждого параметра убожество.
С другой стороны как иначе? Как IDE узнает какой тип на входе?
Ну вот например:
def myFunc(x):
pass
1) Как иде узнает тип объекта x, чтоб показать intellisense?

2) Если я отправлю в функцию тип Y, а не X, когда я узнаю об ошибке?

Объявлять это хну для каждого параметра убожество

List — для многих это так же убожество ;)

1) Как иде узнает тип объекта x, чтоб показать intellisense?

Идея как-то определяет «тип». Кстати, есть люди которые вполне успешно используют вим, текстмате и отостранноенабуквуе.

2) Если я отправлю в функцию тип Y, а не X, когда я узнаю об ошибке?

В рантайме, но это решается с помощью

Линт-ы + нормальный стиль кодирования.

intellisense уныл на больших проектах да и полезен только начинающим , потом только тормозит работу.

когда переехал в php долго страдал от тупизны IDEшек. пришлось учить вим, в котором очень удобно кодить в больших малознакомых проектах

Может просто ide тупые. Помоему набирать 3 буквы вместо допустим 10 быстрее (и безошибочно), да и с малознакомыми библиотеками работать проще, когда перед тобой высвечиваются все возможные свойства, методы и т.д.

Есть еще Dynamic LINQ. А intellisense например легко получить в нормальных IDE. Для Ruby intellisense работает на ура например в NetBeans и MineRuby, а вот в Aptan-е как-то не очень. В Visual Studio 2010 (IronRuby) пока без intellisense... будем надеятся что мелкомягкие все-таки ее реализуют.

Ну я вполне могу представить себе его в тех случаях, когда переменной присвоено значение, в js он тоже работает. А как быть с параметрами функций?

Как уже говорилось — стиль кодирования. Не идеализируйте intellisense, это всего лишь фича IDE. Лучше сосредоточится на coding convention и преимуществах динамических языков. Если вы таковых не видите, то просто пользуйтесь языками со статической типизацией, меньше хлопот будет ;)

В общем тема на любителя ;)

Ви зараз говорите про такі речі....я жодного слова не розумію......

Да уж, увлекся. :) Скажем так, когда я впервые попробовал Ruby (это после 4-х лет C++ и 4-х лет C#), то радовался как ребенок. Просто неподдельный кайф от использования получаю. В принципе я сейчас еще нахожусь в процессе его изучения. Там все красиво и аккуратно. Сочетает в себе мощь скриптовых языков + полноценный ООП. Например из фич языка которые лично мне очень понравились:
1) регулярные выражения в Ruby поддерживаются native
2) в Ruby все является объектом (подход как в Smalltalk-е)
3) реальная кросплатформенность

4) простой и «чистый» синтаксис

Пишу на Ruby взагалі без IDE, ніякого IntelliSense і auto-complete. Завдяки динамічності можна відDRYати код настільки, що він буде в рази менший. Так що я швидше наберу 10 рядків вручну на Ruby, ніж плодити тонни коду на С++ із IntelliSense.

А сколько у тебя занимает экстрактнуть кусок кода в отдельный метод а потом отдельный класс? У меня пару кликов мышки, при этом ИДЕ отследит зависимости кода, сгенерирует сигнатуру метода с переменными, и отрефакторит код.
Я вот пишу и на джава и на питоне, на питоне как то локаничнее конечно, но если кода много и его часто приходится менять, и хочется его рефакторить, что бы код был чистым и правильно задизайненным, тулзы авторефакторинга творят чудеса.

долгое время меня смущал вопрос — почему весь такой хваленый линукс не имеет продвинутой ide с плюшками, при том что ваяется куча кода , проекты «толстые» , рефакторинг делается и все такое

оказалось что все есть для 98% задач возникающих у прогера, а те 2% ... ну они не есть задачами, которые делаются ежедневно по 100 раз на дню

Попыток создания правильной ИДЕ много, цифры 98%, 2% и 100 очевидно выдуманы.

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

Тогда обоснуй от чего у меня там рука должна болеть? Конкретные примеры?

гугли туннельный сидром

Мы все еще обсуждаем иде вс текстпад? Ты разучился ясно выражатся о мастер Ёда?

ну я обсуждаю идею что не IDE единым

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

Просто разработки под линукс в разы меньше. Да и платформа сама не особо перспективная что бы для нее выпускать стоящий продукт.

Коментар порушує правила спільноти і видалений модераторами.

Правильно, долой IDE пишем в блокноте!)

Sublime Text 2 — дуже хороший «блокнот» :)

Не одина из технологий (Python, PHP, Ruby) не раскроет себя на полную на Windows.

Коментар порушує правила спільноти і видалений модераторами.

Да чё тут обосновывать-то? Вон для руби тесты в 20-ть раз быстрей работают, нативные гемы без проблем компилятся, да я так до утра продолжать могу.

Ruby великолепен. Советую. Кросплатформен и литературы имеется в избытке.

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

Если вы действительно хотите стать веб-разработчиком, то вы начинаете не с тех языков.

Учите HTML/CSS — после нормального ознакомления с ними, JavaScript ( + jQuery + prototype.js). Выбор серверного языка, оставьте на потом. Когда вы почувствуете себе увереннее во фронт-енде, будет гораздо легче выбрать язык+фреймворк для сервер сайда — вы сами можете выбрать, что будет подходить под ваш стиль.

+ prototype.js

Зачем откапывать стюардессу?

php хороший язык, работать с ним удобно и с каждой новой версией всё приятней

на Windows ставится очень просто либо на Apache: xampp/zend server/denver, либо на nginx(настраивать надо в ручную, но делается это в течение пары минут)

php постоянно развивается и имеет обширное комьюнити, так же можно получить сертификат Zend Certified Engeneer, что может дать некоторый профит в поиске работы

при помощи php можно создавать веб-приложения любого уровня: от домашней странички, до фейсбука

выбирайте php

PHP отличный язык для определенного набора задач, но когда на нем начинают лепить что-то большое и на века:

PHP становится очень суровым. Загляните внутрь популярных фреймерков.
У меня например начинается нервный тик и я долго не могу заснуть после таких взглядываний. Например потому что если уж очень надо «парсить код» в рантайме, то делать это с помощью файловой системы, а не неймспейса это какой-то моветон. Но конечно же

php хороший язык, работать с ним удобно и с каждой новой версией всё приятней

А потом когда дело доходит до фейсбука, оказывается что надо было юзать с++.

выбирайте php

И никогда не забывайте, что при инстанциации экземпляра по имени класса надо как минимум:
— проверить есть ли файл с классом;
— подключить файл с классом из (sic!) файловой системы;
— проверить существует ли такой класс;
— создать экземпляр;
— или сдохнуть или бросить исключение но какое исключение?

— или забить и использовать пайтон?

Просветите меня как настоящего полного нуба в PHP как унифицировано осуществить получение файла класса от удаленного источника и его создания в процессе выполнения без чрезмерного бубна, ну вот как в Java например?

А то мне не понять что в PHP такого удобно сравнительно с привычными мне ClassLoader-ами и ClassNotFoundException-ами.

А потом когда дело доходит до фейсбука, оказывается что надо было юзать с++.
сколько в мире сайтов соизмеримых по размеру с фейсбуком?
А то мне не понять что в PHP такого удобно сравнительно с привычными мне ClassLoader-ами и ClassNotFoundException-ами.

а можно подробнее что именно под этим подразумевается в плане удобства?

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

не, ну вы поясните про автозагрузку классов-то. Правда выше уже сказали, что все это давно реализовано и возможно.

Фреймворки развиваются значительно медленнее языка, поэтому последние фичи в них не используются, такие как неймспейсы например. Для загрузки классов определяются автолоадеры и делается это один раз.

А потом когда дело доходит до фейсбука, оказывается что надо было юзать с++.
Тем не менее его продолжают колбасить на рнр. Потому, что это быстро и удобно.
С тем, что с++ быстрее рнр мало кто не согласится.
Просветите меня как настоящего полного нуба в PHP как унифицировано осуществить получение файла класса от удаленного источника и его создания в процессе выполнения без чрезмерного бубна, ну вот как в Java например?
Скажи, в контексте какой задачи это нужно и я расскажу о решении этой проблемы на рнр.
И никогда не забывайте, что при инстанциации экземпляра по имени класса надо как минимум:
Надо просто написать что-то типа $example = new ExampleClass(); всё остальное сделает автолоадер, написанный однажды.

Надо просто написать что-то типа $example = new ExampleClass(); всё остальное сделает автолоадер, написанный однажды.

ну что ж вы так сразу взяли и испортили интересный диалог :)

предпосылок для интересного диалога всё равно остаётся более, чем достаточно:)

из (sic!) файловой системы;
обана, прям zip\jar не содержит внутри файловой системы :)
экземпляра по имени класса надо как минимум:
все давно решено, создается свой хук\лоадер который все делает прозрачно

кстати, в спину java — в ней невозможно получить список классов в jar или вообще в системе , что меня очень расстроило после .net, где подобный подход очень удобен для плагинчиков и прочих динамических прибамбасов

если я правильно понимаю что делает

ClassLoader
, ибо в python еще не успел посмотреть то есть такая штука:
function __autoload($class_name) {
include $class_name . ’.php’;
}

если я правильно понимаю что делает

ClassLoader
, ибо в python еще не успел посмотреть то есть такая штука:
function __autoload($class_name) {
include $class_name . ’.php’;
}
займайтеся тим, до чого схиляетеся.

однаково усе життя на однiй технологii не будете. це ж IT...

А почему не посмотришь в сторону .NET если ты поклонник продуктов мелкомягких?

по-перше, почніть з лінукса, веб не існує без лінукса, нажаль. лише дуже примітивні проекти працюють у віндовс , більш-менш великі проекти дуже складно навіть запустити під вінду ...
можна поставити ту ж саму убунту у файл і дуалбот для початку

крім того лінукс, це у першу чергу така велика IDE створена прогерами для прогерів, головна задача якої — робити процес розробки зручним

по-друге — мови без фреймворків для новачка протипоказані, краще взяти якийсь легкий фреймворк — легше буде вивчити саму мову , а перейти на більш важкий фреймворк буде легше

по-третє, книги можливо і існують, але вони часто застарілі , скоріше за все гугль і рідні мануали будуть більш корисними

по-друге — мови без фреймворків для новачка протипоказані, краще взяти якийсь легкий фреймворк — легше буде вивчити саму мову , а перейти на більш важкий фреймворк буде легше

вот с этим КАТЕГОРИЧЕСКИ не согласен.

потом имеем “разработчиков”, которые кроме фреймворка ничего не знают.

потом имеем «разработчиков», которые кроме фреймворка ничего не знают.
а в іншому випадку маємо ще одного бидло-кодера ... ну не можливо новачку створити більш меньш розумну архітектуру (написати свій фреймворк)
да і не практично це — вивчати функції нижчого рівня, якщо їх ніде не використовують

ничего подобного. Он учит инструмент для начала, когда есть понимание как этот инструмент работает, вот только тогда уже начинает смотреть фреймворки.

ну так і кажіть, що з початку треба вивчити машкоди, асемблер, потім сі та вивчити як працюють компілятори та інтертрєпатори , ну і лише після того давати допуск вивчати щось вищого рівня :)

бо як може людина яка не розуміє як працює парсінг php та виконання байт-коду розробляти веб сторінки :)

это называется утрирование и доведение до абсурда идеи.

ну да, у відповідь на ваше нерозумне заперечення усі засоби вдалі.

я впевнений, що новачок не зможе реалізувати db layer, вбудувати засоби безпеки або підтримку MVC сам, з копіпастою — да, але чи буде це мати сенс ? можливо легше йти від простих речей до більш складних ?

не треба сперечатись, мені аж якось не зручно, що через мене почалась така словесна битва

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

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

2proger — да, на первое время пусть будет кривой, но зато свой db layer, да его вообще не будет, откуда новичку знать это... Про парсинг и ассемблер реально чушь гонишь, думай что пишешь...

2topic starter — если все же изучение начнется с php, то после освоения базы обязательно почитай книгу «PHP for professionals» George Schlossnagle.

вообще ни в коем случае не стоит начинать изучать язык с фреймворка.

ну ведь глупость же, давайте запретим изучающим .net языки пользоваться собственно дотнетом, а изучающим си — пользоваться glibc\stl, ну и java-runtime запретить,

изучающие десктопную разработку должны писать на винапи\X стеке, упаси заглянуть на какой нить wpf\mfc\qt и т.д. :)

Опять утрирование! Перестаньте к словам цепляться!

Ведь изначально тема топика Python, PHP, Ruby =) Пусть учит .Net если хочет писать на нем)) Немного другие тут инструменты. Java и .Net уже будут являться основой(!)

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

Коментар порушує правила спільноти і видалений модераторами.

PHP надо начинать учить не с фреймворка. ВСЁ. В отношении .Net и Java претензий нет.

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

Зачем эти цифры тут? Я же уже отписал свою точку зрения, нужно учить теорию программирования, а не инструменты. Возникнет задача, подбираете инструмент и пишете. Дело в том, что все знать не возможно.

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

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

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

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

Не вижу смысла учить все подряд. Так и аллергия может появится и прыщи и прочие гадости.

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

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

ага, именно поэтому я, когда собеседую веб-разработчиков, они не могут назвать среди методов сортировки даже «пузырек». Привыкли, что язык/фреймворк за них отсортирует.

Те, кто отстаивает точку зрения, что сначала надо учить фреймворк, а потом азы языка могут спорить дальше. Но я буду брать на работу того, кто понимает как язык работает, а не того, кто знает как в зенде/симфони сгенерировать страничку.

И пока в своем методе отбора я не разочаровался.

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

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

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

То, что я озвучил — проверено практикой.

топик стартер подразумевал самообучение, тут несколько другие технологии, чем при «академическом» подходе, самообучение требует более «тонкого» подхода к мотивации, ибо очень сложно заставить себя учить абстрактные вещи применимость которых под сомнением, уж лучше разбиратся, когда возникает потребность, а основные усилия потратить на результативность. да и к тем же тестам и собеседованиям можно подготовится отдельно, когда возникнет необходимость ...

«академическое» обучение в этом смысле позволяет получить более широкого «специалиста», с некторой избыточностью знаний, в том смысле, что они нафиг не нужны, вот как таже сортировка пузырьком, которая представляет лишь теоретический интерес — на практике знания quick sort и binary search достаточно в 99% случаев , которых (случаев) за карьеру может и не представится вовсе

они не могут назвать среди методов сортировки даже «пузырек»

А я из алгоритмов сортировки знаю только пузырек. А лет 10 назад, вообще не зная алгоритмов, на Клиппере его исполнил, думал сделал открытие. Хана, как я вообще могу работать в IT

Да, я забыл отметить. Есть такое выражение: практика без теории слепа, а теория без практики мертва... Само собой нужно хотя бы один инструмент(набор инструментов) знать, и очень хорошо. Для меня это web — PHP, JS, CSS...

Коментар порушує правила спільноти і видалений модераторами.

Главное не пэхэпе, остальное уже нюансы.

чому така категоричність? невже все так погано?

просто есть такая категория людей, которых PHP видать в детстве обидел.

Я вибрав для себе Пайтон.
До цього програмував на РНР 5 років. Дійсно, РНР дуже сильна мова програмування під веб, але коли коду дуже багато, і в кожного програміста свій стиль написання програм, то читабельність падає (чисто про підтримку програмного коду). В цієї мови дуже низький поріг входження, тобто існує дофіга і трішки гавнокода, так і гарних, вартих уваги рішень.
Рубі мені не сподобався, бо не дуже добра робота в Масдайці (в основному в ній і працюю).
А так, на чому можете на тому і програмуйте.

Хотів би порадити Ruby, але під Windows це не дуже зручно. Якщо розшлянеш варіант переходу на Лінукс/Мак — то дуже раджу глянути на Рубі. Дуже динамічна мова, повністю об’єктна. Під веб є чудовий фреймворк RubyOnRails. Сайти можна робити дуже швидко і якісно. Літератури не багато, але зате вибрати якісну книгу легко :) Раджу почати з ruby.railstutorial.org/...s-tutorial-book

Успіхів у навчанні.

Микола Кирик.

Кстати, Visual Studio 2010 поддерживает IronRuby и IronPhyton и есть тэмплэйты проектов для RubyOnRails которые разворачиваются на IIS

чистое имхо — python. Прост в изучении, хорошее комьюнити, полно документации + есть много фреймворков как для создания веб приложений, так и десктопных. И в том и другом случае все выглядит примерно одинаково. Сам пишу на нем уже год и еще ни разу не пожалел))) Но в любом случае определить что вам больше по душе сможете только опытным путем.

а яка ситуація з книгами? можете щось порадити. можливо, як я вже писав, є якась книга в якій описується створення повноцінного веб-проекту. буду радий вашим порадам

Классная компактная книга по Python с примерами и их описаниями:
«A Byte of Python»
www.swaroopch.com/notes/Python
За подробностями и поддержкой — в личку.

описание создания веб проекта на python я не видел, но из книг могу порекомендовать Лутц — Изучаем Python, и djangobook есть ее вариант на русском. Ну и как писал раньше очень хорошая документация.

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

Про руби ничего не знаю.

Попробуй посмотреть на все три (т.е. написать три простеньких веб-приложения) . Что больше понравиться — то и выбирай.

відверто говорячи я не знаю жодної із цих мов і ось так взяти і написати веб-додаток буде дуже складно.....Якби знайти на DOU людину яка б безкоштовно контролювала (наприклад, ввечері давала завдання: вивчити це і це, написати розв’язок завдання, яке задав контролер в якості підтвердження розуміння теми вивчення) мій процес навчання було б просто чудово.

Якщо ви будете працювати з веб, то можете не хвилюватись, Python є досить поширений у цій галузі. Дуже гарна та функціональна мова. Але маю визнати, що PHP більш поширений (особливу в Україні). Однак тут є одна суттева різниця: вивчивши PHP ви зможете писати лише для веб, Python дозволить вам писати все що завгодно.

Дякую. але я теж звернув увагу на працевлаштування. Певно все ж таки розпочну з PHP, тим паче що є люди які мені допоможуть в освоєнні мови. Надалі я думаю якщо я відчую, що веб програмування «це моє» тоді питання вивчити другу мову буде не таким страшним і важким.

тим паче що є люди які мені допоможуть в освоєнні мови.

Во! С этого надо было начинать.

Тай планую я писати тіки під веб. манить він мене......))))

Python дозволить вам писати все що завгодно.

с одной стороны теоретически, вроде и да. А с другой стороны все равно написание под веб отличается от написания ГУИ приложений и придется учиться заново.

Підписатись на коментарі