Pull to refresh
0
0
Send message

22 полезных примера кода на Python

Reading time5 min
Views641K

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

Некоторые из примеров вы могли уже видеть ранее, а другие будут новыми и интересными для вас. Все эти примеры легко запоминаются.
Читать дальше →
Total votes 53: ↑25 and ↓28-3
Comments36

Создание кроссплатформенного Smart TV приложения на базе библиотеки SmartBox для Samsung, LG, Philips и других

Reading time16 min
Views121K
Ввиду живого интереса к прошлой статье о библиотеке Smartbox, которая призвана стать основой для любого кроссплатформенного SmartTv приложения, я решили описать, как же создать такое приложение разом для трёх вендоров SmartTv устройств:

image
Как создать приложение. Как использовать библиотеку. Как запустить на устройствах и эмуляторах
Total votes 29: ↑18 and ↓11+7
Comments12

Делаем приём платежей криптовалютой своими руками

Reading time8 min
Views79K

Привет, Хабр!


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


В этой статье я постараюсь максимально подробно, без акцента на каком-либо языке программирования, описать, как сделать приём платежей Bitcoin (а также, при желании — Litecoin, Dash, Bitcoin Cash, Steep, ONION и т.п.), начиная с разворачивания полной ноды и заканчивания проверкой поступления платежа.

Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments21

Как устроено крупнейшее автосообщество Drive2.ru — трафик, монетизация и пользовательский контент

Reading time8 min
Views106K
image

Drive.ru и Drive2.ru — крупнейшее медиа об авто и сообщество, где пользователи пишут обо всем, что связано с автомобилями. Оба проекта используют рекомендательные технологии Relap.io. Мы расспросили Юрия Белоусова, директора по развитию проектов, как у них все устроено.

О чем говорили:


— Об истории проекта.

— О посещаемости и трафике.

— О деньгах и рекламе.

— О пользовательском контенте и СМИ 3.0.

— Как DRIVE2 помогает продавать авто.

— О достигнутом и планах.
Читать дальше →
Total votes 30: ↑23 and ↓7+16
Comments23

Курс MIT «Безопасность компьютерных систем». Лекция 1: «Вступление: модели угроз», часть 1

Reading time15 min
Views139K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Total votes 23: ↑22 and ↓1+21
Comments10

Кортеж здорового человека

Reading time5 min
Views29K

Именованный кортеж
Эта статья — об одном из лучших изобретений Python: именованном кортеже (namedtuple). Мы рассмотрим его приятные особенности, от известных до неочевидных. Уровень погружения в тему будет нарастать постепенно, так что, надеюсь, каждый найдёт для себя что-то интересное. Поехали!

Читать дальше →
Total votes 64: ↑64 and ↓0+64
Comments35

5 правил работы с суммами

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


Читать дальше →
Total votes 126: ↑120 and ↓6+114
Comments241

Как мы написали фриланс-биржу для Telegram

Reading time12 min
Views26K


Добрый день, дорогие Хабравчане! Сегодня решил рассказать вам о нашем опыте создания бота для Telegram на Node.js практически без опыта серверной разработки и на добровольных началах. Сразу оговорюсь: у меня за спиной чуть больше четырех лет разработки под iOS, у остальных членов команды тоже был опыт разработки от одного до шести лет в смежных областях. Для большинства из нас это был первый случай использования Node.js в сравнительно большом проекте. Как мы это сделали, зачем мы это сделали, почему фриланс-биржа и как она отличается от классических моделей, какие у нас были проблемы и как мы с ними боролись – под катом!
Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments29

Знай свой JIT: ближе к машине

Reading time14 min
Views27K
До того, как написанный нами код будет исполнен, он проходит довольно долгий путь. Андрей Мелихов в своем докладе на РИТ++ 2018 разобрал каждый шаг на этом пути на примере движка V8. Заходите под кат, чтобы выяснить, что даёт нам глубокое понимание принципов работы компилятора и как сделать JavaScript код производительнее.



