Как стать автором
Обновить

Python tkinter

Python *
Ожидает приглашения

Hello World


Tkinter – это пакет для Python, предназначенный для работы с библиотекой Tk. Библиотека Tk содержит компоненты графического интерфейса пользователя (graphical user interface – GUI), написанные на языке программирования Tcl.Под графическим интерфейсом пользователя (GUI) подразумеваются все те окна, кнопки, текстовые поля для ввода, скроллеры, списки, радиокнопки, флажки и др.
Читать дальше →

Быстрее ли JavaScript, чем Python?

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

P.S. В каждом коде я буду считать время его выполнения именно методами языков.

В JavaScript:

Date.now()

А в Python:

from time import time
time()

Также я всегда буду брать средние показатели скорость, полученные из 10 запусков программы.

Итак, приступим.

Для начала проверим скорость обычного цикла for, который будет выводить числа от 1 до 1000.

JavaScript:

start = Date.now()
for (var i = 1; i < 1001; i++) {
    console.log(i);
}
end = Date.now() - start
console.log(end + " ms")

Выполнение кода заняло 850 ms.

Теперь Python:

from time import time
start = time()
for i in range(1, 1001):
    print(i)
end = round(time() - start, 3)
print(str(end) + " ms")

Выполнение этого кода заняло 620 ms.
Читать дальше →

Как устроиться на работу в Германии для ИТ-специалистов

Карьера в IT-индустрии
Ожидает приглашения
В некотором агентстве много работают с международными кандидатами и немецкими компаниями. Итак, я хотел написать небольшое эссе о визовых проблемах, потому что они часто влияют на ваши шансы получить работу. Поскольку в агентстве работают в основном с немецким рынком, я буду говорить о процессах в Германии, процессы могут и, возможно, отличаются в других странах Европейского союза. Надеюсь, информация будет полезной и даст вам некоторую ясность и будет интересной.

Как все вы знаете, в настоящее время существует большой спрос на опытных IT-специалистов почти во всех странах Европейского союза. Когда говорится «опытный», я имею в виду более 3 лет опыта. Компании настраивают свои команды, чтобы принимать англоговорящих коллег со всего мира, предлагая различные льготы, чтобы сгладить процесс переезда, и в целом мир информационных технологий становится преимущественно англоязычным. Правительство Германии, понимая потребность отрасли, сделало процесс довольно быстрым и понятным.

Визовое спонсорство


Компании в Германии не спонсируют визы, как в других странах, здесь такого нет. Компании либо нанимают кандидатов из стран, не входящих в Европейский союз, либо нет. Решение является сугубо внутренним решением и не зависит от каких-либо квот, разрешений и тому подобное. Если вы получаете контракт на работу от немецкой компании (будь то большой конгломерат или небольшой стартап), у вас есть право подать заявление на получение рабочей визы.
Читать дальше →

IoT-шлюз на базе Rasperry CM3+

DIY или Сделай сам Интернет вещей Компьютерное железо Разработка на Raspberry Pi *Разработка под Linux *
Ожидает приглашения
Большой опыт работы в сфере промышленной автоматизации и АСУТП, казалось бы, должен способствовать тому, что со временем уже много всего видел и много всего знаешь. Но не тут-то было. Оказывается, иногда могут возникать задачи и проекты, которые трудно реализовать стандартными средствами. Так под один крупный проект по мониторингу и управлению в «облаке» одного небезызвестного завода N требовалось найти подходящее железо. Однако оказалось, что в России по требованиям помехозащищенности устройства и открытости системы ничего подходящего не существует. Попытка заказать идеально подходящее нам устройство из-за рубежа провалилась, поскольку на территорию нашей страны оборудование с пометкой «IoT» весьма трудно ввести в промышленных масштабах. Другие же поставщики не устроили сроками доставки в 12 недель при небольших объемах и ценой. Поэтому в голове родилась и плотно осела мысль о создании своего устройства. Причем такого, чтобы оно было универсальным и подходило не только конкретно под этот один проект, а под множество других. В итоге от момента зарождения идеи, подбора поставщиков и корпуса, разработки платы, её отладки и тестирования, написания инструкций и технической документации прошло весьма много времени. Но зато теперь я держу с легким трепетом в руках полностью законченное и рабочее устройство, и могу заявлять, что мы это сделали!

