Search
Write a publication
Pull to refresh
-2
0

Пользователь

Send message

Занимательная мнемотехника: собираем слуховую память из зрительной

Reading time11 min
Views11K


Довольно часто можно слышать, как кто-нибудь говорит про себя: «У меня плохая память». И если мы немного представляем, как работает память, то на этом месте мы должны задать вопрос: «А какая именно?» Дело в том, что существует много видов памяти, и они могут работать (а также ломаться) независимо друг от друга.
Читать дальше →

Моделирование бизнес-процессов как часть проекта по внедрению ERP-системы

Reading time8 min
Views13K
Перед началом очередного проекта по внедрению информационной системы, охватывающей большинство участков функционирования предприятия я решил написать ряд статей со своими соображениями по обоснованию того факта, что на крупных промышленных предприятиях, особенно на предприятиях старых, ведущих свою деятельность десятки лет, больше половины ERP-проектов «не взлетают». Буду писать эти статьи больше для себя в качестве «склерозника» для формирования бесед с топ-менеджерами предприятия и структурирования тех соображений, которые я вынес на основе своего опыта.

Эти статьи не несут собой целью рассказать миру о том, какой я крутой реализатор или о том, что я лучше всех знаю как надо реализовывать такие проекты. Если вы скажете, что это «очередная статья неудачника, который ну прямо все понимает неправильно» — это тоже будет для меня ценностью, так как ожидаю, что кто-то поделится своими соображениями в комментариях.
Читать дальше →

Чистое зло Python

Reading time7 min
Views30K

Темные силы не дремлют. Они пробираются в дивное королевство Python и используют черную магию, чтобы осквернить главную реликвию — чистый код. Однако опасны не только злые чары.


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



Читать дальше →

Linux. Настройка клавиатуры

Reading time7 min
Views112K

Для чего вообще специально настраивать клавиатуру?


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


Почему я захотел изменить свою клавиатуру?


Во-первых, когда я начал использовать vim как основной редактор, я понял, что не хочу каждый раз тянуться к ESC. Кроме того, я писал в основном на питоне, поэтому ; нажимал сильно реже, чем :, а в vim разница стала более явной.


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

Читать дальше →

Книга «Объектно-ориентированный подход. 5-е межд. изд.»

Reading time10 min
Views8.4K
imageОбъектно-ориентированное программирование (ООП) лежит в основе языков C++, Java, C#, Visual Basic .NET, Ruby, Objective-C и даже Swift. Не могут обойтись без объектов веб-технологии, ведь они используют JavaScript, Python и PHP.

Именно поэтому Мэтт Вайсфельд советует выработать объектно-ориентированное мышление и только потом приступать к объектно-ориентированной разработке на конкретном языке программирования.

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

Технологии программирования непрерывно меняются и развиваются, но объектно-ориентированные концепции не зависят от платформы и остаются неизменно эффективными. В этом издании основное внимание уделяется фундаментальным основам ООП: паттернам проектирования, зависимостям и принципам SOLID, которые сделают ваш код понятным, гибким и хорошо сопровождаемым.
Читать дальше →

За бесконечность

Reading time3 min
Views1.9K

Пятый выпуск нашего подкаста “В бесконечность и далее”, который мы выпустили почти 1,5 года назад, мы назвали "За бесконечность" потому что в нём (начиная с 4й минуты) мы обсуждаем место освоения космоса в современном мире. Также, в этом выпуске мы говорим о том, когда высохнут океаны на Земле, о сложностях колонизации Марса, об отсутствии необходимости начинать космическую экспансию, а также о многом другом.


Наше обсуждение темы можно послушать (начиная с 3:30) в Youtube, в Яндекс музыка, в Google подкастах, на устройствах Apple и Android, на нашем сайте, на сайте-хостинге подкаста и много где ещё. А ниже краткая выжимка-стенограмма из нашего диалога.


image


  • 4:10 У человечества есть как минимум три пути: самоуничтожение; адаптация планеты Земля под себя и себя под условия планеты; космическая экспансия
  • 5:10 Через миллиард лет на Земле не останется океанов. Мы кратко обсуждаем куда денется вода и почему
  • 6:40 А зачем человечеству космос? Один из вероятных ответов — незачем.
Читать дальше →

Пишем сервис одноразовых записок на Python

Reading time7 min
Views11K

КДПВ


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


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


