Pull to refresh
11
0
Андрей @asjp

Разработчик C#

Send message

Это невозможно! Про код, две железки и пассатижи

Reading time2 min
Views3.4K

Первоапрельское.

Представьте, что вы руководите проектом. К вам приходит разработчик, и говорит: это невозможно! Уверенно так говорит. Доказательно. Ну просто небывалая ситуация. Вот вам интересная аналогия.

Читать далее
Total votes 8: ↑7 and ↓1+8
Comments2

Байесовский вывод и метод максимизации правдоподобия в задаче о бросках монетки

Reading time4 min
Views8.8K
image

Давайте представим, что мы бросаем монету и смотрим, какой стороной она выпадает — орлом или решкой. Все, что мы знаем о монете, — это то, что результаты бросков независимы, и у нас нет способа на них повлиять. Есть ли у нас способ предсказать, какой стороной выпадет монета при следующем броске?
Читать дальше →
Total votes 9: ↑8 and ↓1+7
Comments4

Выходим в Интернет с помощью модуля на SIM800L

Reading time14 min
Views94K

Привет всем неравнодушным! Сегодня предлагаю поговорить о миниатюрных GSM-модемах на базе чипа SIM800L. Области применения таких модулей весьма обширны: охрана дачи или дома, сигнализация в машине и многое другое, где требуется удаленная связь, а возможности подключиться к Wi-Fi нет. В том числе они прекрасно подходят для проектов IoT, потому что с их помощью можно не только отправлять сообщения или управлять телефонными звонками, но и подключаться к Интернету.

В данной статье рассмотрим:

- подключение модулей к переходнику USB-TTL для проверки и отладки;

- подключение модулей к платам Arduino для выхода в Интернет в условиях, когда нет доступа к Wi-Fi;

- код, который позволяет подключиться к объекту на платформе Rightech IoT Cloud, публиковать данные и получать команды.

Хочу узнать больше >>>
Total votes 21: ↑19 and ↓2+22
Comments29

OverScript — язык программирования, написанный на C#

Reading time14 min
Views19K

Привет! Меня зовут Дмитрий, я написал на C# свой интерпретируемый язык программирования, который назвал — OverScript. Это си-подобный язык со статической типизацией. Сразу скажу, что это не прототип, а готовый проект. Весь код на 100% мой. Я подробно не интересовался, как написаны другие языки, поэтому вся реализация интерпретатора это моя чистая импровизация. Мой подход неконвенциональный, поэтому к техническим аспектам стоит относиться без ассоциаций с тем, что вы могли ранее видеть в других языках, несмотря на то, что некоторые вещи могут казаться знакомыми.


image

Читать дальше →
Total votes 24: ↑18 and ↓6+15
Comments93

Использование procmon от sysinternals для диагностики проблемных мест в исполняемом коде

Reading time3 min
Views11K

Сразу хочу сказать, что это только демонстрация возможностей procmon для определения проблемных мест в программном обеспечении. 1С83 была выбрана для опытов из-за неочевидности способа поиска точки входа в процедуру проверки наличия установленных эмуляторов ключа. Она выполняется через различное время после старта порядка 3~10 мин, и вызывает появление окна «нарушение целостности системы» с последующим закрытием приложения. Я призываю всех использовать только лицензионное программное обеспечение. Рассматривать эту статью, как описание возможности взлома, нет смысла. Хотя бы потому, что 1С83 давно взломана и без меня. Любой 1с-ник за секунду вам скажет, как ее запустить без ключа.

Если кто не в курсе procmon от sysinternals умеет ставить перехватчик на системные события работы процессов с файлами и регистром виндуза. И хотя любой процесс плодит гигантское количество обращений к файлам и регистру при старте, да и в процессе работы тоже, использование фильтров и поиска по событиям упрощает нахождение нужного. Интересной особенностью procmon является сохранение стека вызовов у каждого события. Таким образом можно проследить какие модули и в каком месте породили то или иное событие.

Итак, ставим фильтр по имени процесса 1с.

Читать далее
Total votes 12: ↑11 and ↓1+14
Comments5

Климатическая гипотеза эволюции человека

Reading time20 min
Views8.7K

Статья переведена под впечатлением от мероприятия "Улики эволюции" состоявшегося 2 апреля в Санкт-Петербурге (полная версия). На этом лектории, устроенном силами сообщества @phanerozoi_evidence (при особом личном подвижничестве Самира Ефимова и Александра Яскина) я впервые слушал вживую Станислава Владимировича Дробышевского и не мог не вставить свои пять копеек по поводу тех эволюционных факторов, что он не упомянул в своей лекции - которая, тем не менее, сделала мой вчерашний день. Большое спасибо.

Дисклеймер: перевод сделан в большой спешке, не взыщите за возможные огрехи.

