Как стать автором
Обновить

Комментарии 388

Здесь должен быть комментарий про отстутствие brainfuck в первом списке.
ИМХО, они маскируются. Пишут на плюсах, яве, пхп, но браинфак-стиль даже не пытаются скрыть.
Призыв к серьёзности успешно провален.
PHP+JavaScript+SQL и знание С — дает основы к безбедному существованию долгие годы! :)
ASP.NET MVC + JS + MSSQL тоже не даст умереть с голоду.
В далеком прошлом программировал на ASP.
Но хостинг был очень дорогой — клиенты были не готовы. В итоге перешел на PHP только из-за наличия заказов и клиентов.
Сейчас ситуация другая.
А Java еще и машину подарит, и квартиру, и дачу)
… а так же, подарят, нервоз, психоз и бессонницу.
p.s. это не к самому языку (JAVA)… а к платформам где его используют, или «пытаются» использовать…
Сначала прочел «навоз».
А вот Objective-C тоже подарит квартиру, машину и тп, но только в другой стране
А чистый Си ещё и позволит полностью перейти на хорошее пиво.
Ерунда это, по-моему, всё. Если я начну писать текущий проект на Си, то меня просто уволят и я умру с голоду. :)
В рунете до сих пор хватает проектов, где пишут на plain C, и разработчиков носят на руках :)
Так какие-то конкретные подзачачи/сервисы, а не весь проект. Или есть примеры полного решения на C?
Что значит «полного», если сейчас практически все большие проекты имеют деление на какой-нибудь большой сишный/плюсовый бэкэнд, скриптовый фронтенд, и клиентский ЖС?

// я не программист, к слову; поэтому нижеследующие слова критически переосмысливайте; с той лишь разницей, что писать я стараюсь объективно

Взять, например Почту или Мой Мир — там критические для быстродействия вещи написаны на Си (и С++), фронтенд серверный на перле (и кажется, питоне где-то), а клиентсайд — ну, как обычно (JS/...)
Или взять проект Tarantool — там тоже на чистом Си очень многое делается. Или взять некие наши внутренние инфраструктурные сервисы работающие с сетью (не программные сервисы имеют в виду, а именно пользовательские) — тоже на чистом Си важные части написаны.
По вашему первому предложения я понял, что у нас различается терминология. Для меня backend — это все, что, образно говоря, висит за балансировщиком внешних запросов (касательно web проектов). В вашей терминологии это захватывает frontend.

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

TaranTool или тот же Redis — это лишь сервисы для скриптового backend. Они могут быть написаны на чем угодно, от этого проект не становится реализованным на C.

VolCh, как я понял, имел ввиду использование C именно для реализации основной бизнес логики, клея, скрепляющего все используемые сервисы. А не то, что, к примеру, взять и написать свой внутренний сервис, складывающий два числа, с которым будет общаться backend.
Не совсем так, но близко. Например, шаблонизацию можно доверить старому доброму PHP, ему же аутентификацию, часть функциональности кэширования и т. п., но прежде всего имел в виду да, бизнес-логику.
Да, конечно, тут от специфики проекта очень всё зависит. Бизнес-логику сейчас принято зашивать во что-то ООПешное/скриптовое. Но в то же время какие-то части проекта пишутся именно на Си (пример: к нам на проект «Мир» вышел сравнительно недавно очень хороший программист, который года полтора на Си развивал систему видеозаписи с ИП-камерами. Там был практически один только Си, хотя и достаточно близко к железу.
Linux Kernel, очевидно же!

У меня к примеру текущий проект — на 50% состоит из кода на C в kernelspace, на 10% — C в userspace + 35% bash и 5% php.

В мире таки не только веб-разработка существует.
Под разработчиками в «рунете» обычно подразумевают отечественные web студии и компании. Исключительно в этом контексте и обсуждалось.
На удивление знание С позволяет еще писать и под мобильные платформы, игровые проекты и очень помогает в быстром переходе на Objective C. Так что с голоду умереть надо бы постараться быть лентяем.
Хороший программист на чём угодно не умрёт с голоду.
С++ + C# + Python + PgSQL — надеюсь позволит заработать хотя бы на корку хлеба. Ну я правда надеюсь…
C++ + ++C
жестко!
тут и камень в сторону плюсов и камешек предыдущему комментатору, и просто уместная шутка с налетом «для тех кто в теме» :)
В самом названии C# камешек в сторону C# — # это те же ++, только растянутые и сдвинутые.
НЛО прилетело и опубликовало эту надпись здесь
Удивлен, что многие _стремятся_ использовать C++.
Меня тоже удивило. Как вариант — голосуют школьники и студенты, которые изучают C++. Их доля может быть больше, чем кажется (в опросах на Хабре могут голосовать read-only пользователи).
бело бы интересно посмотреть на различия в голосах между реад онли о обычными пользователями.
Нужно сделать аналогичное голосование в группе вконтакте.
По результатам интернет-голосования стало известно, что интернетом пользуются 100% респондентов.
Каким-то языком пользуются 100% респондентов? Ваше фраза здесь неуместна.
Действительно, прошу прощения, я не верно Вас понял.
А кто более обычен? Ридонли примерно в 2 раза больше, чем «обычных».
Вы не правы, мне 30 и я стараюсь использовать С++, где требуется что-то более продуктивное, чем PHP.
Я не утверждал, что все 625 человек, которые стремятся использовать C++ — школьники и студенты. Но 100-200 из них — вполне возможно.
Меня обучали перлу, а C++ я начал учить по собственному желанию, использовал только открытую информацию из сети. Wt, boost и Qt выглядят очень заманчиво, чтобы хотя бы ради них изучить плюсы. На момент голосования я уже не студент. Можно ли меня отнести к этим 100-200?
Нет, я имел ввиду тех, кто учит C++ именно на уроках и парах, олимпиады пишет на нем.
Я слышал, на уроках и парах самый частый язык это Pascal. Пытаются заменить его на Python. Доля C++ на уроках и парах мала, но есть. За рубежом, кажется, изучают Java.
От Паскаля даже школьники плюются, а C++ считается чем-то крутым.
Школьники от всего плюются, от литературы, математики и даже музыки. Лично я считаю Паскаль отличным языком для знакомства с основами программирования.
С другой стороны у некоторых и это не преподают. Во многих местах бейсик, с редактором года 90го
А учитывая, что в среднем на информатику уделяется 45м\неделю сомневаюсь что можно изучить хоть что то.
И конечно не на Моно? :(
В моем провинциальном институте для студентов-программистов стоят Целероны на 1,5 ГГц с 256 Мб ОЗУ.
На них крутится лицензия Vusual Studio 2005.
Старшим курсам пофигу, все с ноутами, а вот маленькие страдают. Я предложил переехать на SharpDevelop (сам на нем сижу), хотя бы на 3 версию.
Сказали «Отличная идея! Летом займемся!».

А теперь внимание вопрос — Сколько было фейспалмов, пока Вы читали этот коммент?
А почему студенты _должны стремиться_ писать на C++. Если их обучают этому языку, то это не значит, что он им нравится.
Ну, например, я пишу на C++ + Java, но тоже «стремлюсь использовать C++», т.к. имел в виду переход на Qt для GUI (вместо JavaFX). Возможно имеется в виду что-то подобное.
Я бы с удольствием ковырял бы какой-нибудь древний проект на С++, лишь бы не писать тупые сайты на PHP.
На работе «тупые сайты»
Дома — ковыряние.
Если хорошо наковыряешь то однажды на работу не выйдешь =)
Советую посмотреть на функциональщину, после нее ковырять C++/Java «для себя» у меня лично пропало желание.
После нее у всех вменяемых программистов ковырять C++/Java желание пропадает.
Именно. Я теперь вообще не представляю, как можно жить полной жинью без вменяемых лямбд и функций первого порядка
Подождите, но в C++ и Java это всё есть (ну иногда с оговорками, но есть)!
Видимо для предыдущего комментатора критично «вменяемых». Я тоже использую вот лямбды в плюсах и вроде доволен.
btnOk.setOnClickListener(new OnClickListener() {
       @Override
       public void onClick(View v) {

       }
});


Это просто прекрасно
Лямбды сейчас есть почти везде.
А вот pattern matching и библиотек работы с иммутабельными контейнерами в популярных языках не хватает…
Ну не знаю, я неплохо знаю Haskell, Scheme, Clojure, Scala, etc. Тем не менее, с удовольствием пишу на C++, в том числе «для себя». Красота же в приложениях, а не в языках.
Как вариант — можно попробовать найти работу, где нужно писать на PHP, но не писать тупые сайты.
в узком диапазоне не на долго — может быть…
а в широком — это язык… да не язык… скрипт для генрации HTML.
Не соглашусь. За последние 6 лет написал лишь пару говносайтиков (друзья просили). На основной работе это крупные бизнес проекты, которые далеки от понятия «тупого сайта».
Аналогичный ответ подойдет и для генерации HTML. Дело в том, что PHP действительно дает возможность потратив минимум услилий написать какой-то сайт (сгенерировать HTML, как вы выразились). Но это ни коем образом не говорит о том, что он для этого предназначен, и только для этого его можно использовать.
Но это ни коем образом не говорит о том, что сейчас он для этого предназначен

fixed
Вы используете БД. Делаете SQL запросы и генерируете на основе них HTML?
Да, этим мы тоже иногда занимаемся. А еще например у нас есть огромное серверное апи, с которым работают мобильные клиенты. Или серверные обработчики, работающие как с sql, так и с mongo, sphinx, hdfs и иже с ними, и позволяющие строить няшные отчеты по миллионам записей данных. Того, что генерирует html, по сравнению с остальным функционалом — ну очень мало.
Почему нет? Я вот тоже стремлюсь (хотя в голосовании не отметил, поскольку давно не писал на нем), предлагая время от времени те или иные сервисы реализовать на «плюсах», но поддержки не получаю.
А задачи действительно требуют чего-то подобного C++? Или это просто желание попробовать что-то новое?
Ну, на PHP их реализовать затруднительно.
Вы не поверите но да — я люблю С++, будь мне тысяча минусов в карму, на работе пишу на Обжектив Си, а в хобби проектах, и иногда в работе (где возможно использую С++), я наверное люблю этот язык той любовью которой любят, Ди, Хаскел, Кложур, Ерланг — он не ассоциируется с рутиной работы (основной работы), а на нем пишеш только любимы и интересные тебе хобби проекты.
Ну почему же, мне ничего не мешает любить и OTP/Erlang и плюсы. У каждого своя красота.
Современные идиоматические плюсы (с RAII и лямбдами) — очень элегантная и удобная штука. Раньше еще была головная боль с отладчиками, но нынче и здесь все очень хорошо.
А что не так? Мне тяжелые многопоточные вычисления не на JS же программировать. Тут C++ как раз самый удобный вариант, так как с одной стороный довольно быстрый и эффективный, с другой C++11 дает большоё количество новомодных фич типа лямбд, for each и прочего. Так что стремлюсь использовать. :)
C++, особенно с учётом нововведений C++11, и если уметь его правильно использовать — вполне достойный язык. Не говоря уже о близком к оптимальному быстродействию.
На работе используется движок на С-подобном синтаксисе.
Сказать, что наши программисты используют С++ невозможно. За отсутствием ссылок, ссылочной арифметики и прямого доступа к памяти. Но они стремятся его использовать, переписывая во внешние библиотеки критически важные места :-)
В первом опросе SQL не выйдет даже в десятку (на прошлой работе я б его смело выбрал), хотя большая часть его всё-таки использует.
Зато во втором отыгрался.
+1 голос за SQL во втором вопросе от меня. Забыл отметить.

