Pull to refresh
7
16
Send message

Новое поколение домашнего ПО от МойОфис — рассказываем, как мы переизобрели наши редакторы

Reading time6 min
Views5.2K

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

Читать далее
Total votes 30: ↑24 and ↓6+23
Comments75

ОС «Аврора» — веб-сервер в кармане

Level of difficultyMedium
Reading time6 min
Views12K

Привет, читатель!

В начале июня я опубликовал обзор смартфона с ОС «Аврора». После этого взялся изучать документацию к SDK, решил написать пару небольших приложений и портировать один проект на телефон. В процессе понял, что для выполнения команд, просмотра файлов и доставки пакетов требуется консоль. В какой-то момент стало любопытно покопаться и посмотреть, какие приложения есть в репозиториях «Авроры» и с чем из этого можно поиграться. Выбор оказался весьма широк, но самым интересным для меня был исполнитель интерпретируемого языка. Если вам интересно, какой код можно запустить со смартфона на «Авроре» и какие могут возникнуть нюансы, прошу под кат!
Читать дальше →
Total votes 41: ↑40 and ↓1+49
Comments10

Подборка игр с низкоуровневым программированием

Level of difficultyEasy
Reading time5 min
Views30K

TL;DR

Игры от Zachtronics:

TIS-100, EXAPUNKS, SHENZHEN I/O

Про создание процессора от логических элементов и до написания кода на ассемблере: браузерная бесплатная nandgame.com, более продвинутая Turing complete.

Если Вам нравится какая-то игра из перечисленных - наверно, и остальные тоже подойдут. В каждую из них я наиграл по 30+ часов, получил кучу удовольствия и научился чему-то новому.

Подробности
Total votes 65: ↑64 and ↓1+77
Comments26

Цифровая крепость: как защитить себя в мире киберугроз

Level of difficultyMedium
Reading time21 min
Views4.1K

В нашу эпоху, когда цифровые технологии пронизывают каждый аспект нашей жизни, вопрос кибербезопасности становится как никогда актуальным. Мы живем в мире, где информация стала валютой, а ее защита — необходимостью. Ох, как же быстро меняется ландшафт угроз! Будто вчера мы беспокоились о простых вирусах, а сегодня сталкиваемся с изощренными APT‑атаками и программами‑вымогателями.

Представьте себе: вы сидите в уютном кафе, потягивая латте и просматривая новости на смартфоне. Кажется, что может быть безопаснее? А между тем, в этот самый момент ваши данные могут быть под прицелом киберпреступников. Бац! — и ваша банковская информация уже путешествует по даркнету. Или, того хуже, ваша компания становится жертвой масштабной кибератаки, парализующей работу на недели.

Но не спешите паниковать! Хотя угрозы и кажутся вездесущими, у нас есть инструменты и знания, чтобы противостоять им. В этой статье мы глубоко нырнем в мир современной кибербезопасности. Мы разберем наиболее актуальные угрозы, с которыми сталкиваются как рядовые пользователи, так и крупные корпорации. А главное — вооружимся знаниями о самых эффективных методах защиты.

Готовы построить свою цифровую крепость? Тогда пристегните ремни — мы отправляемся в увлекательное путешествие по лабиринтам кибербезопасности!

Читать далее
Total votes 4: ↑4 and ↓0+8
Comments6

Импортозамещение, которое мы потеряли: советские языки программирования и их создатели — часть 1 (1950-е — 1960-е)

Reading time7 min
Views37K

Продолжаем наш ретроспективный цикл о тех советских разработках, которые стали историей и за которые, как принято говорить — “не стыдно”. В предыдущих постах цикла мы уже затрагивали разработку языков программирования в СССР и в этом посте хотели остановиться на ней подробнее. Несмотря на достаточно скромные достижения в этой области, разработчики языков и трансляторов знали моменты триумфа, а фундаментальный вклад советских ученых в развитие программирования ощутим и сегодня. Под катом немного о языках и трансляторах, разработанных в Стране Советов в 50-е — 60-е годы, а также об их создателях. 

Читать далее
Total votes 44: ↑39 and ↓5+42
Comments93

Импортозамещение, которое мы потеряли: «Сетунь» — судьба первых серийных троичных компьютеров