В этой статье исследуется гипотеза о том, что ключевые эволюционные адаптации человека сформировались в ответ на экологическую нестабильность. Эта идея разработана в рамках исследований, которыми занимается доктор Рик Поттс (Rick Potts) в рамках «Программы по изучению происхождения человека» в Смитсоновском институте. Естественный отбор не всегда сводился к принципу «выживает сильнейший», но также поддерживал тех, кто лучше других умел приспосабливаться к изменениям окружающей среды. 

Читать далее
Total votes 18: ↑13 and ↓5+17
Comments6

Удивительное приключение в стране оптимизирующих компиляторов

Reading time17 min
Views25K

Приглашаю вас в небольшое приключение выходного дня, в котором никто никому ничего не будет доказывать. Мы просто будем реализовывать один и тот же несложный алгоритм, разыскивающий простые числа в некотором диапазоне, на нескольких языках программирования: C, C++, Scheme и Python - и смотреть, что этим кодом могут сделать современные оптимизирующие компиляторы. В процессе приключения мы увидим, что «динамический» не означает «совсем уж медленный», и посмотрим на приёмы программирования на Scheme, что, как мне кажется, можно сравнить с путешествием на экзотический остров.

Читать далее
Total votes 50: ↑48 and ↓2+62
Comments82

Про уход Web of Science и Scopus из РФ

Reading time4 min
Views54K
image

Вчера со ссылкой на телеграм-канал вице-президента РАН Алексея Ремовича Хохлова на некоторых информационных площадках начала распространяться информация вида: «Web of Science и Scopus покидают РФ и РБ, 97,5% научной информации станет недоступно».
TJournal (заблокирован РКН) дает также пояснения:
Scopus — библиографическая база данных научного издательства Elsevier. Она содержит цитирования и аннотации к более чем 20 тысячам академических статей. Цитирование в Scopus'e указывает на высокий уровень текста и ценится в академическом сообществе, журнал о проблемах образования DOXA.
Web of Science — это сайт, который открывает доступ к множеству баз данных. На них учёные ищут нужные им тексты.

Тем не менее, в этих сообщениях допущены некоторые неточности.
Читать дальше →
Total votes 39: ↑35 and ↓4+47
Comments148

Виза таланта в UK для простых смертных

Reading time9 min
Views24K


Поговорим о том, как простому Васе-формошлепу получить визу таланта в Великобритании. Я расскажу о типовых иммиграционных визах для программистов и собственном опыте кочевничества между ними. Для визы таланта детально распишу порядок подачи и список документов. Затронем вопрос цены и времени.

Читать дальше →
Total votes 10: ↑7 and ↓3+5
Comments4

Хроники домашнего импортозамещения: замещаем e-mail (и узнаём, кто сливает почту на сторону)

Reading time8 min
Views30K

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

Встречайте: собственный домен для почты.

Read more
Total votes 47: ↑44 and ↓3+52
Comments99

Польза как проклятие: особенности самовосприятия IT-специалистов

Reading time5 min
Views15K

Всем привет! Меня зовут Сергей и я практикующий психолог.

Дисклеймер: В силу подхода к работе так сложилось, что обычно я консультирую людей интеллектуального труда. В последний год это преимущественно управленцы и сотрудники IT-сферы. Это люди, которые всю жизнь решали любые проблемы "через голову". Такой подход неизбежно накладывает отпечаток на личность и внепрофессиональную жизнь. Минимизацией негативных последствий таких особенностей я занимаюсь. И в рамках статей на данном ресурсе занимаюсь обобщением своего профессионального опыта и дать полезную информацию.

Кстати, о пользе. Я задам вам всего один вопрос: "Кто вы без своей работы?".

Узнать правильный ответ
Total votes 29: ↑26 and ↓3+30
Comments34

Может быть, вам следует меньше работать

Reading time3 min
Views13K
За время работы в IT мне доводилось видеть разработчиков, которые выкладывались на работе на полной, когда в этом не было необходимости. Сегодня я пришел рассказать вам, почему это плохая идея и не надо так.

Что я подразумеваю под «выкладывались по полной?» Я подразумеваю ситуации, когда человек, который оказался способен выполнить все возложенные на него обязанности раньше того срока, который ему назначили, идет и просит дать ему еще работы такого же рода. Также я говорю о тех ситуациях, когда человек плохо себе представляет, сколько обязанностей на него вообще возложено, и поэтому набирает какие-то нереальные обороты в попытках дотянуться до некоей планки. Что невозможно, потому что до реальной планки он уже сто лет как дотянулся, сам того не понимая, но продолжает беспокоиться о том, как выглядит в глазах окружающих и ой, кажется, он выгорел.

Я убежден в двух вещах:
  • Следует стремиться понять, чего именно от вас ожидают ваши коллеги и начальство, а также чего вы сами от себя ожидаете.
  • Если на то, чтобы соответствовать этим ожиданиям, вам не приходится тратить все рабочие часы без остатка, не нужно искать себе еще работы. Вместо этого стоит заняться чем-то другим.