А переголосовать хотя бы в первую минуту, жаль, нельзя.
Существуют веб-сайты, которые целиком написаны на SQL'е. Один мой знакомый, работавший в одной крупной американской корпорации, увидел подобное где-то год назад, и до сих пор находится под впечатлением (хотя из этой корпорации он уже давно сбежал).
Да я верю, сам баловался с SQL Anywhere, благо он это позволяет установив один только sql-сервер. Но со стороны это больше похоже на CGI.
Интересно посмотреть как статисктика коррелирует с TIOBE.
НЛО прилетело и опубликовало эту надпись здесь
Сейчас программист, знающий только один язык — нонсенс. Поэтому в опросе нужен множественный выбор для каждого варианта. Поэтому так и голосуют — 1, 2 и третий язык. А что там автор опроса подразумевал под вариантами — мало кого волнует :) imho.
Я _не посмел_ С выбрать третьим, он, конечно, основа, но на чистом С не пишу уже лет 10.
Python. В качестве хобби, не для вэба
Кстати, вот «для жизни» зарабатываю на (смотря какое предназначение) C/PHP/Shell/SQL, но «для души» решил выбрать что-то «модное» (ну раз модное — должны же быть причины). Метался между Ruby и Python… И потом склонился к питону по необычной причине — больше веселых необычных интересных проектов написаны на нем. На руби конечно есть рельсы и они охрененно круты, но это один плюс, хоть и большой. Мне показалось, что программистам (которые знают скорее всего и то и другое) приятнее что-то делать на питоне.

Мне интересно, почему другие люди выбирают питон или руби? Не хочу холивар разводить о том, что «лучше», вопрос как-бы не про техническую сторону, а больше про психологическую. Типа «В питоне отступы имеют значение. (Это конечно фигня, но меня это так бесит, что для меня — однозначно он не вариант, так что руби) „
Руби. Почему? Годится и для души, и для заработать (для последнего кстати намного лучше, чем PHP — те деньги, которые я в последнее время на нём зарабатываю, PHP-шникам просто нигде не предлагают).
А дилемма между руби-питоном была? Что оказалось главным козырем? (все равно же похожи они сильно).

бОльшие денги на руби — случайно не потому ли, что руби сейчас в моде, и за него готовы платить больше за тот же результат?
1) Дилема была, но перевесила прагматика: больше хороших проектов + лучше фреймворк (Rails всё же сильно впереди по возможностям по сравнению с Django); если бы выбирал только по велению души, то даже не знаю, языки действительно похожи и оба нравятся, у каждого свои плюсы-минусы
2) Тут другая ситуация: на Ruby обычно пишутся проекты, которые на PHP стартовать нет никакого смысла (с большой вероятностью они просто не дойдут до релиза в этом случае), то есть там даже сравнивать нечего
Есть крупные web-проекты, которые слазят с RoR в пользу каких-либо Python-оберток из-за тормозов при запуске и потребления памяти первой. Сравнивали ли вы в таком контексте? Сахарок в синтаксисе, либы… это все отходит на второй план, когда на проект приходят пользователи.
Обычно не отходит. Разработчики стоят дорого, дороже, чем оборудование. Поэтому как правило проще докупить серверных мощностей, чем нанять дополнительные n человек в команду.
Но вполне допускаю, что бывают исключения.
У последнего подобного проекта post factum был выбор или держать в два раза больше серверов или текущая команда пишет на python.
Мне просто как-то с трудом верится, что RoR настолько отстает в некоторых задачах. Такой же популярный. А сам его не знаю, сравнить не могу.
Тут всё зависит от соотношения посещаемости и сложности проекта. Если посещаемость высокая, а сложность средняя, то да, производительность критичнее удобства разработки.
Ну проекты с нагрузкой меньше абстрактных 500к-1кк обращений в сутки на одну машину можно писать почти как хочется.

Я понял вашу ситуацию с Ruby. Думаю, можно завершить дискуссию, а то не по теме опроса.
Нет, дело именно в соотношении, а не в абсолютных величинах. Низконагруженный проект действительно можно писать на чём хочется (и тут Ruby/Rails в фаворитах за счёт удобства). Но и с высоконагруженными может быть та же ситуация при очень высокой сложности, когда докупка оборудования будет окупаться за счёт меньшей стоимости разработки и поддержки.
те деньги, которые я в последнее время на нём зарабатываю, PHP-шникам просто нигде не предлагают

Может вы просто умеете зарабатывать?
В каком-то смысле. Но мне есть с чем сравнивать, PHP я знаю и какое-то время пытался искать проекты по обоим направлениям. Потом просто плюнул на PHP — совсем другие суммы.
Странно, когда я искал проекты на Ruby, то вообще не мог их найти. Вакансии были, но вот именно проектов нет.
Ну я просто не в России ищу, какая ситуация на местном рынке сказать не могу.
А-а, тогда вопросов больше нет.
Чтобы уж совсем правильно быть понятым: живу я в России, но работаю удалённо по большей части на США. Вот в США ситуация такая, как я описал: серьёзные проекты стартуют на Ruby, Python, иногда Node.js. При этом разброс цен между PHP и Ruby большой.
Что творится здесь у нас, давно не интересовался, но думаю, ситуация рано или поздно придёт к тому же.
Да собственно где жить сейчас в этом плане разницы нет. Разве что понятия серьезного проекта могут отличаться.
Не придет. Просто потому что работающий проект переписывать на новую платформу ни кто не будет и да, PHP разработчики обойдутся банально дешевле.
Так а при чём здесь работающий проект? Новых-то никто не пишет разве?
По поводу дешевизны — по-вашему в США люди не умеют считать деньги?
Новые конечно пишут. А в немелком проекте кроме выбора платформы что еще нужно брать в расчет? А в расчет приходится брать соображение «а где взять людей и сколько они обойдутся в момент запуска проект и по мере ротирования комманды». Возникает проблема яиц и курицы.

Я думаю умеют. И там даже наверняка есть экспертиза и технические наработки позволяющие с высокой степень уверенности говорить и что использование X вместо Y даст профит в Z к$. А тут «ответить бабками» за выбор экзотической платформы мало кто готов ответить. А кто и был бы готов не обладает нужным объемом последних.
Может это вы плохо ищете? Каждую неделю по несколько проектов — rubyjobs.ru да и в гугл группе работы полно.
Может. Ищу (вернее искал) я прежде всего на фриланс сайтах.
На ODesk так же без проблем, Elance — крупнейшие фриланс сайты.
Забыл указать, что на русскоязычных :)
Вообще это вкусовщина конечно, оба языка хороши, но лично мне Python нравится больше Ruby тем, что там на мой взгляд в нем меньше «магии». Хотя Ruby наверное более выразителен как раз за счет нее. В общем все дело в приоритетах.
Согласен, дело чисто внутреннего комфорта и предпочитаемого инструментария.
Но «магия» Ruby пропадает когда изучаешь язык и окружение, понимаешь, что «магия» — это лишь простые, динамически созданные методы, жить становится сразу легче :)
Да я не против магии, я имел в виду лишь, что это дело вкуса. Кто-то любит, когда много синтаксического сахара, а кто-то предпочитает чтобы все было максимально однозначно и прозрачно.
Ну а я к тому, что «магии» нет в языке, это лишь по незнанию, а так все можно проследить откуда и что взялось.
В некоторых языках прослеживать проще чем в других.
Как выше VolCh сказал, под магией я имею в виду просто обилие синтаксического сахара, а не вещи в которых в принципе невозможно разобраться. Это удобно, но ценой усложнения понимания. Для меня в этом смысле Python лучше, для вас Ruby
Я схожим образом проголосовал. Мой основной язык на работе C#, иногда приходится и JavaScript использовать. В качестве языка, который я «стремлюсь» использовать выбрал C++, но, «стремлюсь» = «желаю получше в нем разобраться» (хотя, достаточно давно его не использовал). Не прочитал я пост целиком, поэтому сразу пошел отмечаться в опросах.
Этакая де-вебификация?
Это мечты «сделаю сайт недорого» стать Настоящим Программистом :)
Очень опасный для кармы комментарий при таких трендах :)
Да, я заметил :)

Но всё равно не предам Мечту Программировать на Си!
А вы не мечтайте, начните потихоньку. В мире Linux например множество opensource проектов, которые с удовольствием принимают патчи.
Я не нашёл пока интересного и полезного мне (такого, которым бы я сам пользовался) кроссплатформенного (линукс у меня только на работе) проекта. Можете что-нибудь подсказать?
Да ладно, я недавно на одной встрече по javascript был, так там прямо слайд был «фронтендщик — не программист»
У честного человека много кармы не бывает.
Я Python'ом хочу попытаться заменить MatLAB.

Ну, и к слову — ассемблеры (всякого рода, штук пять) для встроенных систем, C для драйвера и библиотек подключения, Delphi/Lazarus для отладочного софта (ибо реально очень быстро строгается GUI). Хочу освоить Java, потому что хотелось бы иметь порты отладочного софта под Android, возможно, так будет проще. MatLAB для моделирования того, что потом ляжет в основу ассемблера.
Ну, в андроиде джава не такая сложная, без обязательных хибернейтов и т.п., можно пол-книжки прочитать и смело кодить.
Вот такие кодят потом, а телефон с их софта за полдня садится.
Ну так взлетит апликуха — тогда уже и будут оптимизировать. А поначалу, пока она ещё не принесла денежку и костыль сойдёт.
Обоснуйте. Я почему-то уверен, что если у вас достаточно опыта (не 1995 года рождения), то без знания специфик самой по себе джавы, но представляя специфику Android-приложений можно вполне себе написать хорошее приложение. Которое не садит батарею.
И причем тут глубокие знания джавы? Что андроидов много, и разработка геморрой — всем давно известно.
да не причем… Мы же все тут «для души» програмим… для удовольствия…
Пол книжки прочитал и вперед… а те кто 10+ лет дубасят и узнают для себя что то новое, это не в счет.
Причем здесь для души, я почти 5 лет в мобильной разработке, и разрабатывал преимущественно коммерческие приложения, для себя — только два за все время. По-вашему нужно 10 лет опыта в энтерпрайзе, чтобы начинать писать под андроид? Или как?
Если вы 5 лет разрабатываете, то странно слышать фразы про пол книжки.
Может у вас книжка особенная.
5 лет под iOS и Android.