Для решения этой проблемы мы напишем свой сервис самоуничтожающихся шифрованных записок на языке Python с использованием модуля cryptography и фреймворка Flask и развернем его на облачном сервисе Heroku.

Читать дальше →

Питонистический подход к циклам for: range() и enumerate()

Reading time3 min
Views58K
Автор заметки, перевод которой мы сегодня публикуем, хочет рассказать о некоторых особенностях использования циклов for в Python.



Цикл for — это один из краеугольных камней программирования. С этими циклами будущие программисты знакомятся в самом начале учёбы и, после первого знакомства, пользуются ими постоянно.
Читать дальше →

Книга «Изучаем Python: программирование игр, визуализация данных, веб-приложения. 3-е изд.»

Reading time9 min
Views17K
image Привет, Хаброжители! Мы выпустили третью версию #1 Best Seller in Python Programming Amazon — популярного в мире руководства по языку Python.

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

Во второй части вы примените новые знания на практике и создадите три проекта: аркадную игру в стиле Space Invaders, визуализацию данных с удобными библиотеками Python и простое веб-приложение, которое можно быстро развернуть онлайн. Работая с книгой, вы научитесь: ∙ Использовать мощные библиотеки и инструменты Python: Pygame, Matplotlib, Plotly и Django ∙ Создавать 2D-игры разной сложности, которыми можно управлять с клавиатуры и мыши ∙ Создавать интерактивную визуализацию данных ∙ Разрабатывать, настраивать и развертывать веб-приложения ∙ Разбираться с багами и ошибками

Новое издание было тщательно переработано и отражает последние достижения в практиках программирования на Python. Первая часть книги была дополнена новой информацией о f-строках, константах и управлении данными. Во второй части был обновлен код проектов. Структура проектов и код стали более чистыми и понятными, теперь они используют всю мощь популярных библиотек и инструментов, таких как Plotly и Django.

Читать дальше →

Полезные советы по Python, которых вы ещё не встречали. Часть 2

Reading time7 min
Views38K
Недавно мы опубликовали перевод материала, в котором были приведены полезные советы для Python-программистов. У того материала есть продолжение, которое мы представляем вашему вниманию сегодня.


Читать дальше →

Конфигурационные файлы в Python

Reading time4 min
Views126K

Конфиги. Все хранят их по разному. Кто-то в .yaml, кто-то в .ini, а кто-то вообще в исходном коде, подумав, что "Путь Django" с его settings.py действительно хорош.


В этой статье, я хочу попробовать найти идеальный (вероятнее всего) способ хранения и использования конфигурационных файлов в Python. Ну, а также поделиться своей библиотекой для них :)

Читать дальше →

Самый экономичный способ управления двигателями – преобразователь частоты

Reading time6 min
Views27K

В промышленности свыше 60% электроэнергии потребляется асинхронными электроприводами – в насосных, компрессорных, вентиляционных и других установках. Это наиболее простой, а потому дешевый и надежный тип двигателя.

Технологический процесс различных производств в промышленности требует гибкого изменения частоты вращения каких-либо исполнительных механизмов. Благодаря бурному развитию электронной и вычислительной техники, а также стремлению снизить потери электроэнергии появились устройства для экономного управления электродвигателями различного типа. В этой статье как раз и поговорим о том, как обеспечить максимально эффективное управление электроприводом. Работая в компании «Первый инженер» (группа компаний ЛАНИТ), я вижу, что наши заказчики всё больше внимания уделяют энергоэффективности

Читать дальше →

Python (+numba) быстрее Си — серьёзно?! Часть 2. Практика

Reading time4 min
Views21K

Это вторая часть статьи про numba. В первой было историческое введение и краткая инструкция по эксплуатации numba. Здесь я привожу слегка модифицированный код задачи из статьи про хаскелл «Быстрее, чем C++; медленнее, чем PHP» (там сравнивается производительность реализаций одного алгоритма на разных языках/компиляторах) с более детальными бенчмарками, графиками и пояснениями. Сразу оговорюсь, что я видел статью Ох уж этот медленный C/C++ и, скорее всего, если внести в код на си эти правки, картина несколько изменится, но даже в этом случае то, что питон способен превысить скорость си хотя бы в таком варианте, само по себе является примечательным.


Читать дальше →

Python (+numba) быстрее Си — серьёзно?! Часть 1. Теория

Reading time7 min
Views86K