Узнаем, является ли WASM серебряной пулей для повышения производительности кода, и всегда ли оправданы оптимизации.

Спойлер: «Преждевременная оптимизация — корень всех бед», Дональд Кнут.



О спикере: Андрей Мелихов работает в компании Яндекс.Деньги, активно пишет на Node.js, а в браузере — меньше, поэтому ему ближе серверный JavaScript. Андрей поддерживает и развивает сообщество devShacht, заходите познакомиться на GitHub или Medium.
Читать дальше →
Total votes 54: ↑53 and ↓1+52
Comments9

Архитектура микросервисов

Reading time18 min
Views259K


К сожалению, у меня нет опыта работы с микросервисами, но около года назад я очень активно интересовался этой темой и изучил все источники информации, какие смог найти. Я просмотрел несколько выступлений на конференциях, прочитал несколько статей очень авторитетных и опытных специалистов вроде Мартина Фаулера, Фреда Джорджа, Эдриана Кокрофта и Криса Ричардсона, чтобы как можно больше узнать о микросервисах. Эта статья — результат моих изысканий.
Total votes 79: ↑75 and ↓4+71
Comments267

Python: вещи, которых вы могли не знать

Reading time8 min
Views311K
Python — красивый и местами загадочный язык. И даже зная его весьма неплохо, рано или поздно находишь для себя нечто такое, что раньше не использовал. Этот пост отражает некоторые детали языка, на которые многие не обращают внимание. Сразу скажу: многие примеры являются непрактичными, но, оттого, не менее интересными. Так же, многие примеры демонстрируют unpythonic стиль, но я и не претендую на новые стандарты — я просто хочу показать, что можно делать вот так.
Читать далее
Total votes 139: ↑120 and ↓19+101
Comments120

Блокировки в MySQL

Reading time4 min
Views108K
На хабре часто обсуждаются принципы работы MySQL. Данный хабратопик посвящен механизмам блокировок, используемым в MySQL. Топик поможет начинающим изучать MySQL и, в некоторой степени, опытным хабралюдям.

Механизм блокирования в MySQL


Одновременный доступ нескольких клиентов к хранилищу данных может приводить к ошибкам различного типа. Например, одновременное чтение одним клиентом и запись другим клиентом одной и той же строки таблицы с большой вероятностью приведет к сбою или чтению некорректных данных. Механизмы блокировок позволяют избежать ситуаций одновременного доступа к данным, регламентируя механизм взаимодействия пользователей между собой.
Читать дальше →
Total votes 65: ↑62 and ↓3+59
Comments18

Игры, в которых нужно писать код (часть 2)

Reading time3 min
Views59K


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

Total votes 64: ↑64 and ↓0+64
Comments33

Ускоряем Nginx за 5 минут

Reading time5 min
Views282K
image
Попытайтесь повторить это сами

Как правило, настроенный должным образом сервер Nginx на Linux, может обрабатывать 500,000 — 600,000 запросов в секунду. Но этот показатель можно весьма ощутимо увеличить. Хотел бы обратить внимание на тот факт, что настройки описанные ниже, применялись в тестовой среде и, возможно, для ваших боевых серверов они не подойдут.

Минутка банальности.

yum -y install nginx

На всякий пожарный, создадим бэкап исходного конфига.

cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
vim /etc/nginx/nginx.conf

А теперь можно и похимичить!
Бдыжь-бдыжь
Total votes 203: ↑138 and ↓65+73
Comments127

Объяснение HTTPS на почтовых голубях

Reading time3 min
Views71K
image

Криптография — сложная штука для понимания. Она состоит математических теорем, доказательств, что повышает порог входа. Но даже если вы используете её в своём проекте, не обязательно вникать в эти алгоритмы, главное понимать принципы работы.

Этот пост — перевод статьи.