Ну да, именно по платформе iOS я прочитал пол-книжки в 2009 году, все остальное — SO, блоги, видосы с WWDC, официальная эпловая документация. И как бы не жалуюсь на недостаток профессионализма. Не думаю, что стал бы умнее, прочитав 10 книг по iOS, в которых авторы раз за разом начинают с азов и вольно пересказывают оф. доки.

Конечно, совсем другое дело — книжки вроде «Совершенного кода» или «Мифического человеко-месяца», которые нужно читать и перечитывать от корки до корки. Такие книжки я читаю.
Потому что такое отношение, «нахаляву» — или как вы интерпретировали это: «можно пол-книжки прочитать и смело кодить» — приводит к последствиям, о которых я упомянул выше.

Также хочу заметить, что мой комментарий не относился лично к вам, как программисту, я вам не грубил, как вы утверждаете в ЛС. И тем более я не «малолетний кретин» (ну по крайней мерее не кретин, если вы считаете первокурсников малолетками). Что касается моих проектов, вот пожалйста: bitbucket.org/alexeyknyshev/ogrebullet, bitbucket.org/alexeyknyshev/ve, и ещё пара закрытых проектов, в которых я участвовал. Да я признаю, что есть только один проект, который на данном этапе вышел на стадию поддержки (первый линк), возможно причиной стало моё «малолетство», кто знает.

А телефон с Андроидом я сам себе купил на честно заработанные деньги кодингом на плюсах (Qt), мамка моя в этом участия не принимала, хотя не смею отрицать, что живу за счет родителей, ибо 1 курс МИФИ факультета К весьма сложный, что не позволяет мне работать и полностью содержать себя.

П.С одно очко кармы не стоит пары сотен тысяч ваших униполярных нейронов.
Уже пару месяцев вынужденно ковыряю андроид. Вот не сказал бы, что так все просто. Прочитал книжки 4 где-то и кучу онлайн ресурсов.

p.s. Самой лучшей «книжкой» оказался SO.
Так конечно, если б андроид был логичен, и всегда можно было ожидать того, что ты просишь — хватило бы книжки. А так как он построен на исключениях и неявном поведении, нужен сборник исключительных ситуаций с удобным поиском — Google + SO :)
У меня пока сложилось мнение, что android sdk это коллекция исключений, костылей и сломанных обратных совместимостей.
Да и особенности java докидывают еще граблей :)
Так и есть по сути. Не думаю, что какие-то книжки от этого уберегут!
А вообще, почему именно андроид? Не лучше ли iOS?
Мне по работе этим заниматься приходится. Хоть я и backend/серверный разработчик, но тут или мне прогу под android делать, или ее на outsourcing отдавать. Это так, ПО для побочного подпроекта.
А выбрана более распространенная мобильная платформа. Если будет спрос, возможно буду и ObjC изучать :)
У меня особой нужды в программировании по Андроид не было, поэтому я долго тянул. Думал, что полдня потрачу на установку и настройку. А оказалось, что сейчас, чтобы «Hello, World» оказался в телефоне нужно нажать кнопку «скачать SDK», запустить, нажать «сделать приложение», запустить. Все. Можно визуально покидать компоненты, назначить им обработчики. Для быстрого старта сделано очень здорово, попробуйте :)
У меня софт специфический, надо к железу лезть, через драйвера. Самописные, причем.
это была шутка? да?
А какие задачи вы решаете в MatLab, что можете его заменить Python?
Математическое моделирование обработки сигналов. Это самое частое. Плюс обработка результатов экспериментов, собственно, тоже обработка сигналов.
Проголосовал именно так (ну разве что Python в используемых).
На работе пишу в основном на C# под веб.
В свободное время занимаюсь мультимедией, а там в принципе исключительно С(++).
За python нужно садить принудительно, чтоб потом на любом языке не возникало желания все вместить в одну строку!
C Perl'ом перепутали?
В любом случае — у любого языка есть своя область использования, завязывайте с юношеским максимализмом.
С учетом того, что даже довольно невинная конструкция if condition: return не поощряется стандартом PEP8.
PEP8 никто не обязывает соблюдать. Лишь рекомендуют.
Это пока код пишется для себя «в стол».
Нет, это пока не будешь вынужден следовать рекомендациям.
Если код пишется не в одиночку, то уже нужен единый стиль. А чем придумывать свой, почему бы не взять PEP?
Да и даже если в одиночку, но на публичный доступ, тоже было бы неплохо соблюдать стандарты.
А чем придумывать свой, почему бы не взять PEP?

Во многих языках есть много стилей — зачем-то же люди их придумывают.
В тех языках, с которыми сталкивался, есть 1-5 распространенных вариантов. Взять бы один из них.
Мне как-то казалось, что есть по паре тройке вариантов различных нюансов типа скобок или пробелов-табов, а затем вступает в дело комбинаторика.
Комментарии, модификаторы методов, именование переменных/меток… И вот разные комбинации выливаются в разные стили.

Я для себя стараюсь поддерживаться основного применяемого в ЯП стандарта. Если их несколько — выбираю наиболее понравившийся. Но не делаю «легкое» ответвление/комбинирование нескольких. Мне не сложно писать именно так, хотя стандарты некоторых языков мне кажутся ужасными :)
Я сперва понял примерно так: «За использование python нужно сажать (в тюрьму), потому что из за него...» и далее по тексту. Перечитал еще пару раз, потому что фигня получается. Потом только понял… Автор-то имел в виду, что python приучает к хорошему стилю кода! «за него» != «из-за него»
Похоже, salopot пал жертвой крайне неудачной формулировки :) Мысль-то хорошая.
Сейчас изучаю python и глаза не могут нарадоваться доступности и лаконичности кода. И ведь в душе понимаю что так можно писать на любом языке. Ой как мне этого не хватает на работе…

ps. Вот если бы я постиг такой доступности в естественном общении, то мой комментарий восприняли бы по другому. Это кстати типичный пример того как оформление влияет на понимание. И в этом мне с python'ом не сравняться
Мужик, твоя жертва была не напрасна. Питон хорош, да. Плюсы перевесят! :)
Пал смертью «не вразумительных».
Но если это хоть как-то поможет питону я готов!
Из-за вашего невразумительного камента пал смертью я, потому что прочитал как «за использование Python сажать в тюрьму» :(
Опять двусмысленный коммент. Плюсы бывают разные)
Эх, помню я программистов, среди которых считалось хорошим тоном узнавать «в глаза» самые популярные one-liner'ы. Конечно, это плохо коррелирует со «знанием» 18 JavaScript фрейморков, которое я часто вижу теперь.

Все должно быть в меру.
Python очень успешно применяется в веб-программировании (Django, Tornado, Flask, Twisted etc.), да и просто как калькулятор и вспомогательный инструмент Python заслуживает быть известным среди программистов )
Python это в т.ч. веб, в моем случае половина сервер-сайда на JS, вторая на Python.
C++ это вычислительные модули для Node.js и CPython, так что получается тоже для веба.
На чистом C++ можно неплохие веб-интерфейсы делать.

Интересно, что Python и C++ в качестве основного и дополнительного языков занимает не столь высокие позиции, как в качестве желаемого языка. Оба активно развиваются, взять хотя бы статьи про C++14. Мне кажется, что C++ и Python это отличная пара. На месте Python может стоять JS, зависит от задачи и наличия готовых библиотек.
Пишу в основном на PHP (+JS, +SQL, +shell), стремлюсь на C, Python и больше shell'a.

C — просто любимый язык. Это почти чистая математика :) На нем учился программировать (я не про школьный паскаль, конечно), и сейчас редко, но пишу мелкие штуки, если приходится на основных проектах. Просто кайф, хочется больше.

Shell — на нем часто задачи решаются намного быстрее, чем на PHP, и решения работают быстрее. Поэтому если попадаю на фулстек проект — стремлюсь выносить туда всё, что имеет смысл вынести. Хочется больше фулстек проектов.

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

А веб-стек PHP+JS вообще недолюбливаю, но «так исторически сложилось», уже много лет на нем и с ним я сейчас зарабатываю на порядок больше, чем будет в ближайшие годы, если перепрыгну на что-то другое. Благо, вроде, чего-то умею, и симпатии к технологии не сильно коррелируют с навыком.
Python — единственный из списка, которого вообще не знаю. Когда хочется чего-то нового, думаю о нем.

… и вздыхаю со светлой грустью… Встретимся ли мы с тобой когда-нибудь, любимый? Или так и будем всю жизнь — вместе только в мечтах? :)
Мой случай вы описали достаточно точно. Хочу слезть с PHP, поэтому собственные проекты и задачи решаю на плюсах.
А что вас смущает?

В свободное время с большим удовольствием использую Python везде где только можно, будь моя воля — всё бы писал на нём, и сайты, и игры, и операционные системы, и BIOS и всю свою бытовую технику дома перевёл бы на него. Также с интересом посматриваю на D, но пока огорчает его непопулярность среди широких пролетарских масс.

Но суровая реальность и рынок вакансий в моём городе диктуют свои условия, поэтому в реальной жизни я морщусь, но кодирую на PHP/JS/SQL.
Скажите почему разработка на Python стоит дороже чем на PHP.
Скажем, я рядовой заказчик и мне нужен результат. И не важно как он будет реализован.
Не будем брать «говно-сайт за копейки», но при всех равных задачах почему то разработка на Python выходит дороже.
Это из личного опыта.
Разработка стоит, примерно, столько же. Отношение времени выполнения заказа к стоимости часа работы специалиста примерно постоянны и диктуются рынком.
Потому что PHP специально сделан для того, чтобы на нём было можно быстро и непринуждённо создать кучу дерьма. Да-да, именно дерьма ибо его настоятельное желание «помочь программисту» приводит к тому, что быстро получается только продукт, который кое-как работает пока никто не делает View Source и не пытается «тыкать палочкой» (посылать raw-запросы на сервер) и затем очень долго и нудно приходится его «доводить до ума» (или вообще переписывать заново) если хочется получения нормального продукта.

Большинство заказчиков не то, что не хочет получить нормальный продукт, они хотят, но в большинстве случаев они узнают об CSRF, RA, XSS и тому подобном даже не после того, как она уже договарятся о создании сайта, а тогда уже, когда обнаружат убытки из-за того, что их взломали и куча заказов ушла без оплаты. А ликвидация последствий проходит уже по другой статье расходов.