Давно собирался написать статью о numba и о сравнении её быстродействия с си. Статья про хаскелл «Быстрее, чем C++; медленнее, чем PHP» подтолкнула к действию. В комментариях к этой статье упомянули о библиотеке numba и о том, что она магическим образом может приблизить скорость выполнения кода на питоне к скорости на си. В данной статье после небольшого обзора по numba (часть 1) чуть более подробный разбор этой ситуации (часть 2).


Читать дальше →

Хаос зависимостей в Python

Reading time11 min
Views21K
Знакомы ли вы с историей Python packaging? Ориентируетесь ли в форматах пакетов? Знаете ли, что распутывать клубок зависимостей придется даже когда кажется, что вот оно чудо — zero dependency? Уверен, что знакомы со всем этим не так хорошо, как автор библиотеки DepHell.



Мне удалось поговорить с Никитой Вороновым, больше известным как Gram или orsinium, и расспросить его о теме будущего доклада, болях плохих решений резолвинга зависимостей, о DepHell, pip, принципе first match wins, о Гвидо, Pipfile, инкрементальном развитии Python и будущем экосистемы.
Читать дальше →

Разработка чрезвычайно быстрых программ на Python

Reading time7 min
Views70K
Ненавистники Python всегда говорят, что одной из причин того, что они не хотят использовать этот язык, является то, что Python — это медленно. Но то, что некая программа, независимо от используемого языка программирования, может считаться быстрой или медленной, очень сильно зависит от разработчика, который её написал, от его знаний и от умения создавать оптимизированный и высокопроизводительный код.



Автор статьи, перевод которой мы сегодня публикуем, предлагает доказать то, что те, кто называет Python медленным, неправы. Он хочет рассказать о том, как улучшить производительность Python-программ и сделать их по-настоящему быстрыми.
Читать дальше →

Подборка @pythonetc, декабрь 2019

Reading time3 min
Views5.6K


Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.

Предыдущие публикации


Очевидно, что разные asyncio-задачи используют разные стеки. Можно в любой момент просмотреть их все, получив с помощью asyncio.all_tasks() все выполняемые сейчас задачи, а с помощью task.get_stack() получив стеки для всех задач.
Читать дальше →

«Красная» корпоративная культура — главная проблема российского бизнеса (Часть 1)

Reading time6 min
Views106K


«— Скажите, пожалуйста, куда мне отсюда идти? — А куда ты хочешь попасть? — ответил Кот. — Мне все равно… — сказала Алиса. — Тогда все равно, куда и идти, — заметил Кот.» (С) «Алиса в стране чудес»

Низкая производительность труда в России


Думаю, что те из вас, кто был в Греции, ни за что не согласятся, что греки работают лучше россиян. Тем не менее, по исследованиям Организации экономического сотрудничества и развития (ОСЭР) Россия со своим показателем производительности труда на уровне $26,5 в час уступает всем странам ОЭСР (по сути все развитые страны), включая Грецию, кроме Мексики, где он составляет $21,6. Средний для ОЭСР показатель — $54,8, а у лидеров — Ирландии и Люксембурга — на уровне $99 в час.
Читать дальше →

Повышение продуктивности при работе с Jupyter Notebook за 5 минут

Reading time2 min
Views47K

Для начала повторим основные горячие клавиши. Если вы их ещё не используете — начните обязательно. В долгосрочной перспективе время на изучение окупится многократно.


0. Основные горячие клавиши


  • Esc: Переключение между режимом выполнения и редактирования
  • A: Добавление пустой ячейки сверху
  • B: Добавление пустой ячейки снизу
  • DD: Удаления ячейки
  • C: Копирование ячеек
  • X: Вырезание ячеек
  • V: Вставка ячеек

1. Перезапуск блокнота


Для рестарта просто нажмите ESC + 00.


Читать дальше →

Особенности Jupyter Notebook, о которых вы (может быть) не слышали

Reading time10 min
Views372K
Jupyter Notebook – это крайне удобный инструмент для создания красивых аналитических отчетов, так как он позволяет хранить вместе код, изображения, комментарии, формулы и графики:



Ниже мы расскажем о некоторых фишках, которые делают Jupyter очень крутым. О них можно прочитать и в других местах, но если специально не задаваться этим вопросом, то никогда и не прочитаешь.
Читать дальше →

Information

Rating
Does not participate
Location
Томская обл., Россия
Registered
Activity