Если вы открыли эту статью с целью создать следующий HTTPS протокол, вы зашли не туда. Этой статьи будет не достаточно. В ней описаны принципы работы HTTPS на пальцах или по аналогии с почтовыми голубями.
Читать дальше →
Total votes 56: ↑46 and ↓10+36
Comments54

Python, под пиратским флагом

Reading time8 min
Views56K
image Йо-хо-хо, хабровчане!

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

Реализовать задумку мне помог python 3.6 и советы коллег программистов. Хотя статья и будет опираться на пример в конкретной игре, цель ее больше не рассказать историю хака, а расхвалить питон и показать еще не освоившим, что с ним может делать человек-не-программист и почему это так круто.

Читать дальше →
Total votes 55: ↑50 and ↓5+45
Comments41

Пишем умный контракт на Solidity. Часть 1 — установка и «Hello world»

Reading time6 min
Views133K

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


Smart Contract & Gas


Если на пальцах, "умный контракт" — это некоторый код, живущий внутри блокчейна. Любой участник сети может его вызвать за небольшую плату. Эта плата и называется Gas, дословно "топливо". Зачем это нужно? Для защиты майнера от злоупотребления мошенником его ресурсов.


Немногие знают, но даже в биткоине есть возможность писать эти самые контракты, но в силу некоторых причин этим мало кто занимается. Одна из главных проблем — язык Script не Тьюринг-полный и написать что-то более менее серьезное непросто (чтобы вы понимали масштаб проблемы — нет даже возможности добавить цикл). В случае с Ethereum все чуть по другому, языки Тьюринг-полные, и есть риск, что кто-то напишет контракт вида


// Это псевдокод
foo = 0;
while (True) {
    foo++;
}

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

Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments16

Экосистема разработчиков в Telegram

Reading time10 min
Views71K
Лого

Многим уже известно, что в мессенджере Telegram помимо прямого общения между двумя людьми также реализованы другие полезные инструменты:

  • Каналы — некий симбиоз сообщений и списков рассылки, где автор или коллектив авторов обращаются к своей аудитории, но аудитория не может влиять на содержимое канала.
  • Группы — своеобразные чаты между большим количеством пользователей, где каждый участник является полноправным представителем сообщества и может влиять на повестку дня.
  • Боты — специальные аккаунты в Telegram, созданные для того, чтобы автоматически обрабатывать и отправлять сообщения, часто используются для интеграции c сервисами.

На днях на просторах Github, наткнулся на список каналов, групп, ботов в Telegram, который пополняется непосредственно разработчиками, использующими этот проект совместной разработки. Под катом можно увидеть саму IT-подборку, из которой каждый сможет выбрать что-то интересное для себя.
Читать дальше →
Total votes 39: ↑35 and ↓4+31
Comments46

Определение доминирующих цветов: Python и метод k-средних

Reading time2 min
Views38K

Assorium

На Хабре публиковалось несколько статей с алгоритмами и скриптами для выбора доминирующих цветов на изображении: 1, 2, 3. В комментариях к тем статьям можно найти ссылки ещё на десяток подобных программ и сервисов. Но нет предела совершенству — и почему бы не рассмотреть способ, который кажется самым оптимальным? Речь идёт об использовании кластеризации методом k-средних (k-means).
Читать дальше →
Total votes 59: ↑54 and ↓5+49
Comments17

Мега-Учебник Flask, Часть 4: База данных

Reading time13 min
Views150K
Это четвертая статья в серии, где я описываю свой опыт написания веб-приложения на Python с использованием микрофреймворка Flask.

Цель данного руководства — разработать довольно функциональное приложение-микроблог, которое я за полным отсутствием оригинальности решил назвать microblog.



Краткое повторение


В предыдущей части мы создали нашу форму входа в комплекте с представлением и валидацией.

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

Чтобы следовать этой части, ваше приложение микроблога должно быть таким, каким мы оставили его в конце предыдущей. Пожалуйста, убедитесь, что прилолжение установлено и работает.
Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments14

Information

Rating
Does not participate
Registered
Activity