Потому PHP рулит и будет рулить в обозримом будущем.
«кучу дерьма» можно сделать на любом ЯП.
Ценится не ЯП а опыт самого разработчика.
Я не защищаю PHP. Просто если твой метод разработки крутой на столько, что уже не нужно париться на счет CSRF, RA, XSS… твой ЯП позволяет с легкостью разрабатывать приложения с меньшими затратами то welcome — ты можешь порвать PHP.
А по сути ситуация такая (для примера):
— Мы пишем только Ruby, это модно и круто и дороже на x3
— А как это поможет моему бизнесу.
— …
В Python все очень стандартизированно. Делай так или умри. Можно конечно постараться, очень изварится и попытаться сделать через нехорошее место, но надо очень постараться. А пэхэпе это может выйти случайно, ненароком.
Это если стандарты читал, запомнил, да ещё и сумел распознать, что в данном месте следует конкретный стандарт применять.
В php есть несколько методов по работе с одной и той же задачей. В Python стараются оставить только один рабочий вариант, такова его идеология.
Насколько мне помнится идеология несколько другая — есть один способ хорошо решить задачу. Вот только для определения хороший ты способ выбрал или нет этого принципа не хватает. Так же как в PHP всё зависит от опыта или интуиции или исследований различных способ по критическим меркам.
Это именно в php так, что есть только один способ хорошо решить задачу и это означает, что есть еще целый набор других инструментов. Именно из-за этого в php такое творится. Когда приходит новый программер, он может нахваться плохих вариантов и у него тем не менее все будет работать.
В Python же стараются убрать дублирующие варианты и оставить один правильный. Делай так или не будет работать вообще. Отсюда и код такой красивый. Иногда в Python встречается ужасный кодинг, но чтобы прийти к такому ужасу, это надо сознательно делать со злым умыслом.
Нет, в PHP обычно много способов решить задачу, но они отвечают разным критериям «хорошести». Какой-то проще читать, какой-то проще писать, какой-то быстрее, какой-то меньше ест памяти, какой-то допускает мало утечек при работе в режиме демона.

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

Насчет Пайтона. Делай так или умри. Вот так работает Пайтон. А злой умысел, это когда нужно начальству показать большую работу и код растягивают при помощи пустых классов.
Нет, не повторил. В Питоне (считается), что есть один способ хороший, а остальные плохие (никто не запрещает мне не использовать, например, декораторы там где они идеально подходят), в PHP же считается, что разные способы оптимизированы под разные критерии.

А если просто считаешь, что код с функциями менее читаем чем код с классами из одного метода? Это, кстати, хороший пример разницы между идеологиями. Я вот смотрю на чужой популярный питон код и любуюсь, пишу свой и не вижу отличий (кроме чисто синтаксических, конечно) от своего кода на PHP. Я не пишу его со злым умыслом, просто мне, например, не приходит в голову использовать списки, кортежи или множества, там где я вижу, что задачу можно решить с помощью привычного ассоциативного массива словаря.
Признаюсь вам, я php знаю хуже, чем Python. И мне очень трудно дается изучение пэхэпэ после пайтона. Вся моя сущность бастует, когда я понимаю, что на пайтоне я могу сделать тоже самое, но более красиво, удобно, и быстро, чем на php.
Ну а я Python знаю хуже PHP и когда пишу код на Python, то понимаю, что синтаксический сахар не веская причина переходить на Python — код почти не отличается, а мороки больше :)
Каждый день обещаю себе начать пить кофе без сахара. Но сахар, создает такую «зону комфорта», что соскочить не получается. Как аналогия к вашему примеру, синтаксический сахар создает мне «зону комфорта» в программировании. Еще одно свойства сахара, что вкус напитка полностью меняется. То же самое как в любом строительстве. Можно гвозди забивать булыжником, а можно молотком. Вроде бы разница не большая, и молоток можно назвать тюнинговой версией булыжника, но эта разница влияет на скорость построения всего дома.
По-моему, от языков примерно одного уровня сложно ожидать повышения производительности. Больше времени уходит на формулировки задач, алгоритмизацию и т. п. и лишь минимум на собственно реализацию.
Имхо, есть ещё вопрос применимости конкретного языка к конкретным задачам, причем тут ещё в силу может вступать даже не сам язык, а какие-то общедоступные библиотеки/фреймворки к нему.
Ну да. Я имел в виду те задачи для которых PHP и Ruby на мой взгляд подходят одинаково. Прежде всего прослойки между браузером и СУБД :)
не переживайте) пара месяцев — и ваш питон-код сильно подтянется и станет красивым. Разрыв с php сильно увеличится.
Всё зависит от задач и масштабов проекта.
Небольшие сайты по множеству причин лучше писать на PHP (инфраструктура, большое количество недорогой рабочей силы и т.д.).
Большие проекты — на Ruby/Python (сам пишу на Ruby).
Как это поможет вашему бизнесу? Да просто: на Ruby такой проект будет написан и сдан (в срок или не в срок — вопрос открытый, но с большой вероятностью одной командой), на PHP вы смените 5 команд работающих за еду студентов и в конце концов или не получите ничего, или получите глючного кошмарного монстра с опозданием на 2 года и 30% заявленной изначально функциональности.
А почему бы не нанимать специалистов за туже зарплату, что и рубистов, а не студентов? По-моему, если нанять работающих за еду студентов, то результат будет мало зависеть от языка :)
Два момента:
1) на руби пока (к счастью) таковых почти нет; мне не встречались по крайней мере
2) PHP в общем упрощает жизнь на небольших проектах и усложняет на крупных, поэтому тренд состоит в том, что хорошие специалисты с него уходят, то есть найти их на PHP просто сложнее
Ну и в дополнение: собственно, да, цена сама по себе неплахая подстраховка от низкого качества исполнения. Поэтому я просто отвечал на вопрос в том виде, в котором он был задан (зачем платить больше).
Потом, давайте предположим, что один и тот же человек (или команда) за одни и те же деньги готов писать на PHP и Ruby.
Можете мне поверить, на Ruby этот проект (если мы условились, что речь о большом проекте, а не о сайте-визитке) будет написан быстрее и дешевле (Ruby в отличие от PHP не мешает разрабатывать, то есть вы просто пишете код, а не героически боретесь с инструментарием).
То есть при одном и том же уровне разработчиков сэкономить на использовании PHP (о чём и был исходный вопрос) никак не получится. Единственный способ сделать такой проект дешевле — это нанять разработчиков более низкой квалификации. Ну а дальше результаты будут те, которые я описал чуть выше.
За счет чего будет выигрыш конкретно? Синтаксический сахар? Полная объектность? Метапрограммирование? Что из этого поможет быстрее описать бизнес-логику?

Ну и все же вроде считается, что Ruby программист стоит дороже PHP того же уровня, поскольку больше соотношение спрос/предложение.
За счет чего будет выигрыш конкретно? Синтаксический сахар? Полная объектность? Метапрограммирование? Что из этого поможет быстрее описать бизнес-логику?

А зачем по-вашему всё это нужно если не для ускорения разработки? Всё это помогает быстрее писать бизнес-логику в конечном счёте, то есть если мы включаем сюда и время на исправление багов.
Ну и все же вроде считается, что Ruby программист стоит дороже PHP того же уровня, поскольку больше соотношение спрос/предложение.

Это верно до определённого момента. Смотрите, имеем хорошего программиста, который знает, что за Ruby платят больше. Какой смысл ему оставаться на PHP? А никакого (или у кого-то эстетические предпочтения такие?). Итого: верхушка гарантированно конвертируется в рубистов/питонистов/кого-там-ещё (Node JS и Go наверное). Ну скажем верхние 2%. Если опускаемся уровнем ниже (верхние 10%), там да, вполне возможно, что они будут обходиться дешевле, чем рубисты аналогичного уровня (но опять же — приплюсуйте сюда то, что на Ruby/Rails разработка будет быстрее, и получится, что итоговая сумма будет примерно та же), но тех самых верхних 2% на PHP просто нет. Ладно, могут быть отдельные уникумы, которые сильно выросли за время работы над единственным проектом своей жизни, ценятся там на вес золота и никуда уходить не собираются, но это совсем другой разговор, на новый проект вы их всё равно ничем не переманите.
Какой смысл ему оставаться на PHP?

1) Переход на новый язык обычно сопровождается переходом в новую фирму с понижением в должности и/или зарплатой. Был хорошим миддлом и сеньором, стал не самым лучшим юниором (опыт PHP говорят может вредить, а не помогать постигать новый *-way)
2) Уровень проекта тоже вполне может упасть
3) Новичку в любом случае вряд ли достанутся интересные и ответственные задачи
4) Это в любом случае перемены не только технические, но и социальные, а перемены не всех привлекают, ведь перемены это всегда риски.

В общем в «гарантировано» я бы не был столь уверен.
Можно же начать с фриланса по 10 часов в неделю в нерабочее время. За полгода такой работы набирётся вполне приличный опыт (с учётом того, что бэкграунд ненулевой, ну и мы же о верхушке говорим, то есть о людях по определению способных к обучению). Ну а дальше переходить на фулл-тайм уже с повышением дохода и т.д. Так что нет этой проблемы.
Можно, но это выход из зоны комфорта. Только ради денег, особенно когда и так имеющийся доход устраивает, не каждый будет его совершать.
Смотрите, имеем хорошего программиста, который знает, что за Ruby платят больше. Какой смысл ему оставаться на PHP?

Если ему Ruby не нравится, то не смотря на большие плюшки толковый разработчик вполне может остаться на ЯП, который ему нравится больше.
Если ему Ruby не нравится, то не смотря на большие плюшки толковый разработчик вполне может остаться на ЯП, который ему нравится больше.

Это безусловно, я просто не верю, что есть хорошие программисты, которым PHP может нравиться.
У PHP вообще нет плюсов? Или эти плюсы в любой ситуации при любых условиях не могут даже в теории превзойти минусы?
У PHP как языка есть всего один плюс, напрямую связанный с историей его возникновения — возможность быстро сделать полустатический сайт, например, 10 статических страниц + 1 форма обратной связи. На PHP достаточно добавить к статической вёрстке (взятой без изменений прямо от верстальщика) 30 строчек кода, и сайт готов. Это очень удобно в отдельных случаях.
У PHP как у платформы разработки есть плюс в виде развитой инфраструктуры, но это немного другой разговор, вопрос-то был о языке и эстетических предпочтениях программиста, что к инфраструктуре отношения не имеет.
Ну а я вижу у PHP больше плюсов, даже если не брать во внимание инфраструктуру-экосистему. Или особенно если не брать. Но имея в виду основной круг моих задач, заключающийся в формировании текстовых файлов на основе информации в БД и изменение БД на основе входящей текстовой информации.
Какие? Вот вас ещё попрошу тогда их назвать. А то ниже мне тоже сказали про плюсы, но на вопрос какие именно я так ответа и не получил. Под плюсами имею в виду плюсы на фоне других динамических языков — то есть что умеет PHP такого, чего не умеют например Ruby и Python? Ну или что на нём удобнее делать?
Шаблонизировать :) Более ярко выраженная императивная, а не функциональная направленность. Си-подобный синтаксис (код на ещё с пяток языков только в мэйнстриме будет в принципе понятен). Тайп-хинтинг. Автозагрузка классов.