Level of difficultyEasy
Reading time16 min
Views24K

Многие знают, что СССР был родиной т. н. «троичных машин», т. е. компьютеров, использующих не двоичную, а троичную систему счисления. Они стали уникальной страницей в истории вычислительной техники. Единственный серийный и самый известный пример троичной ЭВМ — советский компьютер «Сетунь», разработанный в 1958 году под руководством Николая Брусенцова, при активном участии Льва Гутенмахера, Сергея Соболева и Евгения Жоголева.

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

Осторожно лонгрид
Total votes 44: ↑39 and ↓5+40
Comments172

Какими силами закручиваются в вихри  разрушительные  смерчи и тропические ураганы?

Reading time22 min
Views4.6K

 

Сколько весят дождевые облака?

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

Самое занятное, что это является правдой!

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

Читать далее
Total votes 41: ↑37 and ↓4+49
Comments62

Взлом YouTube для быстрого скачивания видео

Reading time9 min
Views72K
Мы неоднократно рассказывали о специальном софте, который позволяет скачивать видео с YouTube. Это в первую очередь youtube-dl (yt-dl) и его клоны, такие как yt-dlp и yt-dlc. С ними воюют могучие копирасты, пытаются удалить их из поисковой выдачи, с хостингов, с Github и так далее, по известной схеме «тотальная война».

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

Сами программки — просто технические инструменты для скачивания общедоступного контента, они ничего не воруют и не пиратят. Просто доступ происходит нестандартным способом, который не предусмотрен официально. Посмотрим, как это делается.
Читать дальше →
Total votes 123: ↑113 and ↓10+148
Comments421

Zen of Python: история, реализация и пасхалки

Level of difficultyEasy
Reading time6 min
Views7.1K

В мире программирования на Python существует особая философия, представляющая собой специальный документ под названием Zen of Python (Дзен Python). Он включает принципы, направленные на написание ясного, простого и элегантного кода на Python. В этой статье мы поговорим об истории создания этого документа, его реализации и пасхалках, связанных с ним.

Читать далее
Total votes 64: ↑63 and ↓1+62
Comments5

Bad Apple для MSX на CC'21

Reading time5 min
Views10K

Если у чего-то есть экран, то там обязана играть Bad Apple!. Именно так думал и я, каково же было моё удивленние, когда узнал, что Bad Apple не существует на MSX. И вот почему... прошу под кат...

О том как рождалась Bad Apple для MSX...
Total votes 47: ↑46 and ↓1+62
Comments29

Культурный феномен клипа Bad Apple и мой BAD AON

Level of difficultyEasy
Reading time20 min
Views16K

Уже десять лет на демосцене существует довольно странная, но интересная традиция. Нет, в баню с друзьями ходят без неё, но очень многие делают конверсии популярного видеоклипа Bad Apple на различные маломощные платформы прошлых лет. Как-то: ZX Spectrum, Game Boy, Sega Genesis, БК-0011М, и чем дальше, тем страньше и страньше. Это одновременно и упражнение в реализации цифрового видео в условиях крайне ограниченных ресурсов, и в адаптации контента под возможности максимально хардкорных ретро-платформ.

Сегодня рассмотрим само явление Bad Apple — откуда оно взялось и какое отношение имеет к компьютерам, а также мою новейшую разработку в этой области, демонстрацию BAD AON. В прошлом я уже делал подход к этому снаряду с версией для 8-битной NES, а в этот раз сделал адаптацию для, смею надеяться, одной из наиболее необычных платформ. Разглядеть клип будет трудновато, но если хорошенько прищуриться (я серьёзно), он всё ещё вполне узнаваем.
Читать дальше →
Total votes 132: ↑132 and ↓0+174
Comments35

Начинаем работу с Google Sheets на Python. От регистрации до чтения данных

Reading time11 min
Views194K
Довольно долго я обходился выгрузкой данных в Excel, но мода меняется, пользователи хотят в облака.

Начав переводить ряд проектов на Python, решил, что самое время сменить (или дополнить) Excel чем-то более современным.

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

Мне очень помогли статьи:


Как обычно – когда впервые за что-то берешься, то сталкиваешься с массой вопросов, которые потом вызывают лишь недоумение – как можно было об этом вообще задумываться. Элементарно же!

