Вы сталкивались с тем, что ноутбук случайно включается, хотя вы уверены, что отправляли его в сон?
Бывало, что батарея оказывалась пустой, хотя вы точно-точно помните, как убирали в сумку заряженный на 100% ноутбук?
Тогда вам сюда:
User
Вы сталкивались с тем, что ноутбук случайно включается, хотя вы уверены, что отправляли его в сон?
Бывало, что батарея оказывалась пустой, хотя вы точно-точно помните, как убирали в сумку заряженный на 100% ноутбук?
Тогда вам сюда:
Однажды я захотел создать небольшую NPM библиотеку по всем “best practices” - с покрытием тестами, написанием документации, ведением нормального версионирования и changelog'а и т.п. Даже написал пару статей, которые в деталях описали, какие вопросы решает библиотека и как её использовать. И одной из интересных для меня меня задач при создании библиотеки была задача по максимальному уменьшению размера выходного NPM пакета - того, что в конечном итоге в теории будет использовать другой программист. И в этой статье я бы хотел описать, к каким методам я прибегал для того, чтобы достигнуть желанной цели.
В начале года многие школьники ищут новые направления для развития. Одним из наиболее популярных сегодня является 3D-моделирование. Рассказываем, как начать обучение анимации для детей и подростков и делимся полезной информацией.
Для кого статья
Вы уже написали свои первые 1000 строк кода и сейчас хотите сделать их понятнее, потому что внесение изменений занимает столько-же времени, сколько написать заново, но советы из ООП, SOLID, clean architecture и т.д. непонятны вам.
О чем статья
Эта статья - не объяснение принципов ООП, SOLID своими словами, а попытка создать промежуточный уровень между никакой и чистой архитектурами. 100% советы будут накладываться друг на друга и перефразировать SOLID, но так даже лучше.
От кого статья
Я Middle разработчик. Конечно, не гуру разработки, но кому, как не мне, помнить о проблемах, с которыми сталкивался когда только начинал свой путь.
Отказ от ответственности
Уверен, каждый пункт из статьи может быть предметом спора, но на то это и вольный пересказ. Вся статья идет под эмблемой "Лучше применить такую архитектуру, чем не применять вообще никакой".
Формат статьи - наводящие советы / вопросы.
«Гло́кая ку́здра ште́ко будлану́ла бо́кра и курдя́чит бокрёнка». Эту фразу из несуществующих слов предложил в начале XX века академик Л.В. Щерба. Из неё ясно, что «будлану́ла» — действие, которое ку́здра (ж.р.) совершила в отношении бо́кра (м.р.); бокрёнок, скорее всего, детёныш бокра. Для русского это очевидно сразу. Иностранцу придётся сначала выучить русский. Фраза показывает, что язык — это НЕ СЛОВА. Слова легко переходят из одного языка в другой. Язык — это принципы, по которым слова связываются друг с другом.
В том, чтобы научиться говорить, ничего сложного нет — проблема это придуманная. А все неудачи от того, что люди, как говорится, put the cart before the horse, ставят телегу впереди лошади. Пытаются говорить, не понимая, как связываются слова в языке. Это как пытаться бегать, не научившись ходить.
Не будем обсуждать руссо туристо, когда говорят наполовину инфинитивами, наполовину знаками. Выделим три уровня «говорения»:
1-й уровень: говорим по-простому, но +/- грамматически правильно. Например, не зная выражения «прикрой форточку», говорим проще: «закрой маленькое окно, но не до конца».
2-й уровень: говорим на конкретные темы именно теми фразами, которые используют носители языка («прикрой форточку»).
Есть реальная история про русского математика, который читал лекцию на английском в Оксфорде. Упоминал степени, корни, дроби и прочие математические штуки, которые не каждый переводчик сумеет описать без подготовки. А после лекции к нему подошла студентка и попыталась заговорить. Математик улыбнулся: «Sorry, I don’t speak English». Лекцию он прочитал настоящими фразами носителей, но за пределами описания математических формул и действий едва говорил на 1-м уровне.
Здравствуйте, меня зовут Максим Кульгин. Моя компания xmldatafeed.com занимается парсингом много лет. На днях мы вернули 16 000 руб. клиенту, так как не смогли парсить весь iherb.com с нужной клиенту скоростью (а там очень много товаров). Проверил и оказалось, что это единичный случай за весь год и родилась эта, чуть-чуть философская статья.
Одна из наших прошлых статей (самостоятельный парсинг сайтов) спровоцировала острые дискуссии среди читателей. И в комментариях к статье, и в нашем телеграм-канале (пишем, в том числе, про заработок на парсинге) обсуждение дилеммы «человек против роботов» (здравствуй, Будущее!) перевело взгляд в философскую плоскость. Все технические разговоры про парсинг неизменно сводятся к рассмотрению средств противодействия ботам и способам это противодействие нейтрализовать.
Очень часто возникающий вопрос: где можно разместить скрипты на Python, Flask-приложение, телеграм или дискорд ботов?
Один из вариантов — на своем компьютере при наличии внешнего IP-адреса и опыта в настройке проброса портов на роутере.
Цель этот статьи - подробная инструкция, как сделать хостинг Python-скриптов бесплатно и доступным 24/7 на примере телеграм-бота
Динамическое вычисление сигнатуры строки с возможностью применения этих сигнатур для сортировки строк в алфавитном порядке по всем символам.
Как отсортировать строки в алфавитном порядке не сортируя их в алфавитном порядке.
Журналисты издания The New York Times сообщили, что Пол Грэм является одним из самых уважаемых людей среди разработчиков, основателей и инвесторов. Он является профессиональным программистом, хакером, создателем дерзкого инкубатора Y Combinator, философом.
В своих интервью Грэм говорит, что его цель и задача — создание общества, в котором не будет войн и болезней, а люди будут счастливыми и успешными. Он также отмечает, что в будущем все вопросы будут решаться не людьми, а компьютерами.
До сих пор переводами его эссе на русский язык занимались энтузиасты. Переводы эссе хранились в разных источниках часть из которых уже утеряна, четверть от всех эссе существовала без перевода. Заметив данную несправедливость, я решил ее исправить.
К началу работы я сумел найти 156 эссе, хотя переводов существовало больше, я не сумел восстановить утерянные. В 22 переводах не было примечаний и еще 56 эссе не были переведены целиком.
С начала работы у меня были сомнения по оформлению переводов: оставлять ли оригинальное форматирование эссе, вставлять ли ссылки из оригинала, вставлять ли примечания. Я постарался оставить эссе в том виде, в котором Пол хотел донести их до читателя.
Я регулярно отслеживаю выход новых эссе на сайте Пола и перевожу их.
Ознакомьтесь с переводами и следите за новыми на сайте.
Меня зовут Рома Васильев, я дата-инженер. В марте 2022 года мы с коллегой создали стартап — сервис-посредник, через который в России можно купить подписки на Netflix, Spotify, PlayStation, Steam и другие площадки, которые ушли с рынка.
В этой статье расскажу, как это всё работает: где закупаем подписки, как подключили эквайринг, чтобы людям не заморачиваться с оплатой чат-ботам, как облажались с отправкой подарочных кодов через API. И как мы стартанули, совмещая бизнес с восьмичасовой основной работой.
В 2021 году Google анонсировал Material You и тем самым взял курс на персонализацию Android-устройств.
Одним из способов настройки внешнего вида своего рабочего стола для пользователя стала добавленная в этом году в Android 13 новая функция - "Тематические значки".
SOLID это аббревиатура, которая обозначает пять принципов объектно-ориентированного программирования. Эти принципы помогают разработчикам писать качественный и поддерживаемый код. Вот как выглядят эти принципы.
Для передачи данных по сети есть хорошо зарекомендовавшие себя стандарты - например, SOAP, gRPC, AMQP, REST, GraphQL.
При создании вебсайтов малой, средней и большой сложности с потоками данных к бэкенду и обратно в JSON формате обычно используются последние два с их вариантами. Верней, только варианты, потому что REST и GraphQL - ресурсо-ориентированные стандарты. Это как бы просто перенос элементарной работы с базой данных на клиента (хотя под "ресурсом" может пониматься и абстракция). Обычно таких запросов не больше трети от всего бэкенд API.
Попытка сделать весь API максимально RESTful страшно раздувает код и грузит сеть. Потому что остальные две трети запросов - в форме команд на бэкенд проделать какие-то действия, слабо отображающиеся на CRUD над некими ресурсами. И вариантов послать такие запросы достаточно много. Даже, чересчур.
Прежде чем начать говорить про тайм-менеджмент и как всё успевать, начну с плохой шутки про электрика. Как определить является электрик хорошим или плохим? Правильно! Любой живой электрик автоматически хороший. Теперь немного обо мне. Я работаю преподавателем в университете, учусь в магистратуре, веду YouTube-канал по программированию PyLounge, занимаюсь репетиторством, пишу статьи, выступаю на конференциях, мастер-класса, параллельно изучаю новые технологии, хожу в спортзал, а ещё у меня есть семья и друзья. Не воображаемые. Это важно. И если я до сих пор жив, и сейчас пишу это, значит что-то в распределении времени и тайм-менеджменте я знаю.
Каждый день мы пользуемся десятками различных мобильных приложений и посещаем десятки, если не сотни, всевозможных сайтов. Часто при этом мы сталкиваемся с какими-то их неприятными особенностями — что-то сделано недостаточно продуманно, где-то разработчик запилил фичу спустя рукава. И всё бы ничего, но некоторые из этих моментов по-настоящему вездесущи, встречаются ежедневно и неимоверно раздражают.
В этой статье я попытался перечислить некоторые из таких наиболее распространённых косяков. Если вы отвечаете за разработку/дизайн/менеджмент какого-либо сайта или приложения, пожалуйста, никогда так не делайте. Правда, ну сколько можно...
Как правильно писать API авто тесты на Python используя Pytest, Pydantic, Httpx, Allure.
Эта статья как продолжение статьи Как правильно писать UI авто тесты на Python. Если мы говорим про UI автотесты, то тут хотя бы есть паттерны Page Object, Pagefactory; для API автотестов таких паттернов нет. Да, существуют общие паттерны, по типу Decorator, SIngletone, Facade, Abstract Factory, но это не то, что поможет протестировать бизнес логику на уровне API тестируемой системы
Всем привет, меня зовут Александр Калыргин, сейчас я активно занимаюсь сферой получения и анализа данных. Захотелось показать, как можно без особых проблем получить базы организаций, зарегистрированных в нужном вам регионе.
"Простое лучше сложного".
Лучшая функция Python, которая применяет эту философию из "дзен Python", - это декоратор.
Декораторы могут помочь вам писать меньше кода для реализации сложной логики и повторно использовать его повсюду.
Более того, существует множество замечательных встроенных декораторов Python, которые значительно облегчают нам жизнь, поскольку мы можем просто использовать одну строчку кода для добавления сложных функций к существующим функциям или классам.
Болтать не буду. Давайте посмотрим на отобранные мной 6 декораторов, которые покажут вам, насколько элегантен Python.