Это так, навскидку.
В чём уникальность встроенного шаблонизатора на PHP в отрыве от возможности делать полустатические сайты? (О ней я уже сказал, поэтому её исключаем из рассмотрения.) Аналогичные по синтаксису шаблонизаторы есть под любой нужный язык.
Направленность и синтаксис могу принять как индивидуальные предпочтения, но как плюсы? Единственный ваш аргумент, чем же так хорош сиподобный синтаксис, легко бьётся тем, что всё равно все знают джаваскрипт, так что людей с этим синтаксисом незнакомых ещё поискать.
Автозагрузка ничем не уникальна, на Rails такой магии на порядок больше (за что кстати Rails многие и не любят, но если лично для вас это плюс PHP, то у меня для вас, как говорится, плохие новости :) ).
Тайп-хинтинг… ох, ну ладно, со скрипом принято. Вообще-то считаю его отвратительным костылём, но раз он кому-то нужен, пусть будет так. Вот это и есть единственный ваш аргумент, который можно хоть как-то принять.
То, что он встроенный и любой текстовый (да и бинарный) файл, включаемый через require или include (конструкции языка) считается шаблоном, в котором может быть php-код (а может и не быть). Плюс шаблон имеет доступ ко всему коду.

Сейчас кстати вполне можно ожидать, что JavaScript некоторые толком и не знают, благодаря CoffeeScript и аналогам.

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

Порылся немного ещё. В Ruby есть передача аргументов функции по ссылкам? Статические переменные в функциях? Цикл for? Ассоциативные массивы (без разделения на массивы и словари)?

А вообще в какую-то странную сторону разговор зашел. Вы как бы убеждаете меня, что мне нужно перейти на Ruby или Python, а ищу аргументы, зачем мне тут оставаться :)
Да, в общем бесполезный спор.
А вообще мне Ruby нравится и был бы рад если бы некоторые его фичи PHP позаимствовал. Даже делал несколько попыток перейти на него, но как-то всё неудачные по разным, в основном личным причинам.
Нравится PHP, не нравится… Сам Ruby может не нравиться, и он не будет рассматриваться как альтернатива PHP при всех плюсах и минусах последнего.
Не вижу логики. Если два языка не нравятся, но за один из них платят больше, то почему не перейти?
мне вообще программировать надоело… сидишь целыми днями кодишь-кодишь… куда бы перейти и чтобы платили больше =)
Один язык в целом неплох, второй не нравится вообще. Зачем переходить?

Ruby и PHP, как понимаю, играют «на одном поле». И для использующих PHP смысла менять шило на мыло я не вижу. Появилась специфическая задача — взять подходящий ЯП.
В смысле — PHP в целом неплох? Тогда больше вопросов не имею.
Я за то время, как программирую, писал более чем на 10 ЯП (до 20 можно дотянуть). И, сравнивая их все, вижу, что у PHP есть свои плюсы в той области, где он и используется (несмотря на тонны косяков и костылей).
Какие плюсы? Назовите мне их. С минусами понятно, их и так все знают. А вот плюсы, именно у языка (инфраструктуру в расчёт не берём, это не язык)?
Думается мне, что при равной зарплате больше шансов найти компетентных PHP разработчиков.

Или получается, что идет привязка к конкретной ruby команде. Это как проблема незаменимого сотрудника.
Есть определённая критическая масса. Есть много нелинейных зависимостей.
Например, начиная с определённого уровня квалификации хорошего рубиста становится проще найти (вообще без привязки к деньгам — их просто больше), чем хорошего PHP-шника (которые посомневавшись немного конвертируются в хороших рубистов).
Общая схема такая, что чем сложнее проект, тем меньше шансов его удачно завершить на PHP (ну или выйдет в конечном счёте дольше и дороже). И наоборот, для проектов небольшой или средней сложности, да, PHP предпочтительнее.
У меня знакомые «хорошие PHP-шники» обычно начинают пристальнее смотреть в сторону C, Python или Go. Видимо разные вкусы к ЯП.

Про низкие шансы завершения на PHP в сравнении с Ruby очень странно. Словно второй бегает за разработчиками и соломку стелит :) Может, у вас такие задачи, с Ruby выходит предпочтительнее.
Про низкие шансы завершения на PHP в сравнении с Ruby очень странно. Словно второй бегает за разработчиками и соломку стелит :)

Не стелит, он просто не мешает работать.
C, Python или Go.

Да, тоже вполне варианты. Только не понял, каким боком здесь C — совсем другой класс задач же.
Си можно использовать для написания модулей к основному ЯП, либо брать что-нибудь вида libev и пилить легковесные сервисы.

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

Скажем, я рядовой заказчик и мне нужен результат.
Вот приходит такой солидный дядечка: «сделай мне сайт». Если предложить ему писать на питоне, то ему придётся считаться с минусами: меньше предложения хостинга, меньше кодеров на рынке, в случае чего, плюс, как мы уже сказали, повыше стоимость на них. А плюсы? «Разработчику приятнее писать на питоне, нежели на PHP»

Да кого вообще волнуют какие-то пожелания какого-то заштатного кодера, по сути раба в этой пищевой цепочке? Пишем «как все» и не выпендриваемся.
Пытаюсь использовать Python и C++ именно для веба на работе. Основные языки на данные момент, да, PHP+Javascript+SQL, хотя вернее на последнее место поставить JS, передвинув SQL на второе, а на третье поставить Lua — на JS почти не пишу в данное время, даже на HTML больше.
Этакая де-вебификация?

Работаю в вебе с самого начала и проект сейчас очень большой и интересный, но хочется писать что-то для десктопа и желательно похардкорнее, игры желательно. В сайте все топорно и угрюмо. Достать данные, закешировать, показать. А на десктопе сложные алгоритмы, миллисекунды и вообще романтика. И не важно что это не так, но трава там позеленей. Уверен, что намаявшись с DirectX/OpenGL появится и обратное желание.
«Романтика» — когда это все работает… и не только у вас. А когда работает у всех это… оргазм.
Столько разного железа и драйверов, что я просто испугался самостоятельно делать какой либо софт кроме веб.
С вебом тоже есть проблемы… но они решаемы т.к единая точка доступа (сервер)… локальное приложение просто не изменишь…
Это вы, возможно, просто не сталкивались с нагруженными web проектами и интересными backend задачами :)
Все те же алгоритмы, миллисекунды. Ну да, ламповой романтики поменьше.
Python — это моя страсть и любовь. А любовь сложно объяснить, вот любишь и всё. :)
Вот у меня выше комментарий про это. Почему? Мне интересно именно не какие-то объективные технические преимущества (вроде «работает на 20% быстрее руби»), а «душевные» — что лично вам в нем вот так прямо нравится, чего вы не видите в других скриптовых — пхп и руби?
Первый раз я полюбил Python, когда программа по подсчету слов в книге «Война и Мир», заняла у меня всего две строки. PHP я начал изучать после Python и каждый раз я хватаюсь за голову со словами: «Как можно так жить?». Руби хорош для тех, кто соскакивает с php, им там роднее синтаксис и его идеология. Я забросил изучение Руби, не могу с ним жить после Пайтона :)
Две строки, это как-то очень уж много. Если конечно не использовать import collections :)
Да и в обоих языках на небольшом объеме получим что-то вроде len(s.split()).

Мне python первоначально очень понравился своими генераторами для создания pipe из обработчиков. «Посчитать слова во всех книжках всех папок...»
Надо не только поделить, а подсчитать сколько раз встречается каждое слово. Задача такая:
1) Получить слово и посмотреть было ли оно уже в тексте?
2) Если слово было, то записать в счетчик сколько раз это слово встречалось.
Толстой «Война и мир» состоит из 18 тыс уникальных слов. Самое распостраненные слова, это, конечно же, междуречья и союзы. Остальные тысячи слов порой встречаются всего два раза в тексте и больше никогда не упоминаются.
Вот это реализация занимает всего две строки на Пайтоне.
На компе мак-мини 2010 года, это процедура подсчета занимает 5 часов. На мак-мини 2012 выпуска (i7 core) — полтора часа.
Выражение «по подсчету слов» оказалось двузначным. В таком случае можно через collections.Counter.
from collections import Counter
with open('lt1u.txt') as f:
    print len(Counter(f.read().split()))

Вот подобное отрабатывает на первом томе (5.5МБ в utf8) примерно за 100мс.
У вас была сложная обработка выделения слова из текста?
Можно без collections. Вся суть в словаре, где ключ является уникальным, что значит вам достаточно поставить счетчик напротив ключа.
Выглядит странным — очень много времени уходит.
У меня «Война и мир» обрабатывается не более 10 минут, даже с нормализацией слов по словарю aot и с продвинутым разбиением на слова.
Я тут давеча хвастался что знаю Python: а оказалось что совсем не знаю. Две строки это КАК :-о?
Я год назад хвастался тут про эти две строки, а потом в комменты вмешался какой-то гуру Пайтона и показал свою реализацию этих двух строк. Я посмотрел на эти его строки, они были такие красивые, такие совершенные, такие идеальные. И мне стало стыдно за мои две строки. Я зарылся в книжки, ушел изучать пропущенное. :)
Counter(all_text.split(" "))

Можно регулярку использовать, что бы убрать все пробелы и знаки пунктуации при разбиении на слова. +1 строка на открытие и чтение файла.
Ну, ещё по-хорошему весь олтекст в один регистр перевести для уменьшения числа дубликатов.
сначала я так делал, но потом выяснилось, что благодаря верхнему регистру легко вычислять фамилии, а дубликаты убирать потом, отдельной функцией.
ты просто не умеешь его готовить.

count(preg_split('/\s+/m', file_get_contents('voina_und_mir.txt')));
Я угадаю это мелодию с одной ноты
Ради фана можно и в одну строку. Правда на скалке и не за 5 часов :D

Scala
scala.io.Source.fromFile("lt1.txt").getLines.mkString.split(' ').map(_.toLowerCase).distinct.length

Питон — он и для веба и для не веба.
Не всегда желание использовать какой-то язык в работе согласуется с требованиями production и сроками выполнения :)
Не обязательно. Это по прежнему могут быть те же веб задачи, но под них текущих инструментов не хватает либо использование их для этих задач неоправданно.