Возможно, я просто шел длинным путем – буду рад, если вы меня поправите.

Все действия выполнялись на компьютере с Windows + Python 3.6.6, также использовался Jupyter Notebook.

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

Код, использованный в статье, доступен в репозитории
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments4

Руководство по магическим методам в Питоне

Reading time28 min
Views591K
Это перевод 1.17 версии руководства от Rafe Kettler.


Содержание


  1. Вступление
  2. Конструирование и инициализация
  3. Переопределение операторов на произвольных классах
  4. Представление своих классов
  5. Контроль доступа к атрибутам
  6. Создание произвольных последовательностей
  7. Отражение
  8. Вызываемые объекты
  9. Менеджеры контекста
  10. Абстрактные базовые классы
  11. Построение дескрипторов
  12. Копирование
  13. Использование модуля pickle на своих объектах
  14. Заключение
  15. Приложение 1: Как вызывать магические методы
  16. Приложение 2: Изменения в Питоне 3


Вступление


Что такое магические методы? Они всё в объектно-ориентированном Питоне. Это специальные методы, с помощью которых вы можете добавить в ваши классы «магию». Они всегда обрамлены двумя нижними подчеркиваниями (например, __init__ или __lt__). Ещё, они не так хорошо документированны, как хотелось бы. Все магические методы описаны в документации, но весьма беспорядочно и почти безо всякой организации. Поэтому, чтобы исправить то, что я воспринимаю как недостаток документации Питона, я собираюсь предоставить больше информации о магических методах, написанной на понятном языке и обильно снабжённой примерами. Надеюсь, это руководство вам понравится. Используйте его как обучающий материал, памятку или полное описание. Я просто постарался как можно понятнее описать магические методы.
Читать дальше
Total votes 143: ↑139 and ↓4+135
Comments59

PyZelda своими руками или как геймдевить без Unreal, Unity и кредитов

Level of difficultyMedium
Reading time43 min
Views10K

Хабры и Хаброчки, я хотел бы перед самой статьёй обсудить вопрос целесообразности писать свой движок, вместо готовых решений. Есть куча статей, которые опишут разные движки от более популярных до менее. Я бы хотел затронуть немного другой вопрос: "Как человеку, который изучал программирование много лет заняться геймдевом?". Обычно, есть два пути в геймдев:

Умышленный путь. Это когда человек, который играет в игры рано или поздно решит их создать. Тогда, он выбирает где ему учиться этому и выучивает игровые движки и C-образные языки к ним (чаще всего, C#).

Путь прогеров. Программист увлекается математикой и пишет код. Так или иначе, везде где есть код — есть компьютер. Цифровые развлечения (в том числе и игры) не проходят мимо тех людей, который постоянно пишут код. Так, часть прогеров решает написать свою игру и начать свой путь в геймдев. Об этом пути мы и поговорим.

Так зачем выбирать "сложный" путь? Во-первых, не для всех он сложнее. Лично мне сложнее перейти на C# с использованием Unity, чем написать новый проект на Python. Во-вторых, люди не всегда понимают сам движок. Сейчас я преподаю в институте "Бизнеса и Дизайна". Это один из первых профильных учреждений, занимающихся геймдевом. И вот у студентов я спросил зачем им движок. Каково было моё удивление, что далеко не все понимаю, вообще зачем он нужен. Спойлер, не из-за пресетов.

Всех заинтересовавшихся, приглашаю в мир змеиных игр!

Погрузиться в змееленд
Total votes 42: ↑42 and ↓0+42
Comments25

Его Город Солнца

Level of difficultyEasy
Reading time16 min
Views10K

Михаил Алексеевич Лаврентьев был не только выдающимся учёным и создателем Сибирского Отделения Академии Наук СССР, сибирской науки. Он был патриотом, борцом за светлое будущее и созидателем.
Предлагаю вашему вниманию очень личную точку зрения на эту гениальную личность.

Читать далее
Total votes 63: ↑59 and ↓4+75
Comments36

Советская робототехника: андроиды, промышленность, искусственный интеллект

Level of difficultyEasy
Reading time8 min
Views6.6K

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

Читать далее
Total votes 41: ↑35 and ↓6+34
Comments22

Information

Rating
421-st
Location
Россия
Date of birth
Registered
Activity