Pull to refresh
1
0
Астафьев Александр @AlexanderAstafiev

Python-программист

Send message

Почему некоторым так сложно учиться программированию?

Reading time15 min
Views110K

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

Однако с этим я согласиться никак не могу. Программирование по содержанию ничуть не сложней многих других отраслей знаний, а в чем-то даже и легче, особенно когда касается прикладных задач. Наткнулся на заметку человека, который высказал весьма небанальную мысль: при обучении программированию "с нуля" этот "ноль" для всех сильно разный. И у меня есть стойкое убеждение, что сложность освоения четко зависит от значения этого нуля. А вот почему он разный и что на него влияет- мне и хотелось бы поразмышлять.

Читать далее
Total votes 251: ↑225 and ↓26+238
Comments720

Ложная философия Матрицы

Reading time7 min
Views59K

▍ Матрица и девяностые


90-е годы прошлого века, в культурном плане — стали подходящим завершением для всего столетия. Авторы говорили на темы технологического будущего более уверенно, превознося или ругая прогресс, идя нога в ногу с научным позитивизмом или же отрицая технологии, пускались в метафизические и эзотерические учения. Если присмотреться, то многие произведения той эпохи имеют мрачный, грязный тон. В музыке — Massive Attack и Nirvana пели о зависимостях и трудности жизни в бедности, в книгах Чак Паланник и Девид Фостер Уоллес — писали о потере личности в мире, состоящем из рекламы и развлечений. А в кинематографе доминировали мрачные боевики и фильмы ужасов, для которых тема технологий стала основной.
Читать дальше →
Total votes 101: ↑86 and ↓15+106
Comments151

Асинхронный python без головной боли (часть 1)

Reading time14 min
Views316K

Почему так сложно понять asyncio?

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

Но будь я автором самого толстого в мире учебника по python, я бы рассказывал читателям про асинхронное программирование уже с первых страниц. Вот только написали "Hello, world!" и тут же приступили к созданию "Hello, asynchronous world!". А уже потом циклы, условия и все такое.

Съешь красную таблетку
Total votes 135: ↑135 and ↓0+135
Comments58

Пьеса личных местоимений

Reading time7 min
Views9.8K

Есть в русском языке личные местоимения – я, ты, он, она, оно мы, вы, они. Для каждого есть подходящий сценарий использования в разговоре. Говорят мне «ты» - и я понимаю, что речь обо мне, а не о ком-то ещё. Если человек произносит «я» - ясно, будет про себя, а не про меня или Колю.

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

Попробуем разыграть небольшую пьесу личных местоимений. Действующие лица: Гена (программист и руководитель программистов), Катя (программист в подчинении Гены) и Валя (менеджер, связующее звено между программистами и клиентом). Возможно, кто-то ещё появится. На сцене постоянно находятся с десяток программистов массовки – сидят тихо, уткнулись в компьютеры.

Итак, утро четверга, 31.03.2022 г. (1Сники поймут), кофе, программисты обсуждают планы на день, на сцену врывается Валя…

Читать далее
Total votes 53: ↑42 and ↓11+44
Comments42

«Бог не играет в кости!»

Reading time8 min
Views40K

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

Читать далее
Total votes 36: ↑29 and ↓7+28
Comments61

ONKALO: чудо света на все времена, забудьте о нём…

Reading time25 min
Views84K
… или как захоронить свои ядерные отходы навсегда.



Многие уверены, что век монументального строительства прошёл. Пирамиды, мегалиты и загадочные гробницы лежат старыми игрушками в песочнице человечества. Мы выросли из них и живём сегодняшним днём, ярким и мимолётным. Когда нас не станет — от нас останутся только колоссы древности… и ONKALO.
Читать дальше →
Total votes 407: ↑402 and ↓5+470
Comments100

Вся правда о когнитивных искажениях

Reading time9 min
Views61K
Всё чаще на Хабре можно встретить выражения типа «типичная ошибка выжившего» или «эффект Даннинга-Крюгера в действии». Предполагается, что авторы таких высказываний достаточно компетентны, чтобы позволять себе подобного рода суждения. Но так ли это? В этой статье мы попробуем копнуть парочку когнитивных искажений чуть глубже, чем они рассматриваются в википедии.

узнать всю правду
Total votes 129: ↑116 and ↓13+133
Comments146

Как я людей на типы делил

Reading time5 min
Views15K

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

Проявить любопытство
Total votes 29: ↑22 and ↓7+21
Comments60

Уничтожение комаров

Reading time5 min
Views91K
Наступило лето и, пришла комариная пора. Конечно, готовиться к их уничтожению уже поздновато, но лучше поздно, чем никогда.