Мне вот часто не хватает знаний и практики на сях. Цель — модернизировать/допилить какое либо расширение для php (или связанных с ним). Когда меня интересовала тема разработки/использования сервера для чата, а так же стримминг видео я познакомился с erlang что впрочем не отбило желание копаться в сях.
Языки для фронтенд и бэкенд (веб), а так же для разработки десктопного ПО смешали в одну кучу и проследить какие-то тенденции сложно. Например, в «Какие языки вы стремитесь использовать?» лидирует JavaScript. Я так предполагаю, что автор опроса этим вопросом хотел выявить языки, которые набирают популярность. Но javascript вряд ли из них. Он как был популярен, так и будет. Я предполагаю, что js выбирали бэкенд программисты, которые хотят освоить и фронтенд. А фронтендщики, чей основной язык js, наверняка смотрят в сторону coffeescript или аналогов. Но это лишь из собственных представлений. Лично для меня результаты этого опроса все только запутали. Думаю, если разделить этот опрос на вышеупомянутые 3 категории, то все станет на свои места и он покажет объективную картину для каждой из них.
1) Если бекэнд-программисты хотят освоить JavaScript, разве это не признак того, что он будет только набирать популярность?
2) Программирование не ограничивается условным бекэндом, фронтэндом и десктопом. Есть научные расчеты, встраиваемые решения, низкий уровень, мобильные приложения, программирование игр и графики, админские скрипты и т. д.
3) Обычно программисты довольно лояльны к языкам, которые они уже используют, поэтому чтобы выявить тренды, как мне кажется, надо смотреть на некую разницу между средним по первым двум опросам и третьим. Если посмотреть в этом ключе, то видно, что трендами безусловно являются Python и Ruby.
Я предполагаю, что js выбирали бэкенд программисты, которые хотят освоить и фронтенд.
Скорее, к этому причастен node.js. В моём случае, по крайней мере, это так
А как насчёт Node JS для бэкенда например? Или вот ещё: в Qt несложную UI-логику можно писать на JavaScript. И т.д. Так что JS — это куда больше чем «язык для фронтенда».
А почему здесь нет языков описания аппаратуры (HDL)? Например, VHDL, Verilog и т.д.
Честный ответ такой: потому что все эти ключевые слова я вижу в первый раз. Извините :) Нельзя объять необъятное.
Это все-таки немного не то. По-моему под языком программирования в таком контексте подразумевают что-то общего назначения и эффективно (с линейным замедлением) исполняющиеся на архитектуре Фон-Неймана.
Обычно те, кто знает такие страшные слова не пересекается с первой группой.
Отнюдь. Я использую также asm, С, С++ и С#, каждый язык под свои задачи.
Нужно добавить еще вопрос о возрасте.
Корреляцию все равно не определить. Тогда надо сделать, как на DOU.ua — анкету на Google Docs, потом обрабатывать данные. Но на Хабре так не получится: слишком мало человек заполнят анкету. На DOU ссылка на нее висит в шапке сайта по несколько месяцев. Да и долго и муторно это.
Основной Lua, дополнительный Go+SQL, стремлюсь использовать MoonScript.

Несколько лет назад было основной PHP, дополнительные JavaScript+SQL, стремился Python и C.
Добавьте Tcl хотя бы во 2й опрос, пожалуйста.
Поздно: наверняка многие, кто пишут на нем, уже проголосовали за вариант «Другой язык». Через год или два, когда опубликуют аналогичный опрос, надо будет добавить Tcl.
Clojure бы добавить, раз уж есть Scala.
В третьем опросе есть. Я недооценил его популярность. В следующем аналогичном опросе надо будет добавить.
Я даже лично знаю пару ребят, кто на Clojure пишет много боевого кода.
В третьем опросе как один из языков отметил Basic, но до сих пор сомневаюсь, включает ли этот вариант в себя VB.NET?
Да
А я долго и безуспешно искал VBA. А он, оказывается, вон как спрятан…
Интересна, кстати, была бы статистика ещё вот какого рода: что у вас «предметная область» в работе (и хочется ли её менять)? Имхо, с определенного уровня плотное знакомство с каким-то определенным кругом задач становится более «привязывающим», чем с конкретным языком.
Мне кажется, что не хватает еще одного опроса: "Какие языки хотели бы изучить?"
А разве «стремитесь использовать» — не то же самое?
Много лет назад (тогда, кажется, PHP даже еще не было), был у нас в конторе крутой парень, который знал Перл. Я пошел к нему с поклоном, и спросил «О гуру, я слышал, что перл охрененнен? Так ли это? Хватит ли моих скромных умственных сил, чтобы познать его?». И ответил мне гуру «Перл простой. Набери в альтависте „перл за день“ и ты вкусишь его за один день!». Я ввел. Поисковики тогда работали не так аккуратно, и первая ссылка была «Перл за 10 минут». Я освоил. Во время примерно уложился. Дальше — уже был опыт, гугление о том как решают проблемы, но я уже как-то мог на нем программировать и программировал.
Нет, не то же самое.
«Стремитесь использовать» подразумевает, что человек уже обладает хотя бы минимальными знаниями в языке и использует его в каких-либо, пусть и не больших, проектах. Возможно, что даже просто для себя.
«Хотел бы изучить» означает, что человек еще не знаком с языком как таковым, но слышал о нем и его области применения. Именно за счет этого и возникает желание его изучить.
Пример: я, например, стремлюсь использовать VB.NET (ну нравится он мне, в нем легко создавать простые оконные приложения), но, в то же время, я хочу выучить Java и много других языков, которые еще ни разу не использовал.
Несколько человек отметили Haskell как основной рабочий язык. Если не секрет, что пишете?
Ведь читал же этот пост, но из головы вылетело, спасибо! Хотя там больше написано о том, каково писать на Haskell, а не о том, что именно писали, но все равно с интересом перечитал.
Было бы очень удобно, если после голосования за вариант, производилась бы сортировка по убыванию.
Основной PHP, дополнительные Lua (внезапно), SQL и JavaScript. Хочется внедрить в систему Python и C++. Первый просто как хороший язык с развитой экосистемой, второй — для личного развития :)
Эх, надо было еще TypeScript добавить, коль есть CoffeeScript…
НЛО прилетело и опубликовало эту надпись здесь
Добавьте LabVIEW, а то «другой» голосовать придётся. Язык приобретает широкую популярность из-за близости к робототехнике (обучение), да и в научно-промышленной автоматизации и разработке применяется весьма давно.
Поздно добавлять. Голосуйте за «другой язык»
Удивительно, как мало чистого Си в результатах первого опроса.
Мне почему-то кажется, что сегодня удел чистого си — встроенные системы (в основном, контроллеры) и драйвера (и прочее низкоуровневое системное, нулевого кольца). И мне почему-то кажется, что системщиков действительно меньше, чем сайтостроителей. Более того, у многих (некоторых?) системщиков на рабочем месте нет интернета, а у сайтостроителей это — обязательный инструмент. Отсюда возможно и меньший процент системщиков на хабре от общего числа системщиков по сравнению с веб-программерами. Я, например, хабр листаю поздно вечером и по выходным :-)
Использую и всё время стремлюсь использовать C++ (в стиле, близком к C, а зачастую и голый C; STL не использую) с inline-ассемблером x86 и ARM с уклоном в сторону оптимизаций компилятора. Так есть возможность выжать максимум скорости и сократить потребление памяти. Скорость разработки от этого не падает (разве что иногда несколько минут уходит на компиляцию, но это происходит не так часто), но даже если бы и падала, ей можно пожертвовать ради скорости выполнения и загрузки. Люди пользуются приложениями, а не исходниками. Пишу на других языках тогда, когда использование C++ невозможно или нецелесообразно. Но когда пишу на других языках, энтерпрайзовщину стараюсь не использовать, а также сокращать количество всяких прослоек (не использую фреймворки, например).
>> Люди пользуются приложениями, а не исходниками.

Дебажить ваш код должно быть очень весело.
У меня два раза были серьёзные ошибки из-за неправильного оператора. Вместо || поставил &&, а вместо == поставил !=. В первом случае потратил на исправление 2 недели, во втором — 3. И это было не в полностью собственном проекте, а в порте на другой язык. А обычно сразу правильно пишу.
Извините, пожалуйста, можно я буду использовать вот эту цитату:
Вместо || поставил &&, а вместо == поставил !=. В первом случае потратил на исправление 2 недели, во втором — 3.

в презентации на тему «почему нужны юнит-тесты и как важно писать их перед кодом»?
Там юнит-тесты не особо бы помогли. Первым случаем была физика ходьбы в игре, а вторым — передача данных объектов игры с клиента на сервер и интерполяция на клиенте.
А так, конечно можно.
использую(кампания использует) в основном С++(11) по двум причинам: а)скорость выполнения программ в совокупности со скоростью разработки(boost+STL), б)отсутствие бэкдоров.
для обоих случаев C# и Java не варианты — ибо проблемы как со скоростью выполнения программ, так и отсутствие открытой реализации этих продуктов, к которым, в этой связи, доверия нет. а специфика компании не позволяет использовать что-либо проприетарное. и да, в продакшине — только OpenBSD.

ну а скриптовые bash/php/python — для автоматизации какой-то рутины.
так и отсутствие открытой реализации этих продуктов


O_o О Mono и OpenJDK не слышали?
mono — скорее костыль, уж простите.
OpenJDK — ужасное качество реализации. ее как будто специально сделали столь плохой, чтоб ее невозможно было использовать.
То есть реализации все же есть, но не устроили. Жаль, думал, что открыл вам глаза :)
НЛО прилетело и опубликовало эту надпись здесь
а что именно с использованием Go нынче пишут? и почему именно Go? — есть же куча других вариантов, и, думается мне, куда лучше.
Когда ты начинаешь писать на Go, то потом ты просто хочешь на нем писать без всяких причин.
Обсуждать почему именно Go и другие варианты не имеет смысла, так как есть много статей на эту тему и его можно назвать альтернативой со своими плюсами.

В основном на Go пишут RESTful приложения и веб.
Нынче пишут вот такое docker.io или такое iron.io
И почему же вам думается, что лучше писать на другом?
Я думал, что 1С программистов больше, чем 2%)
Это объясняет, почему при более слабых навыках в программировании ЗП довольно высокая. Спрос работодателей есть, ведь 1с — это процентов 40 рынка ERP, предложения нет.
Им некогда на хабре сидеть, они бабло рубят.
Ну здесь ресурс немного специфичный, опрос показывает распределение специалистов на хабре, а не в целом по России. Их на самом деле намного больше 2%. Проведя опрос где-нибудь на инфостарте или mista.ru оказалось бы, что их не 2%, а 80%.

>>почему при более слабых навыках в программировании ЗП довольно высокая
Людям деньги не только за программирование платят, есть еще множество оплачиваемых навыков. Юристы вообще программировать не умеют