Читать дальше →
Total votes 15: ↑13 and ↓2+13
Comments5

Как один человек создал серию сложнейших приборов

Reading time7 min
Views64K
Когда я впервые услышал о приборе для тестирования батареек и аккумуляторов Яростанмаш, я предположил, что где-то в Ярославле есть большой завод, где разработали и выпускают этот прибор. Оказалось, что прибор создал один человек — Ярослав Меньшиков и живёт он в Москве.



Читать дальше →
Total votes 306: ↑302 and ↓4+363
Comments110

Optimum Transformers: как экономить от 20к$ в год на NLP

Reading time5 min
Views3.9K

Недавно компания ? Hugging Face (стартап, стоящий за библиотекой transformers) выпустила новый продукт под названием "Infinity". Он описывается как сервер для выхода в “production”. Публичная демонстрация доступна на YouTube (ниже приведены скриншоты с таймингами и настройками, использованными во время демонстрации). Все основано на обещании, что продукт может выполнять работу с NLP с задержкой в 1 миллисекунду на графическом процессоре. По словам ведущего демонстрации, сервер Hugging Face Infinity стоит не менее 20.000$ в год за одну модель, развернутую на одной машине (общедоступная информация о ценовой масштабируемости отсутствует).

Мне стало любопытно немного покопаться и проверить, возможно ли достичь таких показателей? Спойлер: да, возможно, и с помощью этой статьи его легко воспроизвести и адаптировать к вашим РЕАЛЬНЫМ проектам.

А для тех, кому лень все это читать и хочется все получить из коробки... Ссылка на GitHub. Поставьте зведу сразу, а потом читайте ?

Читать далее
Total votes 12: ↑11 and ↓1+12
Comments6

Предотвращение троттлинга процессора в контейнеризованной среде

Reading time7 min
Views8K

В Uber все рабочие нагрузки, хранящие состояние, запускают на единой контейнеризованной платформе. Аппаратной основой этой платформы является обширный парк серверов. Среди таких рабочих нагрузок можно отметить MySQL, Apache Cassandra, ElasticSearch, Apache Kafka, Apache HDFS, Redis, DocstoreSchemaless. Во многих случаях они совместно работают на одних и тех же физических хостах.

Речь идёт о 65000 таких хостов, о 2,4 миллионах процессорных ядер и о 200000 контейнеров. Мы постоянно боремся за повышение эффективности использования серверов, делая это ради снижения затрат на их поддержку. Это — важная задача, но до недавнего времени её достойному решению мешал троттлинг процессоров. Это явление указывало на то, что нашим программам выделялось недостаточно ресурсов.

Оказалось, что проблема заключалась в том, как именно ядро Linux распределяет процессорное время между процессами. В этом материале мы расскажем о переходе с квот CPU (квот на ресурсы процессора, CPU quotas) на механизм распределения процессов по процессорам и памяти (cpusets; эта технология ещё известна как CPU pinning — закрепление процессора). Такой переход позволил нам значительно снизить задержки в 99 перцентиле (P99) в обмен на небольшой рост задержек в 50 перцентиле (P50). Это, в свою очередь, позволило нам снизить уровень выделения процессорных ядер во всём нашем серверном парке на 11% благодаря уменьшению различий в требованиях к ресурсам.

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments9

Отбор на курс Go-разработки от Ozon: история одного провала

Reading time7 min
Views8.3K

В прошедшее воскресенье состоялся отбор на курс по Go-разработке от компании Ozon. Что же могло пойти не так? С какими трудностями и откровенными провалами пришлось столкнуться?

Ответы читайте далее
Total votes 10: ↑9 and ↓1+8
Comments5

Keycloak X. Что за зверь и с чем его едят?

Reading time9 min
Views14K

Недавно мы с коллегами из X5 Tech проводили митап, на котором разбирали, что такое Keycloak X и чего от него ждать. Для тех, кто пропустил или предпочитает читать, а не смотреть, подготовили текстовый вариант. 

Меня зовут Виктор Попов, я техлид DevOps-команды в X5 Tech. И я расскажу, как сэкономить время на чтении плохой документации, с какими сложностями можно столкнуться при обновлении на Keycloak X и как их преодолеть.

Читать далее
Total votes 21: ↑21 and ↓0+21
Comments11

Как моддинг стал основой китайской компьютерной революции

Reading time8 min
Views9.4K

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

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

Читать далее
Total votes 28: ↑28 and ↓0+28
Comments3

Как сделать свою команду несчастной? Популярные антипаттерны управления проектами

Reading time7 min
Views8.8K

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

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

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

Три секретных антипаттерна

1. «Белка в колесе»

2. «Миллион Agile-встреч»

3. «Гантаголик»

Читать далее
Total votes 8: ↑6 and ↓2+5
Comments3

Строковые алгоритмы на практике. Часть 1 — Алгоритм Кнута — Морриса — Пратта

Reading time8 min
Views26K

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


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

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

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity