FishHook
py.user.next
Получается, что благодаря IDE ты не знаешь этого всего. Не знаешь, как точно написать что-то; не знаешь, какие есть методы и какие у них аргументы; не помнишь точно, что есть в PEP8; и так далее.
А нафига это “всё” вообще знать наизусть? Это какое-то фундаментальное знание что-ли?
По синтаксису:
Например, человек не знает точно, как писать какое-то слово, но он всегда расчитывает на Microsoft Word, который ему подчеркнёт ошибки. Русским языком не занимается, например, вообще. И тут его просят что-то написать (документ какой-то), где нет Word'а. А написать его просят “казнить нельзя помиловать”, мультик даже сняли такой, который объясняет, зачем надо правильно писать.
Ну вот, программируешь ты программируешь, у тебя есть IDE, которая правит ошибки, помнить ничего не надо (и знать ничего не надо, не то что помнить) и тут оказывается, что твой продукт навернулся на сервере. Никто его, кроме тебя, не знает. Ты должен подключиться к сереверу и исправить его. Ты просишь “дайте мне IDE”, а они тебе говорят “у нас тут безопасность такая, что мы можем тебе только консоль дать и редактор nano”. И тут ты понимаешь, зачем ты учил весь синтаксис наизусть. Ты подключаешься и исправляешь всё в этих условиях.
По методам:
При использовании IDE возникает такой соблазн изучать методы по IDE. Вот что тебе IDE покажет про метод, вот то ты про этот метод и будешь знать. А если ты его типа знаешь, то зачем тебе читать по нему документацию? И очень скоро оказывается, что в документации есть ещё три тонны информации про этот метод, просто IDE её не выводит, так как она не помещается. В итоге может дойти до такого, что ты скажешь “а вот этот метод может делать только вот это и вот это и не может больше делать ничего, так что давайте тогда это делать другим методом, который через жопу работает, но зато мы получим действующий продукт и всё будет хорошо”, при этом в документации, которую ты не читал, написано, что этот метод это всё выполняет в лучшем виде, просто IDE об этом не в курсе (она и не обязана тебе сообщать всё; это документация обязана только).
Да, и вот эта фишка про консольку по SSH и простой текстовый редактор из-за безопасности здесь тоже работает.
По PEP8 и другим стайлгайдам:
Часто можно увидеть код на питоне, написанный профессионалом, но пришедшим с какого-то другого языка. Он приходит с Java, но пишет строчки по двести символов, как в Java. В чём он их писал? Явно не было там питоновской IDE, он использовал что-то другое (редактор или IDE под другой язык). И на линтер у него времени не нашлось. Значит, такое бывает; значит, и ты можешь оказаться без средств контроля за стилем, без IDE, без линтера. Да просто попадёт к тебе код через команду, который писал какой-то дурак, и у тебя не будет времени исправлять за ним всю эту фигню, которую он не знает. Тогда ты просто возьмёшь фрагмент, с которым работаешь, отформатируешь его под себя и будешь в результате работать с хорошим кодом, в котором всё хорошо видно. Ты не будешь продолжать вот эту его хуету и пускать её дальше ребятам. А этому чудику ты напишешь письмо, что видишь такие-то и такие-то вещи у него, пусть он себе поставит линтер и пусть выучит PEP8, иначе его ждёт постоянная модерация через код-ревью (сначала лично пишешь, а потом, если он не догоняет, публично пишешь). Вот, а с твоим кодом всем будет приятно работать, то есть ты таким чудиком, которому пишут письма, не будешь.
FishHook
Ты меня хочешь убедить, что мне надо знать на память интерфейсы десятков тысяч классов?
Ну, питон-то ты хотя бы знаешь? Завтра у тебя поменяется то, это, пятое, десятое - это не надо выучивать, да даже знать просто не надо. Другое дело Python, HTTP, JSON, XPath, XML, SQL и так далее. Ну, ты видал, да, когда люди не знают регулярок, например, какую хрень они на них пишут. Перегруженную лишними экранированиями, лишними скобками, да ещё и с таким умным видом мол “посмотрите! какой я умный! моя регулярка занимает полстраницы! я могу писать такие сложные вещи! это уровень!”. А то, что он хуету какую-то написал, которая пишется в три буквы, если всё знать, он этого даже не понимает. А IDEшка ему, ясен пень, не подскажет, что он говнокодер, она ему напишет “всё окей, твоя регулярка правильная, работает”. Так и складываются псевдохорошие знания. Человек действительно думает, что знает что-то. Где проявляется его уровень? Где сталкивается он с реальностью? Да на реальных задачах. Когда ему говоришь “вот напиши вот эту программу”. И он такой “а чо?.. а как?.. а может IDEшка мне поможет?” и ищет библиотечку, в которой уже написали дяденьки всё, а этой библиотечки нету, потому что её вообще нету в мире.
FishHook
И что ему хуже живется от того, что он не знает в совершенстве Linux? Да он ему и нахер не нужон ваш линукс
Ну, я смотрел его ролики, а потом отписался. Я просто понял, что он ничего не может спросить. У него классные гости попадаются, а спросить у них он ничего не может. И ничего ты с ним не сделаешь, вот он на C# своём зациклился и всё. Он говорит, знаешь, что “Vim - это копец какой сложный редактор”. Vim сложный редактор?! А нормальный редактор, средней сложности, - это nano что ли? Это же программист говорит, а не какой-то юзерок. Ну вот.
Неинтересно. К нему кто ни придёт, он его про пирожки расспрашивает.
FishHook
py.user.next
IDE могут поменять так, что тебе не понравится
Помню-помню, был уже такой разговор. Дескать C# и Go не надо использовать, потому что “а вдруг корпорации возьмут и…”
Угроза есть всегда такая. Ты просто, видимо, не застал период, когда Visual Studio говорила, очень упорно говорила, что сишные функции неправильные, а вот её функции вместо сишных очень правильные и очень безопасные. Но вот только функции эти были только в ней, в Visual Studio. То есть по их задумке ты бы пересел на эти функции, а потом просто никуда бы не слез с Visual Studio, потому что ни в каких других IDEшках этих функций нет. Но это не прокатило в итоге. Никто не повёлся на эту хуйню и Visual Studio так и осталась чисто C#'овой.
FishHook
Вроде же сама наша профессия состоит в том, чтобы автоматизировать рутинные процессы.
Нет, там есть ещё такой вектор “кто что будет покупать?”, “кто будет на рынке главным?”, “чем будут пользоваться пользователи?”, “сколько будет выручка у компании?”. И вот поэтому существуют пропихивания всякие. Ну, можно это сравнить с оболваниванием населения. Чем меньше люди понимают, что вокруг происходит, тем лучше, тем больше можно из них извлечь. Соответственно, тебе не скажут “мы даём тебе бесплатно нашу IDE, чтобы просто захватить тебя”. Тебе будут говорить “мы хотим тебе помочь попрограммировать”. Это как Apple говорит, что заботится о безопасности в мире и поэтому теперь будет просматривать содержимое смартфонов у всех. А для повышения своей прибыли она не будет просматривать на смартфонах ничего? Точно?
Зависишь от какой-то IDE - ну всё, молодец, теперь ты собственность компании, производящей эту IDE, и теперь ты у них в виде циферок в отчётах в качестве такого баранчика, которого потом постригут, когда шёрстка подрастёт.