2 zenden2k, если брать среднюю температуру по больнице, то зарплаты одинэсников сопоставимы с зарплатами тех, кто пишет на java или c++, даже по-моему на java чуть чуть выше
По состоянию на 2013-11-10 19:56 лидируют:
* Ваш основной язык? PHP
* Ваши дополнительные языки на работе? JavaScript
* Какие языки вы стремитесь использовать? JavaScript

I don't want to live on this planet anymore.
Вот-вот. Когда я смотрю на «Ваш основной язык? PHP», то мне кажется, что эти люди за своей работой страдают от боли, периодически пытаются покончить с собой и ненавидят свою жизнь.
Поверьте — не страдаем.
А если бы страдали, то заплюсовали бы коммент, типа «бедные ежики, хоть плюсик поставлю»? :D
бизнесу нужно что: взять из базы — показать… изменить… сохранить… и так изо дня в день…
javascript более динамичнее… начинаешь работать с AJAX… вроде все тоже но уже не так уныло…
ну а дальше уже не остановить =)
В яваскрипте то вам что не нравится? Хороший язык.
У меня вопрос не совсем по теме.
Я пишу на Си, Python и Паскале в качестве хобби. Еще изучаю RPG и иже с ними. Профессионально программированием не занимаюсь (маленький еще), но планирую. Собственно вопрос: можно ли с этим жить, или лучше все-таки знать что-то современное (PHP/JS/C++/etc)?
Питон и Си хорошая пара.
НЛО прилетело и опубликовало эту надпись здесь
Судя по опросу довольно также популярен и Ruby, так что его тоже полезно знать, но японский синтаксис его после С-подобных языков выносит мозг :)
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
А с какой целью? Зарабатывать или для удовольствия?
Зарабатывать: удовольствие я и сейчас получаю. Но вот читаю хабр, поворачиваю голову чуть-чуть налево и начинаю сомневаться что на C/Pascal/Python можно заработать. Или просто места надо знать?
На Python по идее можно, смотрите в сторону веб-разработки и Django. Но это не из личного опыта, сам разрабатываю на Ruby.
Паскаль — врядли. К счастью.
С — используется весьма активно но в довольно специфических сферах, как например разработка ядра линукс(что, как это не поразительно, востребованная сфера — андроид сейчас пилят все кому не лень). Ну и микроконтроллеры. Прикладные приложения на нем уже никто не пишет, кроме фанатов.
Питон — в последнее время в связи с тем что в уйме западных вузов стали использовать для обучения стал куда более популярен и найти работу должно быть не так и сложно. Но если допустим для веба то он там(как и все остальное) тотально проигрывает пхп по количеству предложений.
А так работу конечно можно найти. Даже для лиспа вакансии есть, что уж о питоне и С говорить. На том же С написано было в свое время уйма всего и это все надо как-то поддерживать, так что спрос еще долго будет.
Если говорить не о количестве, а о качестве предложений, то тут Python, я думаю, сильно выигрывает у PHP.
Если говорить о процентном соотношении то конечно да. Но это прямое следствие того, что питон сравнительно не популярен и если на php пишут все подряд, то на питоне только тогда, когда они знают что делают.

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

Вообще я не вижу какого-то серьезного мотиватора писать под веб на чем то отличном от пхп на данный момент. К сожалению, потому что пхп мне не очень-то нравится. Но, правда, какой практический смысл, кроме эстетического удовольствия? Скорость разработки от перехода на питон не повысится, качество кода тоже особо не вырастет, работать оно быстрее не станет.
Получается что в плюсах — эстетическое удовольствие разработчика, а в минусах — сложности с деплойментом и поддержкой(искать програмиста на питоне. тут то и обычного найти сложно зачастую..)
Скорость разработки от перехода на питон не повысится, качество кода тоже особо не вырастет, работать оно быстрее не станет.

Не могу сказать за Python, говорю за Ruby/Rails. Скорость разработки именно что повышается. Количество кода уменьшается. Меньшее количество кода -> меньше время/стоимость поддержки и т.д. В общем, сплошные плюсы.
Но если говорить о количестве качественных предложений в абсолютных цифрах то я думаю тут php будет значительно впереди т.к. предложений просто уж очень много.

Ну вот вы думаете, а я проверял. (Правда опять говорю про Ruby.) Т.к. знаю и Ruby, и PHP, и какое-то время пытался искать проекты по обоим направлениям, могу сказать, что на Ruby на хорошие деньги найти проект сильно легче. А все эти «уж очень много предложений» на PHP — они про средний и нижний ценовой сегмент.
Количество кода уменьшается.

Это за счет сахара языка или за счет большего использования стороннего кода?
Сахар, хорошо продуманная архитектура фреймворка (Rails), лаконичность конструкций языка с большим количеством полезной функциональности из коробки и т.д.
Понятно. Кстати, с какими фреймворками на PHP работали?
Yii, ZF
Тоже интересно за счет чего уменьшение.
В питоне я как-то не особо заметил, хотя конечно вполне вероятно, что просто сказывается меньшее количество опыта.
Насчет количества качественных заказов, ну, у меня как то нет особых проблем с этим на пхп. Да, огромное количество мусора, но и хороших заказов хватает. Хотя опять же тут вопрос в том, что мы понимаем под качественными заказами, возможно то, что для меня — качественное, для вас — не очень, ну и кроме того я совершенно не знаком с рынком руби. Рынок питона несколько «испорчен» тем, что сейчас в западных вузах ему учат и это по сути второй паскаль, поэтому на рынке труда уйма студентов со знанием питона и на нем пишут все подряд.
Два знакомых программера: один на assembler'e, второй на Delphi
Оба востребованы!
Нет, ничего не меняйте, продолжайте изучение ваших языков.
Хороший набор. Если решите смотреть в сторону C++, то я бы порекомендовал начать с C#/Java, так как они менее ногоотстреливательные, и синтаксис поприятнее. C++ — из разряда хардкора.

К PHP не приближаться на расстояние пушечного выстрела. Для обучения он бесполезен, потому что ничего нового вы не узнаете. В жизни он актуален, но есть лучшая участь. По количеству воинствующих ненавистников этот язык, по-моему, на первом месте.
Есть языки, которые все ругают и языки, которые никто не использует. Вот PHP все вечно ругают, да. C++ и Java, кстати, тоже
C++ — ругают, потому что слишком сложный, потому что слишком легко отстрелить ногу, потому что медленно развивается (вроде, начинает исправляться).

Java — ругают, потому что мало синтаксического сахара (вроде, начинает исправляться), потому что некоторые фичи слишком урезаны, потому что медленно развивается.

C# — ругают, потому что слишком привязан к платформе, потому что основная реализация не опен-сорсна.

А вот PHP — ненавидят. Потому что операторы — ужас, синтаксис — ужас, обработка ошибок — ужас, функции — ужас, ООП — ужас, стандартная библиотека — ужас, юникод — ужас, единообразие — ужас… и так до бесконечности. Ни один язык не удостоился такого количества сайтов, посвящённых его глюкам. Да почитайте хотя бы эту тему: тут каждое второе сообщение — про то, как PHP ужасен, и споры вокруг этого.

Так или иначе, если человек знает питон, то изучение похапэ ему ничего не даст: всё обучение сведётся к изучению «особенностей». Я не считаю подобное времяпровождение полезным на стадии обучения. Если человек всё-таки выберет PHP, то это лучше делать позднее, а не раньше.
Я не понимаю зачем PHP ненавидеть, особенно, если ты на нем не пишешь. Это просто удивительное явления, я пишу на Java/Python/Ruby, но я так ненавижу PHP, что захожу в каждый пост про PHP и пишу об этом (это я не о вас сейчас). У меня ощущение, что это поветрие какое-то модное просто, любить Ruby и ненавидеть PHP.
Есть люди, которые PHP не ненавидят, а вполне успешно на нем пишут, опять же есть люди, которые ненавидят C++/Java и что?
У меня есть подозрение, что многие ненавистники PHP таки пробовали его. Хочет разработчик на плюсах/дельфи/чём там ещё попробовать веб-разработку — и выбирает самый популярный язык. А потом внезапно оказывается…

Не встречал ярых ненавистников C++ или Java, которые могли бы чётко обосновать свою позицию (то есть, если не брать в счёт троллей и идиотов). У C++ есть причины быть сложным и ногоотстреливательным (это универсальный язык с приоритетом на производительность), у Java есть причины быть упрощённым (минимализм — философия языка). И везде есть проблема обратной совместимости.

Но PHP повезло меньше, потому что он пошёл не от какой-то продуманной архитектуры или философии, а от желания «сделать быстро и просто, даже если ты не программист». И эта идея тянулась слишком долго, чтобы сейчас можно было что-то исправить. То, что разработчики просто не смогли сделать нормальный юникод и забросили новую версию PHP 6 — яркое тому доказательство. Поздно пить Боржоми.

P.S. Не верю в моду. Я ненавижу руби, потому что руби ненавидит винду. :)
C# — ругают, потому что слишком привязан к платформе, потому что основная реализация не опен-сорсна.

Теперь, в 2015 году, получается его не за что ругать?)
Хе-хе.

Во-первых, опен-сорсная версия до сих пор не релизнулась. Во-вторых, гуёвые библиотеки не опен-сорснули, кросс-платформенность у них варьируется от никакой (WPF) до паршивой (WinForms). В-третьих, как платформа .NET до сих пор катастрофически отстаёт от Java. В-четвёртых, у джавы кросс-платформенность за последнее время улучшилась (+Windows Phone, спасибо Microsoft), у шарпа пока до сих пор ощутимо платная (Xamarin не стал бесплатным).

Хотя C# именно как язык теперь критиковать сложнее, да.
Паскаль долой из списка.
Ви так говорите, как будто паскаль — это что-то плохое.
Опять 25 — ну когда вы поймете что суть паскаля сеять в детских головка разумное, доброе и вечное: основная программа/подпрограмма, цикл, тип данных, рекурсия, дизьюнкция. Не навидеть Паскаль — это всеравно что ненавидеть игрушечный молоток за то что он плохо забивает настоящие гвозди.
Вы смотрели, что я комментировал?
Я пишу на Си, Python и Паскале в качестве хобби. Еще изучаю RPG и иже с ними.