Вводные.

  1. Комар типичный русский может летать на 100 метров, а отдельные виды летают на запах до 5 километров, что акула. Это значит, что для того, чтоб у вас не было комаров, комаров не должно быть в радиусе 100 метров.
  2. Комар плодится каждые 5 дней. Поэтому, если в сутки уничтожается менее 1/5 популяции комаров, то методы будут бесполезны.
  3. Комарам нужно много воды. Они живут возле заболоченых мест, либо там где вода. На участках они обычно вылетают вечером после жаркого дня, когда выпадает роса — чтоб напиться.

Методики уничтожения комаров


Читать дальше →
Total votes 106: ↑105 and ↓1+142
Comments269

Усложнение команд консоли, 1979−2020

Reading time14 min
Views30K
Моё хобби — открыть «Философию UNIX» Макилроя на одном мониторе, одновременно читая маны на другом.

Первый из принципов Макилроя часто перефразируют как «Делайте что-то одно, но делайте хорошо». Это сокращение от его слов «Создавайте программы, которые делают одну вещь хорошо. Для новой работы создавайте новые программы, а не усложняйте старые добавлением новых "функций"».

Макилрой приводит пример:

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

Если вы откроете справку для ls, то она начинается с

ls [-ABCFGHLOPRSTUW@abcdefghiklmnopqrstuwx1] [file ...]

То есть однобуквенные флаги для ls включают все строчные буквы, кроме {jvyz}, 14-ти прописных букв, @ и 1. Это 22 + 14 + 2 = 38 только односимвольных вариантов.
Читать дальше →
Total votes 56: ↑54 and ↓2+70
Comments135

Юзабилити как опиум для народа

Reading time4 min
Views6.4K
Слово «Юзабилити» будоражит умы. Тут и там слышно «неюзабельно», появилось много рекомендаций на тему повышения юзабилити ресурсов, множество адептов культа юзабилити, множество молодых будущих юзабилистов. Слово окутано пеленой таинственности. Мистическое знание о том, как делать юзабилити, хотят получить все больше людей. Возникают вопросы о том, как продавать юзабилити, как внедрять юзабилити, как юзать юзабилити.

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

Читать дальше →
Total votes 110: ↑85 and ↓25+60
Comments80

Каково разрешение человеческого глаза (или сколько мегапикселей мы видим в каждый отдельный момент времени)

Reading time5 min
Views218K
Очень часто фотографы, а иногда и люди из других специальностей, проявляют интерес к собственному зрению.

Вопрос, казалось бы, простой на первый взгляд… можно погуглить, и всё станет ясно. Но практически все статейки в сети дают либо «космические» числа — вроде 400-600 мегапикселей (Мп), либо это и вовсе какие-то убогие рассуждения.

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

Начнём с общей структуры зрительной системы


  1. Сетчатка
  2. Зрительный нерв.
  3. Таламус(ЛКТ).
  4. Зрительная кора.



Сетчатка состоит из трёх типов рецепторов: палочки, колбочки, фоторецепторы(ipRGC).
Читать дальше →
Total votes 249: ↑244 and ↓5+239
Comments404

Еще раз о принципе подстановки Лисков, или семантика наследования в ООП

Reading time9 min
Views18K
Наследование — один из столпов ООП. Наследование используется для того, чтобы переиспользовать общий код. Но не всегда общий код надо переиспользовать, и не всегда наследование — самый лучший способ для переиспользования кода. Часто получается, так, что есть похожий код в двух разных куска кода (классах), но требования к ним разные, т.е. классы на самом деле друг от друга наследовать может и не стоит.
Читать дальше →
Total votes 27: ↑22 and ↓5+17
Comments32

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

Reading time7 min
Views7.4K

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




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

Такова природа одного из самых радикальных доказательств, полученных за последние годы. Его сделал Тим Остин, математик из Калифорнийского университета в Лос-Анджелесе. Но вместо цветов работа Остина связана с одним из наиболее изученных объектов в математике: математическим описанием изменений.
Читать дальше →
Total votes 29: ↑22 and ↓7+15
Comments7

Ликбез по типизации в языках программирования

Reading time12 min
Views517K
image

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

В полной версии находится подробное описание всех видов типизации, приправленное примерами кода, ссылками на популярные языки программирования и показательными картинками.
Читать дальше →
Total votes 239: ↑232 and ↓7+225
Comments180

Заблуждения программистов о Unix-времени

Reading time3 min
Views61K
Приношу извинения Патрику МакКензи.

Вчера Дэнни поинтересовался любопытными фактами о Unix-времени, а я вспомнил, что иногда оно работает совершенно неинтуитивно.

Вот эти три факта кажутся в высшей степени разумными и логичными, не так ли?

  1. Время Unix — это количество секунд с 1 января 1970 года 00:00:00 UTC.
  2. Если подождать ровно одну секунду, то время Unix изменится ровно на одну секунду.
  3. Время Unix никогда не двигается назад.

Всё это неправда.
Читать дальше →
Total votes 98: ↑90 and ↓8+82
Comments134

Information

Rating
Does not participate
Location
Владивосток, Приморский край, Россия
Date of birth
Registered
Activity