Лучшее из интервью автора подкаста Talk Python To Me Майкла Кеннеди
Майкл Кеннеди основал еженедельный подкаст Talk Python To Me, который посвящен Python’у и смежным темам разработки программного обеспечения, и создал онлайн-программу обучения Talk Python Training. Мы поговорили с ним о любимом языке, его особенностях и будущем Python.
Полную версию интервью можно прочитать по ссылке.
Об альтернативе
Я начинал программировать на C++ и до сих пор люблю языки в стиле C. Я уже думал о том, что бы выбрал, если бы Python не существовал. Скорее всего, это был бы один из языков в стиле С. Возможно, C# — он мне очень нравится. Я считаю, что это красивый язык. Мне нравится Swift, но его экосистема не так хороша, как сам язык.
Об искусственном интеллекте
Есть вероятность, что через 10-20 лет можно будет попросить редактор с искусственным интеллектом написать программу, и он действительно это сделает. Но это не значит, что программистов не будет. Кому-то всё равно придется проверять написанное. Кто-то должен будет поддерживать и развивать его.
О неудачах
Самые большие трудности, с которыми я сталкивался, не всегда были техническими. Чаще это были ситуации, когда технические мечты сталкивались с реальностью. И тогда приходилось смириться и заниматься другими вещами. У меня также были занятные технические неудачи. Но больше всего выделяются такие проблемы, когда потрачено много времени и создано что-то замечательное, но нет возможности рассказать об этом миру.
О правильном отношении к средам разработки
Когда вы видите предупреждение, не стоит говорить: «Программа всё ещё работает, поэтому я проигнорирую его». Нужно найти минутку и выяснить, что оно означает, и чему может вас научить. Например, довольно часто PyCharm предупреждает, что локальная переменная затеняет глобальную. В этом случае нужно просто выбрать для локальной переменной другое имя, чтобы не было путаницы в коде.
О профессиональном развитии
Если вы сумеете полностью или большей частью автоматизировать выполнение скучной задачи, то каждый раз, когда она запускается, можете улыбнуться и сказать: «Ага, раньше это было неинтересно, но посмотрите-ка на это сейчас». Решение таких проблем также поможет вам расти как разработчику.
О скорости
Если я могу написать программу на C++, которая выдаст мне результат за 10 секунд, и могу написать такую же программу на Python, которая даст ответ за пять минут, понятно, что C++ быстрее. Но если на написание кода на C++ у меня уйдет неделя, а на написание кода на Python — полдня, то я сэкономил кучу времени. Поэтому я считаю, всё дело в том, что именно нужно оптимизировать. Скорость разработчика, скорость продукта или скорость вычислений?
О том, чего не хватает
Я бы хотел получить поддержку пользовательских интерфейсов как для настольных, так и для мобильных приложений. Я думаю, что если улучшить по-настоящему эти две вещи — дистрибутив и пользовательский интерфейс, — Python стал бы суперпопулярным. Он и без них очень популярен, но на нём нельзя создавать мобильные приложения. А если бы можно было, вот было бы круто!