Если человек уже серьезно пишет на C/Python, что полезного ему даст Pascal/ObjectPascal/Delphi/Lazarus?
Что даст? Просто прикольно — ну есть же люди из кирпичиков лего собирающие довольно сложные механизмы, есть повара которые пекут печеньки в форме мобилок, есть чудаки которые собирают мотоциклы на двигателях от бензопил, человек что не может просто «интелектуально извратится»?
Лично мне дает мгновенно набросанный GUI, который будет работать на любой башне/буке отдела. В отличие от С, который далеко не столь мгновенный, и от Python/Java, для которых надо ставить на целевые машины кое-что еще.
Плюс поддержка и доведение до человеческого вида чужого кода, накиданного на дельфи/лазаре людьми, далекими от программирования, ибо порог вхождения… А переписать реально дольше, чем подправить.
Ну, и лично мне нравится Виртовская линейка языков. Хотя да, Дельфи — это несколько не Вирт уже.
Вы можете стремиться использовать тот или иной язык, но одного стремления лишь мало. Лучше используйте, а не стремитесь.
SQL — язык программирования?
ИМХО bash больше похож на язык программирования, а SQL на язык запросов, так же как и HTML язык разметки.
Почему умножение на 0.94? Интересно.
SQL — язык программирования?

Мало того, Тьюринг-полный.
Тогда и прерывания 386 — язык программирования. Они ведь Тьюринг-полные. SQL все-таки язык запросов, для чего-то другого его применять тяжело.
Запрос запросу рознь. Это может быть простой SELECT, а может быть сложная обработка данных из кучи таблиц, вызывающаяся по триггеру.
Сколько человек из проголосовавших за SQL в самом деле знают как пользоваться триггерами и процедурами?
Совместно или по-очереди?
Я сюда отнес бы pl/sql, tsql и д.р. Не надо обижать разработчиков баз данных.
Не хотелось никого обижать. Я понимаю, что есть профессия людей, которая занимается исключительно СУБД, в том числе разработкой процедур, тригеров и т.д. Но их немного, большинство довольствуются языком составления запросов.
Ну я не занимаюсь исключительно СУБД, но если вижу, что лучше обработать данные на её стороне вместо того чтобы передавать несколько мегабайт и обрабатывать их на стороне того же PHP, дабы сделать простую табличку для пользователя, то предпочту на SQL это сделать. Поддержание согласованности данных (в том числе денормализованных), инкрементное формирование отчетов и статистики, подготовка «материализованных представлений», «прогрев» кэша, контроль доступа — это так, навскидку, кроме просто сложных запросов.
Поясните пожалуйста выбор коэффициентов 0.94, 0.42 (абсолютная популярность) и 0.3 (тренд)
0,94 и 0,42 чтобы сошлись кое-какие соотношения общих сумм голосов, 0,3 — просто на глаз. Можно другие коеффициенты подставлять.
Простите за дотошность, но что такое 8533, 3872 и 7325? Общие суммы голосов в трёх опросах?
Суммы голосов (ссылка на таблицу в посте).
Спасибо
Я бы таки предложил разделить клиентский и серверный js, поскольку по факту это сильно разные вещи.
Согласен, nodejs хотелось бы увидеть.
В смысле? Это отдельный ЯП?
Там абсолютно другие модули и код пишется немного по другому. Например, когда занимался только клиентской стороной даже не задумывался об асинхронности, а тут это важно, и программы пишутся на этом принципе.
Без экспресс чтения документации разработчик javascript клиентской части не сможет писать серверные программы. Хотя порог вхождения низкий.
Ну и все таки интересно какая часть программистов занимается клиентской стороной, а какая серверной.
когда занимался только клиентской стороной даже не задумывался об асинхронности

Это ваши сайты вешают систему :D Извините, наболело.
Но печенек, похоже, хватит на всех.
Хорошо, что про lua и go не забыли в опросе. Процент не большой, но хоть видно, что пользуются :)

Почему Clojure нет в первых двух списках?
Я в восторге от Python. Ну, примерно, как был в восторге от Perl в 1997 году. Только Perl сложно читать, а Питон и для написания, и для понимания прекрасен. JavaScript — ну кудаж без него сейчас в web.
Мне кажется такой опрос на хабре даст абсолютно некорретные результаты. Только зарегистрированные пользователи могут участвовать в опросе, а это значит основная масса использующих эти языки сюда не попадает. И кроме того, активные пользователи на хабре смещены в сторону веб-программирования. Ну то есть графики красивые, спасибо за дезинформацию.
Странный опрос, ведь у каждого языка своя ниша. Я никогда не буду писать код для научных вычислений на java script, также как и C++ для создания вебсайтов
Ну на счёт второго вы зря. Есть очень неплохие фреймворки для С++ достаточно много контор именно на нём делают свои веб приложения. У меня только положительный опыт от этого (ооочень быстро, и если не намудрить то и оперативки мало кушает).

Вот для JS увы и впрямь мало научных либ или их качество не дотягивает хотя бы до Python.
А можно поподробнее, пожалуйста, с этого места, и особенно перспективы этих фреймворков? Конторы уверены в том, что им через 5 лет не придется самим поддерживать эти фреймворки?
1. Думаю тому же Yandex это не страшно. (а там многие внешние сервисы именно на C++)
2. CppCMS, Wt достаточно долго живут и вроде не собираются умирать. Если всё было так хорошо у динамических языков, то Фейсбуку и прочим, не пришлось бы придумывать трансляторы PHP в C++. Я и сам сталкивался с нехваткой производительности (а новые ресурсы приобрести было нельзя).
3. Советую CppCMS глянуть, мне очень понравилось, и кода не многим больше чем на PHP приходится писать.
Думаю что не зря. Ваш пример — довольно частный случай. В 95% остальных случаев, веб — это java script, php и может быть ruby.
И я более чем уверен, что большая часть голосовавших занимается около-сетевой-вебсайтной разработкой.

Повесьте такую голосовалку на сайт по массивно-параллельным вычислениям, созданию компиляторов или по hi-end компьютерной графике и результаты буду совершенно иные. И это не с потока взятые примеры, а огромные отрасли программирования.

Поэтому нельзя называть «самый популярный язык» просто считая людей, которые им пользуются.
В 95% остальных случаев, веб — это java script, php и может быть ruby.

Скорее Python чем Ruby, судя по статистике в топике.

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

А с этим я не спорил. Хотя всё же скажу: если язык универсальный, и его использует очень много людей есть вероятность перетекания из одной области в другую. И я всё же разделил бы компилируемые языки и интерпретируемые (во многом они и вправду не пересекаются).
Именно в вебе Ruby всё же популярнее. Python просто широко применяется как скриптовый язык, например.
Крайне спорное утверждение. Ruby по сути популярно за счёт Rails, а на Python множество различных фреймворков (неплохо конкурирующих), в том числе асинхронных (tornado, twisted, gevent). Кроме того Python банально старше Ruby. ИМХО то что вижу лично я, соответствует статистике, Python популярен, но не капитально… раза в 2 не больше.
Скрипты на python вижу, но всё же кроме веба Python плотно засел в десктоп приложениях (PyQt очень вкусный).
(ИМХО на это повлиял тот факт, что только начиная с 1.9 интерпретатор руби сравнялся по скорости с python интерпретатором)

И ещё одно ИМХО которое так же сответсвует графикам с сайтов — бум интереса к Ruby прошёл, сейчас он скорее теряет очки (http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html — как тут к примеру).
На Ruby есть Sinatra ещё. Но дело даже не в этом, вы абстрактно рассуждаете (вот есть то и то, тут старше, там больше), а я слежу за вакансиями.
вы абстрактно рассуждаете

Ну не совсем, выше сылочки приводил.

а я слежу за вакансиями

Ну так сравните:
hantim.ru/?q=ruby
hantim.ru/?q=python

Список по python как раз в 2 раза длиннее.

А ещё наша контора сейчас ищет срочно Ruby разработчика и за 2 недели никого не смогли найти. :(
Российский рынок не отслеживаю, тут неинтересная мне вилка зарплат. Там, где платят хорошо, на Ruby найти работу проще. Вот просто один пример:
weworkremotely.com
Прямо на главной странице смотрите сколько предложений на Ruby и сколько на Python.
А ваша ситуация говорит как раз о дефиците кадров, а не вакансий.
Вот это кок раз и есть частности. Многие вещи нельзя разрабатывать удалёно. А так по всем опросам, и ссылкам что были приведены в начале статьи, python выше ruby (ну кроме проектов на github :) любят рубисты его).

Ну и мне честно говоря интересен именно рынок РФ такак тут сижу.
Ну та же ситуация и с локальной работой в США, просто я её не привожу, потому что никакой практической ценности для гражданина РФ эта информация представлять не может (если только он эмигрировать не надумал). Удалённая/не удалённая работа тут совершенно ни при чём.
Так что вот именно это «общности» (ситуация на мировом рынке), а «частности» — реалии рынка в РФ.
weworkremotely.com от авторов рельсов.
Так не честно.
Ну тут ничего не поделаешь, рельсы и их авторы оставили след в веб-разработке. Тут выше вот ещё сказали, что гитхаб не показатель, мол, там руби любят.
Хорошо, не нравятся эти два варианта, могу сказать, что похожая ситуация например на oDesk, он к рельсам точно никакого отношения не имеет. Можете сами посмотреть, сколько там вакансий на Rails и на Django.
А если не трудно, то можете то же самое глянуть но не на рынке удалёнки (т.е. соотношение ruby vs python)? А то может быть скоро и занесёт в США…

PS зато Python хорошо в науке отметился, для ruby хорошего аналога SciPy нету.
Ну вот например:
jobs.37signals.com
Много локальной работы в США.
Про Python — ну так я не спорю, язык отличный, но в веб-разработке Ruby лидирует.
ну кроме рельс, навскидку:

1) Весь DSL и клиентский код для Chef www.opscode.com/chef/, системы управления конфигурацией серверов
альтернативный проект — Puppet github.com/puppetlabs/puppet — тоже на Ruby

2) metasploit — github.com/rapid7/metasploit-framework крупнейший фреймворк для пентестов и отладки уязвимостей

3) github.com/mxcl/homebrew — «недостающий» менеджер пакетов для iOS

4) Gitlab

5) SASS, HAML, CoffeeScript — популяризированы именно в руби-среде
Проектов — много но я почти ничего не встречал по работе кроме может быть Redmine (крайне медленный) и SASS, HAML, CoffeeScript (и то я так понял, сейчас SASS, CoffeScript работают без Ruby и не завязаны на него)
Хотелось бы иметь возможность писать на чем то что нравится, но приходится писать на том на чем заказывают и за что лучше платят.
На работе пишу в основном на C#, а для души — ActionScript (Air, Flex). При всей убогости последнего, мне почему то очень нравиться его использовать.
По работе пишу для веба: php+javascript+mysql, а также под android (java).
Стремлюсь писать на питоне, так как считаю этот язык идеальным, бесподобным!
Раньше имел годичный опыт c#, это второй изык из тех, с которыми я уже знаком и который считаю просто фантастически удобным и красивым, после питона.
Неужели на C# пишет больше людей, чем на Java? Неожиданно…
ЗЫ: сам на джаве пишу.
Windows же.

Публикации

Изменить настройки темы

Истории