image
Рисунок 1 — Плата устройства
Читать дальше →

Почему User-Flow так важен в UI/UX-проектах?

Графический дизайн *Дизайн Интерфейсы *
Ожидает приглашения


Недавно работал над проектом, в котором надо было спроектировать интерфейс окна очереди в больнице.

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


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

Возвращаем функцию закрыть все вкладки в Google Chrome

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

Мириться с таким положением вещей я не стал и решил вернуть все как было.
Читать дальше →

Задачка на деление. Как разделить город на зоны доставки

Maps API *Алгоритмы *
Ожидает приглашения
Дано: клиентская база, содержащая адреса доставки первичных бухгалтерских документов, которые нужно ежемесячно развозить поездом-самолетом-курьером. Клиенты — все организации, работающие на территории Самарской области.

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

Как распределить адреса доставки, чтобы не гонять курьера с одной части города до другой? Нужно сгруппировать адреса по районам!

Задача: необходимо разделить клиентскую базу на зоны доставки, чтобы можно было делать выборки по районам доставки. При этом будет удобно оформлять путевые листы на каждый день: сегодня курьер едет в Куйбышевский район, завтра в Промышленный, а послезавтра — в Красноглинский. Проблема в том, что в клиентской базе такого признака нет (по крайней мере, пока).
Читать дальше →

Программирование за пределами вычислительных машин

Математика *Программирование микроконтроллеров *Прототипирование *Физика
Ожидает приглашения

Всем привет. На днях, я закончил работу над одним интересным для меня проектом, по разработке аккумуляторного устройства, генерирующего электроэнергию из программного кода. Знаю, звучит глупо и очень смешно, но не спешите с выводами, друзья. На данный момент, я столкнулся с большими трудностями по реализации этого проекта. А именно, с кадровой составляющей. Квалифицированные фрилансеры, как правило, берутся за работу, когда уверены в своих силах на все 100%. И, это понятно, ибо никто не хочет рисковать своей репутацией. Чисто из интереса, я предлагал до 5,000$, хотя на данный момент у меня таких денег нет, всё равно все стараются игнорировать. И, я так понял, в данный момент, эту проблему не разрешить деньгами (что немного противоречит современному мироустройству).


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


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


Давайте сформулируем задачу.


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

Интересные факты о Java

Java *Программирование *
Ожидает приглашения
Привет, Хабр!

Наверное, все слышали о таком языке программирования, как Java. Но все ли из вас знают как, почему и когда он был создан?

В связи с этим предлагаю вашему вниманию перевод статьи "Interesting Facts About Java" автора MeghaKakkar, в которой представлены интересные факты об одном из популярных языков программирования нашего времени.

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

10 вопросов с Шупин Мао, техническим лидером Well-being

Интервью Социальные сети и сообщества
Ожидает приглашения

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


Предлагаю вашему вниманию перевод статьи "10 Questions with Shupin Mao, Well-being tech lead" автора shelly.

Шупин Мао — старший инженер-программист в Facebook. За последние четыре года работы в компании Шупин помогла нескольким командам и приобрела опыт в Instagram и Facebook, в том числе в Instagram Well-being . Здесь она делится тем, что вдохновило ее на разработку, любимые моменты, извлеченные уроки и многое другое.

image

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

Преимущества и опасности использования библиотек и фреймворков Java с открытым исходным кодом

Java *Open source *
Ожидает приглашения

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

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

Конспект по «Машинному обучению». Теория вероятностей. Формула Байеса

Математика *Машинное обучение *
Ожидает приглашения

Теория вероятностей. Формула Байеса


Пусть проводится некоторый эксперимент.
$inline$w_1, ..., w_N$inline$ — элементарные события (элементарные исходы эксперимента).
$inline$\Omega = \{w_i\}_{i =1}^N$inline$ — пространство элементарных событий (совокупность всевозможных элементарных исходов эксперимента).
Читать дальше →

Как сделать графику на Unity лучше. Конкретные советы

Unity *Работа с 3D-графикой *
Ожидает приглашения
Hello, username! Меня зовут Константин Ермолаев и я профессионально занимаюсь 3д графикой и разработкой игр на Unity. Чаще всего по поводу моих игр слышу вопрос: «Это что, Unity?» Да, это Unity. И ничего магического в этом нет, всем кому интересна данная тема — под кат.


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

USB TEMPer настройка датчика на Ubuntu 18.04 lts и добавление к мониторингу Zabbix

Серверное администрирование *Системное администрирование *
Ожидает приглашения

Начало



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

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

И снова Mikrotik, Telegram и боты

Сетевые технологии *Системное администрирование *
Ожидает приглашения
Здравствуйте. Статья не полностью претендует на право быть оригинальной — скорее, это усовершенствование скрипта, описанного в статье dimonw Удалённое включение скриптов Mikrotik из Telegram.
В общем, сделал себе бота по примеру в вышеуказанной статье. Но меня жутко напрягал тот момент, что постоянно fetch'ем скачивается файл на драгоценную флешку, и потом парсится.
Поэтому, немного покурил Wiki/Scripting, и у меня получилось обойтись без файла.
Читать дальше →

ОЛП МАИ 2019-2020, 1-ый курс. Соревнование 5. Задача G: геометрическая прогрессия

C++ *Программирование *
Ожидает приглашения

Общая идея


Для каждого теста (набора из $inline$b_1, q, n$inline$ переменных) необходимо найти сумму первых $inline$n$inline$ членов соответствующей геометрической прогрессии по модулю 1000000007. Напоминаю формулу первых $inline$n$inline$ членов геометрической прогрессии: $inline$S_n = \frac{b_1(q^n — 1)}{(q — 1)}$inline$. Так как числа $inline$q$inline$ и $inline$n$inline$ могут быть очень большими, при вычислении степени мы должны брать модуль (на каждом этапе вычисления, а не только в конце), а также из-за большого количества тестов нам не подойдёт линейная сложность вычисления степени — будем использовать бинарное (быстрое), которое справляется за $inline$log_2n$inline$ операций. Далее умножаем на $inline$b_1$inline$.

Если сложение, вычитание, умножение под модулем равносильны:$$display$$a \pm b = r_a + r_b \ (mod\ p) \\ ab = r_ar_b \ (mod\ p)\\$$display$$ — эти формулы легко доказать исходя из определения модуля и разложения числа на целую часть и остаток, то с делением так не проходит и для того, чтобы поделить число на число под модулем нам нужен обратный элемент, который вычисляется (но лишь если модуль есть простое число; к нашему случаю походит) с помощью расширенного алгоритма Евклида (почему так, смотрите лекцию — ссылка в конце поста). Таким образом находим обратный элемент для $inline$q-1$inline$ по модулю 1000000007 и умножаем на число, получившееся на предыдущих шагах, на забывая взять модуль. Ответ получен.

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

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

Голосовое управление для телевизора Sharp Aquos

Голосовые интерфейсы Умный дом
Ожидает приглашения
В этом посте описывается простой способ организовать голосовое переключение каналов не очень нового телевизора с минимальным количеством программирования на базе Google Home.
Читать дальше →

Запускаем программы Windows на удаленном Linux сервере

*nix *Системное администрирование *
Ожидает приглашения


Была у меня как то проблема, везде используется linux но вот одна программа
работала только на Windows а именно Litemanager NoIP сервер, держать ради нее отдельную Windows машину не хотелось, да и с учетом того что от программы нужно было только чтобы она "проксировала трафик" и позволяла подключится удаленно было решено перенести это на маленькую ubuntu машину где нибудь в облаке

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